Vpliv jezikovnih modelov za programiranje, prilagojenih navodilom, na naloge programskega inženirstva

Nedavne raziskave so osvetlile impresivne sposobnosti velikih jezikovnih modelov (LLM), ki so trenirani za programiranje, pri različnih nalogah programskega inženirstva. Te modele lahko razdelimo na tri glavne paradigme, in sicer specializirane LLM-je za dokončanje kode, LLM-je, prilagojene za določene naloge, ter LLM-je, prilagojene na podlagi navodil, ki se odlično znajdejo tudi pri novih nalogah brez dodatnega prilagajanja.

Z namenom raziskovanja potenciala LLM-jev, prilagojenih navodilom, skupina raziskovalcev z Monash Univerze in ServiceNow Research predstavlja ASTRAIOS, zbirko, ki vključuje 28 LLM-jev, prilagojenih navodilom. Ti modeli so prilagojeni s sedmimi različnimi metodami na podlagi osnovnih modelov StarCoderja, z različnimi velikostmi modelov od 1B do 16B. Postopek prilagajanja se izvaja s pomočjo podatkovnega seta CommitPackFT iz OctoPack, kar zagotavlja celovito izboljšanje sposobnosti modelov pri naslednjih korakih.

Raziskovalci uporabljajo priporočene prakse iz konfiguracij PEFT Hugging Face in združujejo izbrane metode iz nedavnih ogrodij. Osredotočajo se predvsem na ocenjevanje razširljivosti s preverjanjem izgube prečnoentropijske funkcije med prilagajanjem navodil ter upoštevajo velikost modela in čas usposabljanja.

Poleg tega raziskovalci ovrednotijo uspešnost svojih LLM-jev, prilagojenih navodilom, pri petih predstavitvenih nalogah, povezanih s kodiranjem: zaznavanje klonov, zaznavanje napak, sinteza kode, popravljanje kode in razlaga kode. Prav tako analizirajo odpornost modelov in varnost kode z ocenjevanjem njihove sposobnosti generiranja kode na podlagi spremenjenih primerov in odkrivanje morebitnih ranljivosti v generirani kodi.

Zanimivo je, da študija razkriva, da večji PEFT LLM-ji izkazujejo odlično uspešnost pri nalogah generiranja kode, vendar ne kažejo podobnih prednosti pri nalogah razumevanja kode, kot sta zaznavanje klonov in zaznavanje napak. Povečanje velikosti modela izboljšuje uspešnost generiranja, vendar izpostavlja skrbi v zvezi z dovzetnostjo za zlonamerne primere in pristranskostjo do nevarne kode.

Razmerje med posodobljenimi parametri, izgubo prečnoentropijske funkcije in uspešnostjo nalog je podrobno raziskano. Raziskovalci ugotavljajo, da je mogoče na podlagi končne izgube manjših PEFT modelov napovedati izgubo večjih modelov ter da obstaja močna povezava med zadnjo izgubo in celotno uspešnostjo pri naslednjih nalogah.

Poleg tega študija poudarja doslednost relativne izgube uspešnosti pri različnih velikostih modela pri primerjavi različnih metod prilagajanja. To kaže, da so izboljšave, dosežene z vsako metodo prilagajanja, primerljive ne glede na velikost modela. Posledično ugotovljena izguba pri manjših modelih, prilagojenih z različnimi metodami, lahko služi kot dragocen pokazatelj za napovedovanje uspešnosti večjih modelov.

Zbirka ASTRAIOS, skupaj z raziskovalno študijo in Github skladiščem, ponuja dragocene vpoglede v potencial jezikovnih modelov, prilagojenih navodilom, za napredovanje nalog programskega inženirstva.

The source of the article is from the blog elblog.pl

Privacy policy
Contact