Prikažite vrhunskim LLM-ovima bagovit kod – oni će nastaviti s greškama umesto da ih isprave
Istraživači su otkrili da veliki jezički modeli (LLM-ovi) imaju tendenciju da ponavljaju bagovit kod kada im se zada zadatak da dovrše neispravne kodne isječke.

Greška unutra, greška napolje – kako u obuci, tako i u izvođenju
Drugim rečima, kada im se prikaže loš deo koda i zatraži da popune praznine, AI modeli su podjednako skloni da ponove grešku kao i da je isprave. Devet naučnika sa institucija poput Pekinškog univerziteta hemijske tehnologije ispitivali su kako LLM-ovi obrađuju bagovit kod i otkrili da modeli često ponavljaju poznate greške umesto da ih ispravljaju. Svoja otkrića opisali su u preliminarnom radu pod naslovom „LLM-ovi su replikatori bagova: Empirijska studija o sposobnosti LLM-ova da dovršavaju kod sklon bagovima“.
Testiranje sedam modela
Naučnici su testirali sedam LLM-ova – OpenAI-jeve GPT-4o, GPT-3.5 i GPT-4, zatim Meta-in CodeLlama-13B-hf, Google-ov Gemma-7B, BigCode-ov StarCoder2-15B i Salesforce-ov CodeGEN-350M – tražeći od njih da dovrše delove koda iz Defects4J baze podataka.
Ono što je značajno jeste da su stope grešaka LLM-ova bile znatno veće kada su radili sa bagovitim kodom, što i nije iznenađujuće s obzirom na to da većina koda u ranoj fazi razvoja sadrži greške.
Prema radu:
“U zadacima sklonim bagovima, LLM-ovi imaju gotovo jednake šanse da generišu ispravan ili bagovit kod, sa znatno nižom tačnošću nego u normalnim scenarijima dovršavanja koda (npr. 12,27% naspram 29,85% za GPT-4).”
“U proseku, svaki model generiše oko 151 ispravnu dopunu i 149 bagovitih dopuna, što ukazuje na povećanu težinu rada sa kontekstima sklonim greškama.”
Problem ponavljanja grešaka
Još alarmantniji nalaz istraživača je velika stopa ponavljanja grešaka iz baze podataka, umesto da modeli pokažu „inteligenciju“ u prepoznavanju i ispravljanju bagova.
“U proseku, 44,44% bagova koje LLM-ovi naprave identični su istorijskim bagovima. Za GPT-4o, ovaj procenat dostiže čak 82,61%.”
Drugim rečima, LLM-ovi ne samo da ne prepoznaju greške – oni ih često bukvalno prepisuju.
Razlike u stepenu “memorisanih” bagova zavise od modela:
- GPT-4o: 82,61% bagova je direktna kopija poznatih grešaka.
- GPT-3.5: 51,12% bagova su već viđene greške.
- Gemma-7B: Samo 15% bagova su identične prethodnim greškama, što sugeriše da ovaj model češće generiše „novu“ (ali i dalje bagovitu) sintaksu.
Modeli koji češće ponavljaju greške iz obuke manje su skloni inovaciji i generisanju ispravnog koda.
Koji tip grešaka je najčešći?
LLM-ovi su imali najviše problema sa pozivima metoda i return izrazima, dok su bolje rukovali jednostavnijim sintaksama poput if-izraza i deklaracija promenljivih.
Tim je takođe testirao DeepSeek R1, model fokusiran na rezonovanje. Međutim, rezultati nisu bili mnogo bolji – i on je imao podjednako uravnotežen odnos između ispravnih i bagovitih dopuna u zadacima sa bagovitim kodom.
Šta dalje?
Autori rada zaključuju da je potrebno poboljšati LLM-ove u sledećim oblastima:
Bolje razumevanje programskih jezika (sintaksa i semantika).
Snažniji mehanizmi za prepoznavanje i ispravljanje grešaka.
Pametniji algoritmi post-procesiranja za filtriranje neispravnih izlaza.
Bolja integracija sa razvojnim alatima poput IDE-ova, koji bi mogli pomoći u detekciji bagova.
Iako su AI modeli sve sposobniji u generisanju koda, ova studija pokazuje da je „inteligencija“ veštačke inteligencije i dalje daleko od savršene.
Tim istraživača:
Studiju su sproveli Liwei Guo, Sixiang Ye, Zeyu Sun, Xiang Chen, Yuxia Zhang, Bo Wang, Jie M. Zhang, Zheng Li i Yong Liu, istraživači sa Pekinškog univerziteta hemijske tehnologije, Kineske akademije nauka, Univerziteta Nantong, Pekinškog instituta za tehnologiju, Pekinškog univerziteta za saobraćaj i King’s College London-a.
Izvor: Theregister