Ugrás a fő tartalomra
OpenAI

2026. október 19.

PublikációKutatások

Előrelépés a kódolásban a kevés tanítóadattal rendelkező programozási nyelveken

Betöltés…

Legújabb modellfejlesztéseink javítják a szoftverfejlesztési és -migrációs képességeket az olyan, kevés tanítóadattal rendelkező programozási nyelveken, mint a COBOL, a Fortran és a Visual Basic. Ezeken a nyelveken kevesebb kód és dokumentáció áll rendelkezésre a modellek tanításához, mint például Python vagy JavaScript nyelven, mégis világszerte kritikus infrastruktúrák és alapvető szolgáltatások épülnek rájuk. A COBOL biztosítja⁠(új ablakban nyílik meg) az online banki rendszerek több mint 40%-ának, a személyes hitelkártyás tranzakciók 80%-ának és az ATM-tranzakciók 95%-ának működését, a Fortrant pedig időjárás-előrejelzésre⁠(új ablakban nyílik meg) és atomreaktorok biztonsági elemzésére⁠(új ablakban nyílik meg) használják. Ha az MI hatékonyabban tud dolgozni ezeken a nyelveken, az segíthet a csapatoknak az alapvető szolgáltatásokat működtető szoftverek karbantartásában és korszerűsítésében.

Munkánk irányát azoknak a fejlesztőknek és vállalati ügyfeleknek a visszajelzései határozzák meg, akik jelezték, hogy a programozásra szánt modelleknek gyakran nehézséget okoznak ezek a nyelvek. Az ilyen szoftverek karbantartása és korszerűsítése nehéz lehet: a dokumentáció hiányos lehet, az eredeti fejlesztők már távozhattak a cégtől, és előfordulhat, hogy fontos üzleti szabályok csak a kódban léteznek. Akár hibákat javítanak, akár másik nyelvre térnek át, a csapatoknak meg kell őrizniük azt a működést, amelyre a rendszereik épülnek.

A fejlődés mérésére két értékelést dolgoztunk ki. A MultiLangBench azt vizsgálja, hogy a modell képes-e a nulláról SQLite-kompatibilis adatbázismotort készíteni 20 különböző programozási nyelven. COBOL-migrációs értékelésünk azt teszteli, hogy a modell képes-e meglévő programokat másik nyelvre átültetni úgy, hogy közben megőrzi a működésüket. A két értékelés egymást kiegészítő készségeket vizsgál: új szoftverek fejlesztését és a meglévő szoftverek működésének megőrzését.

Legújabb modelljeink mindkét értékelésben jelentős előrelépést mutatnak: jóval nagyobb pontosságot nyújtanak alacsonyabb költség mellett.

A MultiLangBench értékelésben a GPT‑6 Astra 20 programozási nyelven átlagosan 87,4%-os tesztsikerességi arányt ér el a GPT‑5.6 Sol 26,8%-ával szemben, és minden vizsgált nyelven javulást mutat. A GPT‑6 Luna szintén felülmúlja a GPT‑5.6 Sol teljesítményét: 40,3%-ot ér el, hozzávetőleg 78%-kal alacsonyabb becsült API-költség mellett.

COBOL-migrációs értékelésünkben a GPT‑6.1 Sol alacsony érvelési ráfordítás mellett 86,6%-os pontosságot ér el a GPT‑5.6 Sol mindössze 5,4%-ával szemben, miközben 39%-kal kevesebbe kerül. Nagyobb érvelési ráfordítás mellett a pontosság eléri a 97,9%-ot, megközelítve az értékelésben elérhető maximumot.

Ezek az eredmények együttesen azt mutatják, hogy modelljeink számos programozási nyelven lényegesen jobban teljesítenek, és közben egyre költséghatékonyabbá is válnak.

1. SQLite készítése a nulláról (MultiLangBench)

A MultiLangBench feladata egy SQLite-kompatibilis adatbázismotor elkészítése egy megadott programozási nyelven. A modellnek rendszereznie kell a kódbázist, kezelnie kell az állapotot és a hibákat, valamint új funkciókat kell hozzáadnia a meglévők megőrzése mellett.

A különböző nyelvű megvalósítások összehasonlításához adatbázisfájlokat használunk közös interfészként. A vizsgált program egy kiinduló adatbázist és egy SQL-lekérdezést kap, majd létrehoz egy módosított adatbázist. A SQLite referenciamegvalósításával ellenőrizzük, hogy az eredményül kapott adatbázis tartalma megfelel-e az elvártnak. Így ugyanazokat a teszteket alkalmazhatjuk, függetlenül attól, milyen nyelven készült a motor.

A SQLite meglévő tesztkészletének tesztjeit alakítottuk át ehhez a formátumhoz. Az értékelés azt méri, hogy a modell mennyi működő funkciót tud elkészíteni egy hosszabb programozási munkamenet során, és mind a sikeres tesztek arányát, mind az API-költséget közli.

