Șaisprezece agenți Claude AI au creat un nou compilator C
Într-un experiment costisitor de 20.000 de dolari, șaisprezece agenți AI Claude au reușit să compileze un nucleu Linux, dar a fost nevoie de o gestionare umană detaliată. Conform arstechnica.com, cercetătorul Nicholas Carlini a dezvăluit detaliile acestui proiect audacios, care a fost realizat cu minimă supraveghere.
👉 Lansarea și utilizarea agenților AI pentru construirea compilatorului
În cadrul unei inițiative recente care vizează agenții AI, atât Anthropic cât și OpenAI au lansat instrumente multi-agent. Joia trecută, cercetătorul Anthropic, Nicholas Carlini, a publicat un post pe blog explicând cum a folosit 16 instanțe ale modelului AI Claude Opus 4.6 pentru a construi un compilator C de la zero, lucrând pe o bază de cod partajată.
Pe parcursul a două săptămâni și aproape 2.000 de sesiuni Claude Code, costul total ridicându-se la aproximativ 20.000 de dolari în taxe API, agenții modelului AI raportat au generat un compilator bazat pe Rust, format din 100.000 de linii de cod, capabil să compileze un nucleu Linux 6.9 pe arhitecturi x86, ARM și RISC-V.
👉 Performanțele, limitările și implicațiile metodologiei folosite
Carlini, un om de știință al cercetării în echipa de siguranță a Anthropic, care a petrecut anterior șapte ani la Google Brain și DeepMind, a folosit o nouă caracteristică introdusă cu Claude Opus 4.6 numită "echipe de agenți." Fiecare instanță Claude a rulat în interiorul propriului container Docker, clonând un depozit Git partajat, revendicând sarcini prin scrierea fișierelor de blocare și apoi împingând codul completat în sus.
Niciun agent de orchestrare nu a dirijat traficul, iar fiecare instanță a identificat în mod independent problemele de rezolvat. Când au apărut conflicte de îmbinare, instanțele modelului AI le-au rezolvat de una singură. Compilatorul rezultat, pe care Anthropic l-a publicat pe GitHub, poate compila o gamă de proiecte majore open source, inclusiv PostgreSQL, SQLite, Redis, FFmpeg și QEMU.
Acesta a avut o rată de succes de 99% la suitele de teste GCC torture și, în ceea ce Carlini a numit "testul suprem al dezvoltatorilor," a compilat și a rulat jocul Doom. Este important de menționat că un compilator C reprezintă o sarcină aproape ideală pentru codarea AI semi-autonomă: specificația sa este bine definită și există suite de teste cuprinzătoare și un compilator de referință cunoscut pentru validare.
Cu toate acestea, Carlini a recunoscut clar limitările compilatorului. Acesta nu dispune de un backend x86 de 16 biți necesar pentru a boota Linux din modul real, așa că a apelat la GCC pentru acest pas. Asamblorul și linkerul proprii au rămas cu bug-uri, iar chiar și cu toate optimizările activate, compilatorul produce cod mai puțin eficient comparativ cu GCC rulat cu toate optimizările dezactivate.
Calitatea codului Rust, deși funcțională, nu se apropie de ceea ce un programator expert Rust ar produce. "Compilatorul rezultat a atins aproape limitele abilităților Opus," a afirmat Carlini. "Am încercat (din greu!) să remediez mai multe dintre aceste limitări, dar nu am avut succes complet. Funcționalități noi și corecturi frecvent au rupt funcționalitatea existentă."
Aceste limitări sunt poate mai informative decât succesele în sine. Carlini a raportat că, spre sfârșitul proiectului, remedierea bug-urilor și adăugarea de funcționalități "au rupt frecvent funcționalitatea existentă," un tipar familiar pentru cei care au observat creșterea unei baze de cod care depășește momentul în care orice colaborator înțelege pe deplin.
Carlini a spus că este important ca verificatorul de sarcini să fie aproape perfect, altfel Claude va rezolva problema greșită. "Claude va lucra autonom pentru a soluționa orice problemă îi dau," a concluzionat el.
În final, metodologia agenților paraleli care coordonează prin Git cu supraveghere umană minimă este inovatoare, iar trucurile de inginerie pe care Carlini le-a dezvoltat pentru a menține agenții productivi ar putea reprezenta contribuții utile în utilizarea pe scară largă a instrumentelor de dezvoltare software agențice. De asemenea, el a recunoscut că se simte conflictual în legătură cu propria sa realizare, notând că "gândul programatorilor care desfășoară software pe care nu l-au verificat personal este o preocupare reală."