
მომავალი ციკლი: რატომ ცვლის ჰარნესის ციკლები პროგრამული უზრუნველყოფის შექმნას
არმინ რონახერის ახალი ესე „The Coming Loop“ აღწერს ციკლებს, რომლებიც კოდირების აგენტების გარშემო იქმნება: სად მუშაობს ავტომატიზაცია კარგად, რატომ რთულდება კოდის გაგება და როგორ შეინარჩუნოს გუნდმა კონტროლი.
პროგრამული უზრუნველყოფის დეველოპერმა არმინ რონახერმა 23 ივნისს გამოაქვეყნა ესე სახელწოდებით „The Coming Loop“, რომელშიც ამტკიცებს, რომ ხელოვნური ინტელექტის მიერ დაჩქარებულ პროგრამირებაში ყველაზე მნიშვნელოვანი ცვლილება არა თავად კოდირების აგენტია, არამედ მის გარშემო აგებული ავტომატიზაციის გარე ფენა.
ესე იწყება ბორის ჩერნისთვის მიკუთვნებული ციტატით: „მე აღარ ვწერ პრომპტებს Claude-ისთვის. მაქვს ციკლები, რომლებიც პრომპტებს წერენ Claude-ისთვის და წყვეტენ, რა უნდა გაკეთდეს. ჩემი საქმე ციკლების წერაა.“
ორი ციკლი და არა ერთი
რონახერი განასხვავებს აგენტის შიდა ციკლს, რომელიც ყველა კოდირების ინსტრუმენტში არსებობს — მოდელი იძახებს ხელსაწყოს, კითხულობს შედეგს, არედაქტირებს ფაილს, უშვებს ტესტებს — და ჰარნესის დონის ციკლს, რომელიც მას გარს აკრავს. მეორე შემთხვევაში ამოცანა ჯდება რიგში, მანქანა იღებს მას, ცდილობს შესრულებას, შემდეგ კი ჰარნესი წყვეტს, ნამდვილად დასრულდა თუ არა სამუშაო. თუ არა — სესია გრძელდება დამატებითი შეტყობინებით, იწყება ახალი სესია შეცვლილი კონტექსტით, ან ამოცანა სხვა მანქანას გადაეცემა.
ეს გარე ციკლი ახალი არ არის, აღნიშნავს ავტორი, თუმცა ბოლო კვირებში ის აგენტური ინჟინერიის კიდიდან დისკუსიის ცენტრში გადავიდა.
სად მუშაობს და სად — არა
ავტორი ღიად ამბობს, რომ სრულად ავტომატურ ციკლებს წარმატება არ ჰქონია იმ კოდზე, რაც მისთვის მნიშვნელოვანია — მიზეზი გემოვნებაცაა და კონტროლიც. მას სურს, თავად შეძლოს ახსნას, რას აკეთებს სისტემა, მოდელისგან განმარტების თხოვნის გარეშე. დღევანდელი მოდელები, მისი აზრით, ქმნიან ზედმეტად თავდაცვით და ლოკალურად მოაზროვნე კოდს: ცუდი მდგომარეობების შეუძლებელს გახდომის ნაცვლად ამატებენ შემოწმებებს, აორმაგებენ ლოგიკას და ქმნიან სუსტ აბსტრაქციებს. ის მოჰყავს ანდრეი კარპათის დაკვირვება, რომ მოდელები „სასიკვდილოდ ეშინიათ გამონაკლისების“, და ამტკიცებს, რომ ციკლები ამ ჩვევას აძლიერებენ, რადგან ყოველი იტერაცია კიდევ ერთ პატარა დაცვას ამატებს.
ციკლები ბევრად უკეთ მუშაობს, როცა შედეგს ხანგრძლივი სიცოცხლე არ სჭირდება: კოდის ერთი ენიდან მეორეზე გადატანა — ის ახსენებს Bun-ის Zig-იდან Rust-ზე გადატანის სამუშაოებს და საკუთარ გამოცდილებას MiniJinja-ს Go-ზე პორტირებაში — წარმადობის კვლევა, უსაფრთხოების სკანირება და კვლევითი ამოცანები. ბევრ წარმატებულ სქემაში მოსამართლის ან ორკესტრატორის როლს სხვა მოდელი ასრულებს, ჰარნესს კი მხოლოდ ისეთი სიგნალი სჭირდება, რომელიც კიდევ ერთი იტერაციისთვის საკმარისია.
პროგრამა როგორც ორგანიზმი
რონახერის მთავარი შეშფოთება პროგრამული უზრუნველყოფის დეტერმინისტული მანქანიდან ორგანიზმად გადაქცევაა: სისტემები, რომლებსაც აკვირდებიან, ასტაბილურებენ და მკურნალობენ, მაგრამ ბოლომდე აღარ ესმით. მისი აზრით, ამისგან თავის დაღწევა ძნელია: თავდამსხმელები და უსაფრთხოების მკვლევარები ავტომატიზებულ ანალიზს ნებისმიერ კოდის ბაზაზე გაუშვებენ, მთავარი დეველოპერები კი ზეწოლას უკვე გრძნობენ — ის მიუთითებს დანიელ სტენბერგის აღწერაზე იმ შეტყობინებების ნაკადზე, რომელსაც curl-ის გუნდი იღებს. კონკურენტული ზეწოლაც იმავე მიმართულებით მოქმედებს: ძალიან პატარა გუნდები ახლა იმ სიჩქარით უშვებენ პროდუქტს, რაც ადრე გაცილებით მეტ ადამიანს სჭირდებოდა.
ესე ასკვნის, რომ ციკლები მოდის და კითხვას სხვანაირად აყენებს: საქმე იმაში არ არის, გამოიყენებენ თუ არა გუნდები მათ, არამედ იმაში, როგორ არ დაკარგონ განსჯა, შეინარჩუნონ კარგი ინჟინერიის წესები და უზრუნველყონ, რომ პასუხისმგებელი ადამიანი კვლავ აკონტროლებდეს ასე აშენებულ სისტემებს.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.