AI-csapatmunka a kódhibák ellen: Apró modellekkel a jobb szoftverekért

Zsoldos Péter | 2025.07.02.
AI-csapatmunka a kódhibák ellen: Apró modellekkel a jobb szoftverekért
Az ELTE VII. Tudománykommunikációs Versenyén különdíjat nyert cikk.

Gondoljunk csak bele, mennyi időt töltünk nap mint nap különféle szoftverek használatával – okostelefonunkon, számítógépünkön, az interneten. Ezek a szoftverek milliós nagyságrendű kódsorból állnak, és szinte elkerülhetetlen, hogy hibák csússzanak beléjük. A programozók idejének jelentős része épp ezeknek a hibáknak a megtalálásával és kijavításával telik. Ez egy rendkívül munkaigényes és költséges folyamat.

Az utóbbi években óriási fejlődésen mentek keresztül a nagyméretű nyelvi modellek (LLM-ek, vagy egyszerűbben AI modellek). Ezek a modellek már nemcsak szöveget képesek értelmezni és generálni, hanem egyre ügyesebben bánnak a számítógépes kóddal is. Felmerült a kérdés: vajon segíthetnek-e az AI modellek automatizálni a hibajavítást?

A "magyarázó-kódoló" felállás

Ez a kutatás egy új megközelítést mutat be a hibajavítás automatizálására: a magyarázó-kódoló architektúrát. Ahelyett, hogy egyetlen AI modell próbálná meg mindkét feladatot elvégezni (megérteni a hibát és megírni a javítást), itt a munka megoszlik két, speciális szerepkörű AI modell között.

Képzeljünk el egy "magyarázó" modellt, amelynek az a feladata, hogy elemezze a hibás kódot, és érthetően elmondja (akár emberi nyelven is), mi a hiba lényege, hol található, és mi okozhatja.

Miután a magyarázó modell azonosította a problémát, színre lép a "kódoló" modell. Ennek a modellnek az a specialitása, hogy magyarázatok alapján tud javított kódot generálni. A magyarázó által adott információk segítenek a kódolónak pontosabb és célzottabb javítást készíteni.

Ez a csapatmunka több előnnyel is jár. Egyrészt a modellek jobban tudnak fókuszálni saját "szakterületükre" – a magyarázó a hibaelemzésre, a kódoló a kódgenerálásra – ami javíthatja a pontosságot és a hatékonyságot. Másrészt, mivel van egy magyarázat a javítás mögött, a folyamat sokkal átláthatóbbá és értelmezhetőbbé válik a programozók számára.

Eredmények és tanulságok

A kutatás eredményei több érdekes pontot is felszínre hoztak:

A különböző modellek párosítása gyakran jobb eredménnyel járt, mint ha csak egyetlen modell magyarázta és javította volna saját magát. Ez is alátámasztja a specializáció és a csapatmunka előnyét.

Voltak kiemelkedően jól működő párosítások, például bizonyos DeepseekCoder és QwenCoder kombinációk.

Különbség mutatkozott a különböző modellek által elkövetett hibák típusaiban is: a kódolásra specializált modellek gyakrabban estek logikai hibákba, míg az általánosabb modellek inkább elgépeléseket vétettek a kódban.

A jövő útja

Ez a kutatás fontos lépést jelent az AI-vezérelt hibajavítás átláthatóbbá és megbízhatóbbá tétele felé. Megmutatja, hogy a kisebb, erőforrás-hatékonyabb AI modellek is hatékonyan használhatók speciális szoftverfejlesztési feladatokra, ha okosan, együttműködve dolgoznak.