Kravspecifikation genom interaktion

Kodtester brukar ge agenten ett skrivet ärende: här är felet, så här ska rättningen fungera. ProgramDistill, publicerat på arXiv den 16 september av forskare vid Microsoft Research Montréal, Microsoft AI och KAIST, tar bort texten.

I stället får agenten en fullt fungerande referenswebbapp att interagera med, och en ofullständig kopia av samma app. Uppgiften är att få kopian att bete sig som referensen. Ingen talar om vad beteendet är; agenten måste ta reda på det genom att använda den fungerande versionen.

Så byggdes uppgifterna

Författarna byggde en kedja de kallar mine-craft-patch. Den interagerar med 26 fungerande webbappar, registrerar 1 975 uppspelningsverifierade beteenden och gör om dem till 4 063 uppgifter — helt utan mänsklig inblandning. En uppgift räknas som löst när agentens kod återskapar det registrerade beteendet vid uppspelning.

Svårigheten styrs av återställningsdjup: hur många lager av applikationen som plockats bort innan agenten börjar. Det ger testet en ratt i stället för ett enda stup, vilket är den del som sannolikt överlever de nuvarande resultaten.

En uppfälld bärbar dator på ett träskrivbord i dagsljus
Testet innehåller 4 063 uppgifter som genererats utan mänsklig inblandning. Bilden är en illustration. YUSUF ARSLAN · pexels · Pexels License

Siffrorna

Bland nio frontagenter för kod anger artikeln GPT-6 Astra till 49,2 procent och Claude Opus 5 till 28,8 procent på kumulativa arbetsflöden vid fullständig återuppbyggnad av applikationen, det svåraste läget.

Resultaten för delvis återuppbyggnad säger mer. Andelen lyckade försök faller från 100 till 64,0 procent för den starkare agenten, och från 96 till 32 procent för den svagare, när återställningsdjupet går från 1 till 8. Båda är nära perfekta när ett lager tagits bort. Ingen är i närheten av pålitlig när åtta har det.

Post it-lappar på en glasvägg med två kollegor som samtalar bakom
Svårigheten avgörs av hur många lager av applikationen som tagits bort. Bilden är en illustration. ANTONI SHKRABA production · pexels · Pexels License

Detta är författarnas egna mätningar, publicerade tillsammans med testet snarare än framtagna av en oberoende resultatlista, och avståndet på två mot ett mellan toppmodellen och Claude Opus 5 är större än det dessa modeller visar i de flesta offentliga kodutvärderingar — skäl nog att vänta på en andra mätning innan ordningen betraktas som avgjord.

Varför det är ett annat slags test

Det mesta verkliga ingenjörsarbetet utgår från något som redan fungerar. Den som kommer in i en kodbas lär sig vad produkten gör genom att använda den, inte genom att läsa en specifikation som beskriver den fullständigt. ProgramDistill försöker mäta just det, och det branta fallet med djupet antyder att dagens agenter klarar det betydligt bättre över ett lager av slutledning än över åtta.

Att hålla ögonen på

Om förvaltarna publicerar en resultatlista som andra kan skicka in till, och om djupkurvan håller mellan modeller. Ett test med svårighetsratt är också ett träningsupplägg, vilket artikeln anger som en drivkraft.