Skip to main content

Grafu Balstīti AI Aģenti Maina Koda Lokalizāciju Mērogā Pielāgojamai Programmatūras Uzturēšanai

Pētījums par kodēšanas lokalizācijas uzlabošanu ar grafiem balstītu AI

Programmatūras uzturēšana ir būtiska programmatūras izstrādes dzīves cikla sastāvdaļa, kurā izstrādātāji bieži atgriežas pie esošajām koda bāzēm, lai labotu kļūdas, ieviestu jaunas funkcijas un optimizētu veiktspēju. Viens no galvenajiem uzdevumiem šajā fāzē ir koda lokalizācija – precīzas koda vietu noteikšana, kuras nepieciešams modificēt. Šis process ir kļuvis arvien svarīgāks, ņemot vērā mūsdienu programmatūras projektu pieaugošo apjomu un sarežģītību.

Lai gan lielo valodu modeļu (LLM) izmantošana kļūst arvien populārāka, piemēram, kļūdu noteikšanā vai koda meklēšanā, joprojām ir tehniskas problēmas, kas saistītas ar šo modeļu spēju saprast sarežģītu kodu semantiku un struktūru.

Problēmas ar tradicionālajām metodēm

Viena no biežākajām problēmām programmatūras uzturēšanā ir precīza koda daļu identificēšana, kuras nepieciešams mainīt, balstoties uz lietotāju ziņotajām problēmām vai funkciju pieprasījumiem. Bieži vien problēmu apraksti ir formulēti dabiskajā valodā, bet tie nenorāda uz patieso koda cēloni. Tradicionālās metodes arī cieš no sarežģītām koda atkarībām, it īpaši, ja attiecīgais kods atrodas vairākos failos vai prasa hierarhisku analīzi.

Grafu balstīta pieeja – LocAgent

Pētnieku grupa no Yale University, University of Southern California, Stanford University un All Hands AI izstrādāja LocAgent – grafiski virzītu aģentu sistēmu, kas pārveido koda lokalizāciju. Tā koda bāzes pārveido par virzītiem neviendabīgiem grafiem, kas ietver mezglus direktorijām, failiem, klasēm un funkcijām, kā arī šķautnes, kas atspoguļo attiecības, piemēram, funkciju izsaukumus vai klases mantojumu.

Šī struktūra ļauj aģentam veikt analīzi vairākos koda abstrakcijas līmeņos. Sistēma izmanto tādus rīkus kā SearchEntity, TraverseGraph un RetrieveEntity, lai ļautu LLM modeļiem pētīt sistēmu soli pa solim.

Rezultāti un efektivitāte

LocAgent demonstrēja iespaidīgus rezultātus standarta testos. Piemēram, uz SWE-Bench-Lite datu kopas tas sasniedza 92,7% precizitāti failu līmenī, izmantojot Qwen2.5-32B modeli. Turklāt, tas ievērojami samazināja izmaksas – tikai 0,05 USD par piemēru, salīdzinot ar 0,66 USD, izmantojot Claude-3.5.

Pētījumā tika konstatēts, ka instrumenti kā TraverseGraph un SearchEntity ir būtiski svarīgi – to deaktivēšana samazināja precizitāti līdz pat 18%. LocAgent arī uzlaboja GitHub problēmu risināšanas efektivitāti, palielinot veiksmīgo risinājumu skaitu no 33,58% līdz 37,59%.

Galvenie secinājumi

  • LocAgent pārveido koda bāzes par neviendabīgiem grafiem daudzlīmeņu analīzei.
  • Sasniedza līdz 92,7% precizitāti failu līmenī.
  • Samazināja izmaksas par aptuveni 86% salīdzinājumā ar komerciāliem modeļiem.
  • Ieviesa jaunu testu datu kopu ar 660 piemēriem.
  • Demonstrēja reālas priekšrocības GitHub problēmu risināšanā.

Plašākai informācijai apmeklējiet pētījuma publikāciju un oficiālo GitHub lapu.

https://www.marktechpost.com/

Atbildēt

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti kā *