Preskočiť na hlavný obsah
OpenAI

19. októbra 2026

PublikáciaVyhľadávanie

Pokrok v programovaní v jazykoch s nedostatkom tréningových dát

Načítava sa…

Najnovšie vylepšenia našich modelov rozširujú ich schopnosti pri tvorbe a migrácii softvéru v programovacích jazykoch s nedostatkom tréningových dát, ako sú COBOL, Fortran a Visual Basic. Pre tieto jazyky je k dispozícii menej kódu a dokumentácie, z ktorých sa modely môžu učiť, než pre jazyky ako Python a JavaScript. Napriek tomu na nich stojí kritická infraštruktúra a základné služby po celom svete. COBOL zabezpečuje fungovanie⁠(otvorí sa v novom okne) viac ako 40 % systémov internetového bankovníctva, 80 % transakcií kreditnými kartami pri osobnom platení a 95 % transakcií v bankomatoch, zatiaľ čo Fortran sa používa pri predpovedaní počasia⁠(otvorí sa v novom okne) a analýze bezpečnosti jadrových reaktorov⁠(otvorí sa v novom okne). Zlepšenie schopnosti AI pracovať v týchto jazykoch by mohlo tímom pomôcť udržiavať a modernizovať softvér, od ktorého závisia základné služby.

Pri tejto práci sa riadime spätnou väzbou od vývojárov a firemných zákazníkov, ktorí nás upozornili, že modely na programovanie majú s týmito jazykmi často problémy. Údržba a modernizácia takéhoto softvéru môže byť náročná: dokumentácia môže byť neúplná, pôvodní vývojári už možno vo firme nepracujú a dôležité obchodné pravidlá môžu byť zachytené len v kóde. Či už tímy opravujú chyby, alebo migrujú na iný jazyk, musia zachovať správanie, od ktorého ich systémy závisia.

Na meranie pokroku sme vyvinuli dve hodnotenia. MultiLangBench testuje, či model dokáže od základov vytvoriť databázové jadro kompatibilné so SQLite v 20 rôznych programovacích jazykoch. Naše hodnotenie migrácie z jazyka COBOL testuje, či model dokáže migrovať existujúce programy do iného jazyka a pritom zachovať ich správanie. Spoločne testujú dve dopĺňajúce sa zručnosti: tvorbu nového softvéru a zachovanie funkčnosti existujúceho softvéru.

Naše najnovšie modely vykazujú výrazné zlepšenie v oboch hodnoteniach a dosahujú oveľa vyššiu presnosť pri nižších nákladoch.

V hodnotení MultiLangBench dosahuje GPT‑6 Astra priemernú úspešnosť testov 87,4 % v 20 programovacích jazykoch oproti 26,8 % pri GPT‑5.6 Sol, pričom zlepšenie sa prejavilo v každom testovanom jazyku. Aj GPT‑6 Luna prekonáva GPT‑5.6 Sol: dosahuje 40,3 % pri odhadovaných nákladoch na API nižších približne o 78 %.

V našom hodnotení migrácie z jazyka COBOL dosahuje GPT‑6.1 Sol pri nízkej úrovni uvažovania presnosť 86,6 % oproti iba 5,4 % pri GPT‑5.6 Sol, a to pri nákladoch nižších o 39 %. Pri vyššej úrovni uvažovania dosahuje presnosť 97,9 %, čím sa takmer dostáva na strop hodnotenia.

Tieto výsledky spoločne ukazujú, že naše modely si výrazne lepšie poradia so širokou škálou programovacích jazykov a zároveň sú nákladovo efektívnejšie.

1. Tvorba SQLite od základov (MultiLangBench)

V hodnotení MultiLangBench má model za úlohu vytvoriť databázové jadro kompatibilné so SQLite v zadanom programovacom jazyku. Model musí usporiadať zdrojový kód, spravovať stav, ošetrovať chyby a pridávať nové funkcie pri zachovaní existujúcej funkčnosti.

Na porovnávanie implementácií v rôznych jazykoch používame databázové súbory ako spoločné rozhranie. Testovaný program dostane počiatočnú databázu a SQL dotaz a následne vytvorí upravenú databázu. Pomocou referenčnej implementácie SQLite overujeme, či má výsledná databáza očakávaný obsah. Vďaka tomu môžeme použiť rovnaké testy bez ohľadu na jazyk, v ktorom je jadro vytvorené.

Tomuto formátu sme prispôsobili testy z existujúcej testovacej sady SQLite. Hodnotenie meria, koľko funkcií dokáže model úspešne implementovať počas dlhšieho programovania, a uvádza úspešnosť testov aj náklady na API.

