მიუხედავად იმისა, მეცნიერი ხართ, რომელიც კვლევით იდეებზე ფიქრობს, თუ აღმასრულებელი დირექტორი, რომელსაც სურს ავტომატიზაცია გაუკეთოს ადამიანური რესურსების ან ფინანსების ამოცანას, აღმოაჩენთ, რომ ხელოვნური ინტელექტის ინსტრუმენტები ხდება ის ასისტენტები, რომლებიც არ იცოდით, რომ გჭირდებოდათ. კერძოდ, ბევრი პროფესიონალი იყენებს ნახევრად ავტონომიური პროგრამული სისტემების, ე.წ. AI აგენტების, შესაძლებლობებს, რომლებსაც შეუძლიათ ხელოვნური ინტელექტის გამოძახება კონკრეტულ მომენტებში პრობლემების გადასაჭრელად და ამოცანების შესასრულებლად. AI აგენტები განსაკუთრებით ეფექტურია, როდესაც ისინი იყენებენ დიდ ენობრივ მოდელებს (LLM), რადგან ეს სისტემები მძლავრი, ეფექტური და ადაპტირებადია. ასეთი ტექნოლოგიის დაპროგრამების ერთ-ერთი გზაა კოდში აღწერა, თუ რისი გაკეთება გსურთ თქვენს სისტემას (ე.წ. „სამუშაო პროცესი“), მათ შორის, როდის უნდა გამოიყენოს მან LLM. თუ თქვენ იყავით პროგრამული უზრუნველყოფის კომპანია, რომელიც ცდილობდა ძველი კოდის განახლებას უფრო თანამედროვე პროგრამირების ენის გამოყენებით უკეთესი ოპტიმიზაციისა და უსაფრთხოებისთვის, შესაძლოა შეგექმნათ სისტემა, რომელიც იყენებს LLM-ს კოდის სათითაოდ თარგმნისთვის, თან თითოეული ფაილის ტესტირებას აწარმოებდით. მაგრამ რა ხდება, როდესაც LLM-ები შეცდომებს უშვებენ? მოგინდებათ, რომ აგენტმა უკან დაიხიოს და კიდევ ერთი მცდელობა გააკეთოს, წინა შეცდომებიდან მიღებული გაკვეთილების გათვალისწინებით. ამ ყველაფრის დაპროგრამებას შეიძლება იმდენივე ძალისხმევა დასჭირდეს, რამდენიც თავდაპირველი აგენტის იმპლემენტაციას; თუ თქვენი სისტემა კოდის ბაზის თარგმნისთვის შეიცავდა ათასობით ხაზს კოდს, მაშინ მოგიწევდათ ათასობით ხაზის კოდის შეცვლა ან დამატება, რათა მხარი დაეჭირათ უკან დაბრუნების ლოგიკისთვის, როდესაც LLM-ები შეცდომებს უშვებენ. პროგრამისტების დროისა და ძალისხმევის დასაზოგად, MIT-ის კომპიუტერული მეცნიერებისა და ხელოვნური ინტელექტის ლაბორატორიის (CSAIL) და Asari AI-ის მკვლევარებმა შეიმუშავეს ჩარჩო სახელწოდებით „EnCompass“. EnCompass-ის მეშვეობით, თქვენ აღარ გიწევთ ამ ცვლილებების თავად განხორციელება. ამის ნაცვლად, როდესაც EnCompass თქვენს პროგრამას გაუშვებს, ის ავტომატურად უბრუნდება უკან, თუ LLM-ები შეცდომებს უშვებენ. EnCompass-ს შეუძლია პროგრამის runtime-ის კლონირებაც, რათა ერთდროულად განახორციელოს მრავალი მცდელობა საუკეთესო გადაწყვეტილების მოსაძებნად. ზოგადად, EnCompass ეძებს ყველა შესაძლო გზას, რომლითაც თქვენს აგენტს შეუძლია იაროს LLM-ის ყველა გამოძახების სხვადასხვა შესაძლო შედეგების მიხედვით, ეძებს იმ გზას, სადაც LLM საუკეთესო გადაწყვეტილებას პოულობს. შემდეგ, ყველაფერი რაც უნდა გააკეთოთ, არის იმ ადგილების ანოტაცია, სადაც შეიძლება მოგინდეთ უკან დაბრუნება ან პროგრამის runtime-ის კლონირება, ასევე ჩაწეროთ ნებისმიერი ინფორმაცია, რომელიც შეიძლება სასარგებლო იყოს თქვენი აგენტის სხვადასხვა შესაძლო შესრულების გზების მოსაძებნად გამოყენებული სტრატეგიისთვის (ძიების სტრატეგია). შემდეგ შეგიძლიათ ცალკე მიუთითოთ ძიების სტრატეგია — შეგიძლიათ გამოიყენოთ ის, რასაც EnCompass გვთავაზობს, ან, სურვილის შემთხვევაში, განახორციელოთ საკუთარი, მორგებული ძიების სტრატეგია. „EnCompass-ით ჩვენ გამოვყავით ძიების სტრატეგია AI აგენტის ძირითადი სამუშაო პროცესისგან,“ – ამბობს მთავარი ავტორი ჟენინგ ლი ’25, MEng ’25, რომელიც არის MIT-ის ელექტრო ინჟინერიისა და კომპიუტერული მეცნიერების (EECS) დოქტორანტი, CSAIL-ის მკვლევარი და Asari AI-ის კვლევის კონსულტანტი. „ჩვენი ჩარჩო პროგრამისტებს საშუალებას აძლევს მარტივად ჩაატარონ ექსპერიმენტები სხვადასხვა ძიების სტრატეგიით, რათა იპოვონ ის, რაც AI აგენტს საუკეთესოდ ამუშავებს.“ EnCompass გამოიყენეს აგენტებისთვის, რომლებიც Python პროგრამებად იყო განხორციელებული და LLM-ებს იძახებდნენ, სადაც მან კოდის შესამჩნევი დაზოგვა აჩვენა. EnCompass-მა ძიების განსახორციელებლად საჭირო კოდირების ძალისხმევა 80 პროცენტამდე შეამცირა სხვადასხვა აგენტში, მაგალითად, კოდის საცავების თარგმნისა და ციფრული ქსელების ტრანსფორმაციის წესების აღმოსაჩენად განკუთვნილ აგენტებში. მომავალში, EnCompass-ს შეუძლია აგენტებს საშუალება მისცეს გაუმკლავდნენ მასშტაბურ ამოცანებს, მათ შორის მასიური კოდის ბიბლიოთეკების მართვას, სამეცნიერო ექსპერიმენტების დაგეგმვასა და განხორციელებას, და რაკეტებისა და სხვა აპარატურის ნახაზების შექმნას. განშტოება (Branching out) აგენტის პროგრამირებისას, თქვენ აღნიშნავთ კონკრეტულ ოპერაციებს — როგორიცაა LLM-ის გამოძახება — სადაც შედეგები შეიძლება განსხვავებული იყოს. ამ ანოტაციებს „განშტოების წერტილები“ (branchpoints) ეწოდება. თუ თქვენ წარმოიდგენთ თქვენი აგენტის პროგრამას, როგორც მოთხრობის ერთი სიუჟეტური ხაზის გენერირებას, მაშინ განშტოების წერტილების დამატება ამ ამბავს „აირჩიე შენი საკუთარი თავგადასავლის“ თამაშად აქცევს, სადაც განშტოების წერტილები არის ადგილები, სადაც სიუჟეტი მრავალ მომავალ სიუჟეტურ ხაზად იყოფა. შეგიძლიათ მიუთითოთ სტრატეგია, რომელსაც EnCompass იყენებს ამ ამბის თამაშში ნავიგაციისთვის, მოთხრობის საუკეთესო შესაძლო დასასრულის მოსაძებნად. ეს შეიძლება მოიცავდეს შესრულების პარალელური ნაკადების გაშვებას ან წინა განშტოების წერტილზე უკან დაბრუნებას, როდესაც ჩიხში აღმოჩნდებით. მომხმარებლებს ასევე შეუძლიათ გამოიყენონ EnCompass-ის მიერ შეთავაზებული რამდენიმე საერთო ძიების სტრატეგია, ან განსაზღვრონ საკუთარი, მორგებული სტრატეგია. მაგალითად, შეგიძლიათ აირჩიოთ მონტე კარლოს ხის ძიება (Monte Carlo tree search), რომელიც აშენებს ძიების ხეს კვლევისა და ექსპლუატაციის დაბალანსებით, ან სხივის ძიება (beam search), რომელიც ინახავს საუკეთესო რამდენიმე შედეგს ყოველი ნაბიჯიდან. EnCompass აადვილებს სხვადასხვა მიდგომის ექსპერიმენტებს საუკეთესო სტრატეგიის მოსაძებნად, რათა გაზარდოს თქვენი ამოცანის წარმატებით დასრულების ალბათობა. EnCompass-ის კოდირების ეფექტურობა: მაშ, რამდენად კოდირება-ეფექტურია EnCompass აგენტისთვის ძიების დასამატებლად...