Bättre kodning i programmeringsspråk med begränsade träningsresurser
Våra senaste modellframsteg ger bättre möjligheter att utveckla och migrera programvara i programmeringsspråk med begränsade träningsresurser, som COBOL, Fortran och Visual Basic. För dessa språk finns mindre kod och dokumentation som modeller kan lära sig av än för språk som Python och JavaScript. Ändå ligger de till grund för kritisk infrastruktur och samhällsviktiga tjänster världen över. COBOL ligger till grund för(öppnas i ett nytt fönster) över 40 % av internetbanksystemen, 80 % av kreditkortstransaktionerna på plats och 95 % av bankomattransaktionerna, medan Fortran används för väderprognoser(öppnas i ett nytt fönster) och säkerhetsanalyser av kärnreaktorer(öppnas i ett nytt fönster). Genom att förbättra AI:s förmåga att arbeta i dessa språk skulle vi kunna hjälpa team att underhålla och modernisera den programvara som samhällsviktiga tjänster är beroende av.
Arbetet vägleds av återkoppling från utvecklare och företagskunder som har berättat att kodningsmodeller ofta har svårt med dessa språk. Att underhålla och modernisera den här programvaran kan vara svårt: dokumentationen kan vara ofullständig, de ursprungliga utvecklarna kan ha lämnat företaget och viktiga affärsregler kan finnas enbart i koden. Oavsett om teamen åtgärdar buggar eller migrerar till ett annat språk måste de bevara det beteende som deras system är beroende av.
För att mäta framstegen utvecklade vi två utvärderingar. MultiLangBench testar om en modell kan bygga en SQLite-kompatibel databasmotor från grunden i 20 olika programmeringsspråk. Vår utvärdering av COBOL-migrering testar om en modell kan migrera befintliga program till ett annat språk och samtidigt bevara deras beteende. Tillsammans testar de två kompletterande färdigheter: att bygga ny programvara och att bevara det som befintlig programvara gör.
Våra senaste modeller visar stora förbättringar i båda utvärderingarna, med mycket högre träffsäkerhet till lägre kostnad.
I MultiLangBench uppnår GPT‑6 Astra en genomsnittlig andel godkända tester på 87,4 % i 20 programmeringsspråk, jämfört med 26,8 % för GPT‑5.6 Sol, med förbättringar i samtliga testade språk. GPT‑6 Luna överträffar också GPT‑5.6 Sol och når 40,3 % till en uppskattad API-kostnad som är cirka 78 % lägre.
I vår utvärdering av COBOL-migrering uppnår GPT‑6.1 Sol 86,6 % träffsäkerhet på låg resonemangsnivå, jämfört med bara 5,4 % för GPT‑5.6 Sol, samtidigt som kostnaden är 39 % lägre. På högre resonemangsnivå når träffsäkerheten 97,9 %, vilket nästan når utvärderingens tak.
Sammantaget visar resultaten att våra modeller blir betydligt bättre på att arbeta med en mängd olika programmeringsspråk, samtidigt som de blir mer kostnadseffektiva.
I MultiLangBench får en modell i uppgift att bygga en SQLite-kompatibel databasmotor i ett angivet programmeringsspråk. Modellen måste organisera en kodbas, hantera tillstånd och fel samt lägga till nya funktioner utan att påverka befintlig funktionalitet.
För att jämföra implementationer mellan olika språk använder vi databasfiler som ett gemensamt gränssnitt. Programmet som testas får en ursprunglig databas och en SQL-fråga och skapar sedan en ändrad databas. Vi använder referensimplementationen av SQLite för att kontrollera om den resulterande databasen har det förväntade innehållet. Det gör att vi kan använda samma tester oavsett vilket språk motorn är byggd i.
Vi anpassade tester från SQLites befintliga testsvit till det här formatet. Utvärderingen mäter hur mycket fungerande funktionalitet en modell kan bygga under en längre kodningssession och redovisar både andelen godkända tester och API-kostnaden.
På maximal resonemangsnivå uppnår GPT‑6 Astra en genomsnittlig andel godkända tester på 87,4 % i de 20 språken, jämfört med 26,8 % för GPT‑5.6 Sol. Förbättringarna gäller samtliga testade språk, däribland COBOL (10,9 % till 72,1 %), OCaml (25,6 % till 85,8 %), Fortran (21,4 % till 83,5 %) och Visual Basic (27,5 % till 89,4 %). Astra får över 83 % i 19 av de 20 språken. COBOL är fortfarande svårast, med 72 %.
GPT‑6 Luna är ett billigare alternativ som också överträffar GPT‑5.6 Sol i samtliga testade språk. På maximal resonemangsnivå når den en genomsnittlig andel godkända tester på 40,3 %. Förbättringarna omfattar bland annat COBOL (10,9 % till 17,1 %), OCaml (25,6 % till 34,1 %), Fortran (21,4 % till 31,4 %) och Visual Basic (27,5 % till 41,6 %). Dessa förbättringar uppnås till en uppskattad genomsnittlig API-kostnad på 0,77 USD per genererat svar, jämfört med 3,48 USD för GPT‑5.6 Sol – cirka 78 % lägre.
Vi publicerar utvärderingsmiljön och testsviten för MultiLangBench på GitHub(öppnas i ett nytt fönster), tillsammans med resultaten för varje språk. Utvecklare kan undersöka vad utvärderingen testar, granska prestandan i de språk de använder och identifiera brister som har betydelse för deras eget arbete.
I vår andra utvärdering får modellerna i uppgift att migrera COBOL-program till C++, Java, Kotlin, Python eller Rust och samtidigt bevara det som varje program gör.
En lyckad migrering kräver förståelse för både programmets affärslogik och COBOLs specifika språkbeteende. COBOL-program bearbetar ofta finansiella transaktioner och affärsposter, där detaljer som avrundningsregler och hantering av saknade poster återspeglar verksamhetens krav. Till exempel tar COBOLs fastpunktsaritmetik bort överskjutande decimaler om inte avrundning uttryckligen begärs. En omskriven version som i stället avrundar dessa värden kan köras utan fel men ge andra finansiella resultat.
För att kontrollera att dessa beteenden bevaras utvärderar vi våra modeller med dolda tester som kräver att observerbara utdata är identiska byte för byte. En migrering räknas som lyckad endast om alla tester godkänns. Förmågan att bevara beteenden på det här sättet är användbar för team som underhåller och moderniserar äldre system. Användning i produktionsprogramvara kräver dock fortfarande expertgranskning och testning mot systemets affärsregler och beroenden.
I den här utvärderingen uppnår GPT‑6.1 Sol 86,6 % träffsäkerhet på låg resonemangsnivå, jämfört med 5,4 % för GPT‑5.6 Sol med samma inställning, till bara 61 % av API-kostnaden. På högre resonemangsnivå når träffsäkerheten 97,9 %, vilket ligger nära utvärderingens tak. Dessa utvärderingsresultat visar framsteg mot mer korrekt och prisvärd kodmigrering för team som moderniserar den programvara deras verksamheter är beroende av.
Dessa utvärderingar, tillsammans med direkt återkoppling från utvecklare och företagskunder, hjälper oss att se var våra modeller förbättras och var de fortfarande brister.
Vårt mål är att hjälpa modellerna att använda sina färdigheter inom programvaruutveckling i fler språk: förstå obekanta förvar, planera ändringar, använda byggverktyg, köra tester och felsöka.
Du kan prova våra senaste modeller via API:et för kodningsuppgifter i de språk ditt team använder. Din återkoppling om vad som fungerar, vad modellerna har svårt med och vilka språk eller arbetsflöden vi bör fokusera på härnäst hjälper oss att forma hur vi tränar och utvärderar modeller för att bättre stödja den programvara du är beroende av.





