Alati i primena

Zašto AI alati za kodiranje sve više zavise od konteksta, a ne samo od modela

Foto: Pixabay

U razvoju AI alata za programere sve manje se govori samo o samim modelima, a sve više o tome kako je oko njih postavljen čitav sistem. To je glavna poruka razgovora koji je Ars Technica vodio sa predstavnicima Anthropic-a i Augment Code-a o takozvanom harness-u, odnosno softveru koji određuje šta model vidi, koje alate koristi i kako pristupa kodu.

Anthropic, prema ranijem razgovoru sa čelnicom proizvoda za Claude Code Cat Wu, bira „lakši“ pristup. Ta kompanija smatra da su modeli dovoljno brzo napredujući da nema mnogo smisla unapred graditi previše opini­onisan sistem. Wu je navela da njihova interna merenja nisu pokazala merljiv dobitak od dodatnih alata za semantičku navigaciju kroz kod, pa tim radije ostavlja veću slobodu korisnicima da sami dodaju šta im treba.

Augment Code zastupa drugačiju logiku. Njihov pristup podrazumeva da se repozitorijum unapred indeksira pomoću embeddinga, modela za pretragu i vektorske baze podataka, a zatim se vraćaju kodni delovi koji su konceptualno relevantni za zadatak. Vinay Perneti, potpredsednik inženjeringa u toj kompaniji, kaže da taj pristup posebno pomaže u velikim privatnim kodnim bazama, gde modeli nisu mogli ranije da „zapamte“ projekat kao što mogu sa javnim open source repozitorijumima.

Šta je harness i zašto je važan

Harness je, pojednostavljeno, sloj između modela i projekta na kojem programer radi. On odlučuje koji deo koda model može da vidi, kako pronalazi informacije i koje radnje sme da preduzme. U praksi, to znači da isto jezičko modeliranje može dati različite rezultate u zavisnosti od toga da li alat koristi samo pretragu po ključnim rečima ili i dublje, semantičko razumevanje koda.

Perneti tvrdi da je u slučaju Augment Code-a ključ u kombinaciji embedding modela, retrival modela i optimizovane infrastrukture koja omogućava vrlo brzu pretragu. Prema njegovim rečima, to smanjuje vreme koje agent troši na traženje relevantnog konteksta i može da smanji potrošnju tokena. Kao primer je naveo njihov blog post u kojem su, uz isti model i na Terminal-Bench testu, postigli sličnu tačnost kao Claude Code, ali uz 33 odsto veću efikasnost.

Važno je napomenuti da se ovde ne radi o univerzalnom zaključku za sve alate. Perneti je i sam rekao da nisu svi sistemi za pronalaženje konteksta jednaki, baš kao što nisu iste ni sve baze podataka. Drugim rečima, rezultat zavisi i od kvaliteta retrival sistema, ne samo od velikog modela koji stoji iza njega.

Gde ovakav pristup ima najviše smisla

Prema Augment Code-u, najveća prednost dolazi u velikim privatnim kodnim bazama. Tamo model nema prethodno znanje o projektu, pa mu je potrebno više pomoći da dođe do pravog dela koda. U takvim situacijama, kaže Perneti, semantičko razumevanje baze može da skrati iteracije i ubrza dolazak do rešenja.

On je takođe odvojio dva faktora koja su, po njemu, ključna za dobre rezultate: inteligenciju modela i kontekst. Modeli će, kako je rekao, nastaviti brzo da napreduju, ali to samo po sebi ne znači da imaju pravi kontekst za konkretan zadatak. Zato smatra da je dizajn harness-a zapravo sistemski problem, a ne samo pitanje izbora jednog modela.

Trošak, poverenje i tehnički dug

Jedna od čestih zamerki AI alatima za kodiranje jeste cena, kao i strah da će proizvesti tehnički dug. Perneti ne odbacuje te primedbe. Kaže da agenti umeju da dupliraju kod i da je Augment morao da organizuje posebne sprintove za smanjenje tehničkog duga uz pomoć agenata. Istovremeno tvrdi da su agenti dobri u izvršavanju kada im se jasno definiše cilj kroz specifikaciju.

Po njegovom viđenju, ljudi i dalje treba da vode ključne odluke, posebno u fazama kao što je pisanje specifikacija. Agenti, kaže on, nisu dobri u tome da samostalno napišu kvalitetan spec, ali su korisni kada je taj okvir već postavljen. To je i način da se zadrži kontrola i smanji rizik od loših odluka koje kasnije stvaraju dodatni posao.

Kada je reč o troškovima, Perneti očekuje da će se odnos između frontier modela i manjih, uključujući open source modele, vremenom menjati. Po njegovoj proceni, skuplji modeli će ostati za najteže probleme, dok bi za rutinske, dobro definisane korake sve češće mogli da se koriste jeftiniji ili lokalno pokretani modeli. To je važna napomena za firme koje računaju ukupne troškove AI razvoja.

Šta ovo znači za programere i timove

Ovaj razgovor pokazuje da se rasprava u AI kodiranju ne vodi samo oko toga koji je model bolji. Sve više zavisi od toga kako je model povezan sa kodom, koliko konteksta dobija i koliko efikasno pronalazi relevantne delove projekta. Za manje projekte i javno dostupne repozitorijume to možda nije presudno, ali u velikim privatnim sistemima može da napravi razliku u brzini rada i potrošnji resursa.

Za timove u regionu, poruka je praktična: pri izboru AI alata za programiranje vredi gledati više od samog imena modela. Bitni su način pretrage koda, kvalitet integracije, brzina pronalaženja konteksta i to koliko alat ostavlja prostora za ljudsku proveru. Kako se modeli budu dalje razvijali, verovatno će sve veći deo odluke biti u tome kako je alat organizovan oko njih, a ne samo koliko je sam model snažan.