Maximális érvelési ráfordítás mellett a GPT‑6 Astra a 20 nyelven átlagosan 87,4%-os tesztsikerességi arányt ér el a GPT‑5.6 Sol 26,8%-ával szemben. A javulás minden vizsgált nyelvre kiterjed, köztük a COBOL-ra (10,9%-ról 72,1%-ra), az OCaml-re (25,6%-ról 85,8%-ra), a Fortranra (21,4%-ról 83,5%-ra) és a Visual Basicre (27,5%-ról 89,4%-ra). Az Astra a 20 nyelvből 19-ben 83% feletti eredményt ér el; a legnehezebb továbbra is a COBOL, 72%-kal.

A GPT‑6 Luna kedvezőbb költségű alternatívát kínál, amely szintén minden vizsgált nyelven felülmúlja a GPT‑5.6 Sol teljesítményét. Maximális érvelési ráfordítás mellett átlagosan 40,3%-os tesztsikerességi arányt ér el. Javulás tapasztalható többek között COBOL (10,9%-ról 17,1%-ra), OCaml (25,6%-ról 34,1%-ra), Fortran (21,4%-ról 31,4%-ra) és Visual Basic (27,5%-ról 41,6%-ra) nyelven. Ezeket a javulásokat mintánként 0,77 dolláros becsült átlagos API-költséggel éri el a GPT‑5.6 Sol 3,48 dollárjával szemben, ami hozzávetőleg 78%-os csökkenés.

A MultiLangBench értékelési környezetét és tesztkészletét az egyes nyelvek eredményeivel együtt közzétesszük a GitHubon⁠(új ablakban nyílik meg). A fejlesztők megvizsgálhatják, mit tesztel az értékelés, áttekinthetik az általuk használt nyelveken elért teljesítményt, és azonosíthatják a munkájuk szempontjából fontos hiányosságokat.

2. COBOL-kódbázis migrálása

Második értékelésünkben a modelleknek COBOL-programokat kell C++, Java, Kotlin, Python vagy Rust nyelvre átültetniük úgy, hogy minden program működése megmaradjon.

A sikeres migrációhoz a program üzleti logikáját és a COBOL sajátos nyelvi működését egyaránt érteni kell. A COBOL-programok gyakran pénzügyi tranzakciókat és üzleti nyilvántartásokat dolgoznak fel, ahol az olyan részletek, mint a kerekítési szabályok vagy a hiányzó rekordok kezelése, üzleti követelményeket tükröznek. A COBOL fixpontos aritmetikája például elhagyja a felesleges tizedesjegyeket, hacsak nincs kifejezetten előírva a kerekítés. Ha az átírt program ehelyett kerekíti ezeket az értékeket, hiba nélkül futhat, miközben eltérő pénzügyi eredményeket ad.

E működésbeli sajátosságok megőrzését rejtett tesztekkel ellenőrizzük, amelyek a megfigyelhető kimenetek bájtról bájtra való egyezését követelik meg. A migráció csak akkor számít sikeresnek, ha minden teszt sikerül. A működés megőrzését biztosító képességek hasznosak a régebbi rendszereket karbantartó és korszerűsítő csapatok számára. Éles szoftvereknél azonban továbbra is szükség van szakértői felülvizsgálatra, valamint a rendszer üzleti szabályait és függőségeit figyelembe vevő tesztelésre.

Ebben az értékelésben a GPT‑6.1 Sol alacsony érvelési ráfordítás mellett 86,6%-os pontosságot ér el a GPT‑5.6 Sol azonos beállítás mellett elért 5,4%-ával szemben, az API-költség mindössze 61%-áért. Nagyobb érvelési ráfordítás mellett a pontosság eléri a 97,9%-ot, közel kerülve az értékelésben elérhető maximumhoz. Ezek az értékelési eredmények előrelépést mutatnak a pontosabb, megfizethetőbb kódmigráció felé azon csapatok számára, amelyek a vállalkozásuk működéséhez nélkülözhetetlen szoftvereket korszerűsítik.

Fejlődő képességek a vállalati szoftverekhez

Ezek az értékelések a fejlesztők és vállalati ügyfelek közvetlen visszajelzéseivel együtt segítenek megérteni, hol fejlődnek modelljeink, és hol vannak még hiányosságaik.

Célunk, hogy a modellek több nyelven is alkalmazni tudják szoftverfejlesztési készségeiket: ismeretlen adattárak megértését, módosítások tervezését, buildeszközök használatát, tesztek futtatását és hibakeresést.

Legújabb modelljeinket az API-n keresztül próbálhatod ki a csapatod által használt nyelvek programozási feladatain. Visszajelzéseid arról, hogy mi működik jól, mi okoz nehézséget a modelleknek, és mely nyelvekre vagy munkafolyamatokra érdemes legközelebb összpontosítanunk, segítenek alakítani a modellek tanítását és értékelését, hogy jobban támogathassuk a számodra nélkülözhetetlen szoftvereket.