Pri maximálnej úrovni uvažovania dosahuje GPT‑6 Astra priemernú úspešnosť testov 87,4 % v 20 jazykoch oproti 26,8 % pri GPT‑5.6 Sol. Zlepšenie sa prejavuje v každom testovanom jazyku vrátane jazykov COBOL (z 10,9 % na 72,1 %), OCaml (z 25,6 % na 85,8 %), Fortran (z 21,4 % na 83,5 %) a Visual Basic (z 27,5 % na 89,4 %). Astra dosahuje viac ako 83 % v 19 z 20 jazykov, pričom najnáročnejším zostáva COBOL so 72 %.

GPT‑6 Luna predstavuje lacnejšiu možnosť, ktorá tiež prekonáva GPT‑5.6 Sol v každom testovanom jazyku. Pri maximálnej úrovni uvažovania dosahuje priemernú úspešnosť testov 40,3 %. Zlepšenia zahŕňajú COBOL (z 10,9 % na 17,1 %), OCaml (z 25,6 % na 34,1 %), Fortran (z 21,4 % na 31,4 %) a Visual Basic (z 27,5 % na 41,6 %). Tieto zlepšenia dosahuje pri odhadovaných priemerných nákladoch na API 0,77 USD na vzorku oproti 3,48 USD pri GPT‑5.6 Sol, teda približne o 78 % nižších.

Na GitHube⁠(otvorí sa v novom okne) zverejňujeme nastavenie hodnotenia MultiLangBench a jeho testovaciu sadu spolu s výsledkami pre jednotlivé jazyky. Vývojári si môžu pozrieť, čo hodnotenie testuje, preskúmať výkon v jazykoch, ktoré používajú, a odhaliť nedostatky dôležité pre ich vlastnú prácu.

2. Migrácia kódu v jazyku COBOL

V druhom hodnotení majú modely za úlohu migrovať programy z jazyka COBOL do C++, Javy, Kotlinu, Pythonu alebo Rustu pri zachovaní funkčnosti každého programu.

Úspešná migrácia si vyžaduje pochopenie obchodnej logiky programu aj špecifického správania jazyka COBOL. Programy v jazyku COBOL často spracúvajú finančné transakcie a obchodné záznamy, pri ktorých detaily, ako sú pravidlá zaokrúhľovania či spracovanie chýbajúcich záznamov, odrážajú obchodné požiadavky. Napríklad aritmetika s pevnou desatinnou čiarkou v jazyku COBOL zahadzuje nadbytočné desatinné číslice, pokiaľ nie je výslovne požadované zaokrúhľovanie. Prepísaný program, ktorý tieto hodnoty namiesto toho zaokrúhľuje, môže bežať bez chýb, no pritom poskytovať odlišné finančné výsledky.

Zachovanie tohto správania overujeme pomocou skrytých testov, ktoré pri pozorovateľných výstupoch vyžadujú zhodu bajt po bajte. Migrácia sa považuje za úspešnú len vtedy, ak program prejde všetkými testami. Takéto schopnosti zachovať správanie sú užitočné pre tímy, ktoré udržiavajú a modernizujú staršie systémy. Ich využitie v produkčnom softvéri však stále vyžaduje odbornú kontrolu a testovanie podľa obchodných pravidiel a závislostí systému.

V tomto hodnotení dosahuje GPT‑6.1 Sol pri nízkej úrovni uvažovania presnosť 86,6 % oproti 5,4 % pri GPT‑5.6 Sol s rovnakým nastavením, a to len pri 61 % jeho nákladov na API. Pri vyššej úrovni uvažovania dosahuje presnosť 97,9 %, čím sa približuje k stropu hodnotenia. Tieto výsledky hodnotenia ukazujú pokrok smerom k presnejšej a cenovo dostupnejšej migrácii kódu pre tímy, ktoré modernizujú softvér kľúčový pre fungovanie svojich firiem.

Rozvoj schopností pre podnikový softvér

Tieto hodnotenia spolu s priamou spätnou väzbou od vývojárov a firemných zákazníkov nám pomáhajú zistiť, v čom sa naše modely zlepšujú a kde majú ešte nedostatky.

Naším cieľom je pomôcť modelom uplatňovať zručnosti softvérového inžinierstva vo viacerých jazykoch: orientovať sa v neznámych repozitároch, plánovať zmeny, používať nástroje na zostavovanie, spúšťať testy a odstraňovať chyby.

Naše najnovšie modely si môžete vyskúšať cez API na programátorských úlohách v jazykoch, ktoré váš tím používa. Vaša spätná väzba o tom, čo funguje, s čím majú modely problémy a na ktoré jazyky či pracovné postupy by sme sa mali ďalej zamerať, pomáha formovať spôsob trénovania a hodnotenia modelov, aby lepšie podporovali softvér, od ktorého závisíte.