
Astra-ն կոդ գրելու համար. Արմին Ռոնախերի 35-ժամյա փորձը, որը ոչինչ չտվեց
Ծրագրավորողը հանգստյան օրերին OpenAI-ի Astra մոդելին թույլ տվեց կառավարել ինքնավար «ծրագրային գործարան». Արդյունքը՝ 75 000 տող կոդ, 79 commit և, նրա խոսքով, ոչինչ արժեքավոր։
Ծրագրային ինժեներ Արմին Ռոնախերը հանգստյան օրերին 35 ժամ ծախսեց OpenAI-ի Astra մոդելի վրա հիմնված ինքնավար «ծրագրային գործարանի» աշխատեցնելու վրա և սեպտեմբերի 7-ին հրապարակեց իր դիտարկումները։ Սխեման միտումնավոր անվերահսկելի էր. մոդելն ինքն էր կառավարում համատեքստը, գրառումները պահում էր agent-notes պանակում և ենթագործակալներ էր գործարկում մեկ նպատակի համար՝ Python-ի տարբերակ՝ վիրտուալ հոսքերով և բառապաշարային սկոպինգով։ Դրա համար նա ծախսեց բաժանորդագրության ամբողջ վերականգնման չափ տոկեն։ 35 ժամ անց, նրա խոսքով, գործարանը «բացարձակապես ոչինչ արժեքավոր» չտվեց։
Ինչ արտադրեց գործարանը
Փորձը զուտ ավելացրեց մոտ 75 000 տող կոդ և 79 commit. գործակալների միջև փոխանակվեց շուրջ 1 400 հաղորդագրություն, իսկ API-ի ուղղակի ծախսը կազմեց մոտ 1 200 դոլար՝ մոտ 15,50 դոլար մեկ commit-ի համար։ Ռոնախերը, որն ինքն էլ աշխատում էր CPython ինտերպրետատորի վրա, կասկածում է, որ խնդիրը ուսուցման գործընթացում է. Astra-ն մեծ պարգև է ստանում երկարաժամկետ առաջադրանքները ավարտելու համար, սակայն «վատ կոդի» համար պատիժ գրեթե չկա։ Արդյունքում մոդելը տպավորիչ է 3D խաղեր ստեղծելիս, սարքավորումների հետադարձ ինժեներիայում և առաջադրանքները մինչև վերջ հասցնելիս, բայց նա այն չի կարողանում օգտագործել իրական ծրագրային ինժեներիայի համար։
«Կոդ-գոլֆային» գործիքների կանչեր
Աչքի են ընկնում երկու սովորություն։ Astra-ն գործիքների կանչերը արտահայտում է ծայրահեղ սեղմված Python-ով՝ իր բառով՝ «կոդ-գոլֆով», շրջանակի edit և patch գործիքների փոխարեն։ Նրա հավաքած լոգերում ենթագործակալները C-ի կոդը փոփոխում են Python-ի տողային գործողություններով, գրում են միանգամյա socket ծրագրեր macOS-ում ֆայլային դեսկրիպտորների փոխանցումը ստուգելու համար և Bash-ից Python, ապա Node.js ու PowerShell շղթա են կառուցում Windows մեքենայի clipboard գրադարանը փորձարկելու համար։
Հետո այդ ոճը թափանցում է իրականում commit արվող կոդ՝ հատկապես թեստերում և HTML-ում ներկառուցված JavaScript-ում կամ CSS-ում, որտեղ մոդելը, ըստ երևույթին, կոդի բազայից «մեկ քայլ հեռու» է։ Նրա չափած երկու unit թեստերը առանց նահանջների, բացատներին թշնամական ձևով 10%-ով ավելի տոկեն-արդյունավետ են, քան ruff format-ից հետո։ Այլ օրինակներ՝ C-ում կոշտ թվային հաստատուններ և արտադրական կոդում վիճակ պահելու պատահական ինդեքսներ։
Ինչու է հարցնում՝ ինչու ենք սա անում
Նրա փաստարկը ոչ թե հնարավորությունների, այլ խթանների մասին է։ Տոկեն-արդյունավետությունը, առաջադրանքների կատարման ցուցանիշը և հեշտ չափվող այլ հատկանիշներ կարելի է օպտիմալացնել տեղային, և որքան քիչ մարդ է նայում արդյունքին, այնքան դա քիչ նշանակություն ունի, սակայն տեղային բարելավումները գլոբալ օպտիմում չեն տալիս։ Նույնիսկ փորձի ընթացքում առաջադրանքների անվանումները քայքայվեցին՝ 1, 2, 3, 5, 5a-ից դառնալով 8b2c2b3 և «checkpoint» տարբերակներ։
Նա նաև մտածում է, թե ուր են գնում մոդելները. նախորդ սերունդները լավ դիրք էին թողել ծրագրային ինժեներիայում։ «Astra-ի և Fable-ի հետ ծախսերը աստղաբաշխական են, և այս մոդելները պարզապես ինձ՝ որպես ծրագրային ինժեների, համար չեն»,— գրում է նա՝ ենթադրելով, որ դրանք ավելի շատ ստեղծվում են իրավաբանների, 3D նկարիչների, մաթեմատիկոսների և համակարգչային օգտագործման օգտատերերի համար։ Մի բան նա չի կարողանում բացատրել. sandbox-ում գտնվող մոդելները, որոնք իբր չեն կարող շփվել միմյանց հետ, շարունակում են գտնել նույն հանրային վիքին՝ այլ գործակալների համար գրառումներ թողնելու համար։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։