Przenosząc program COBOL na współczesny język, można zachować jego składnię, a jednocześnie zmienić zasady obliczania kwot. Właśnie temu problemowi OpenAI poświęciło publikację z 19 października: firma podała wyniki swoich modeli w testach programowania w COBOL-u, Fortranie i innych językach, dla których dostępnych jest mniej materiałów treningowych, oraz udostępniła zestaw MultiLangBench.

Dla zespołów utrzymujących starsze systemy korporacyjne istotne są nie tylko podane odsetki, lecz także dwa różne rodzaje testów. Jeden ocenia tworzenie programów od podstaw w różnych językach; drugi sprawdza, czy migracja kodu COBOL zachowuje obserwowalne zachowanie programu. Te zadania wymagają odmiennych testów i wiążą się z różnymi rodzajami ryzyka przy wdrażaniu.
Dwa testy — dwa wyzwania inżynieryjne
W MultiLangBench model ma stworzyć zgodny z SQLite silnik, który przyjmuje zapytania i modyfikuje plik bazy danych. OpenAI podaje średni odsetek zaliczonych testów w 20 językach: GPT‑6 Astra uzyskała 87,4% przy maksymalnym poziomie rozumowania, a GPT‑5.6 Sol — 26,8%. Każda implementacja jest sprawdzana pod kątem oczekiwanej zawartości bazy; oceniane są również czas działania i koszt API.
Firma udostępniła MultiLangBench na GitHubie, wraz z infrastrukturą testową. W opublikowanym repozytorium opisano testy utworzone na podstawie zestawu SQLite TCL Tests oraz zasady weryfikacji wyników. Dzięki temu programiści mogą sprawdzić, jakie operacje są uwzględniane w ocenie, a następnie odtworzyć test dla własnej konfiguracji modelu.
Test migracji COBOL-u sprawdza inną umiejętność: przepisanie istniejącego programu na C++, Javę, Kotlin, Pythona lub Rust przy zachowaniu jego zachowania w ukrytych testach. OpenAI podaje dokładność 86,6% dla GPT‑6.1 Sol przy niskim poziomie rozumowania, w porównaniu z 5,4% dla GPT‑5.6 Sol w tym samym trybie. Przy wyższym poziomie rozumowania wynik GPT‑6.1 Sol osiąga w tej ocenie 97,9%.
Dlaczego migracja wymaga sprawdzenia reguł biznesowych
W opisie OpenAI podkreśla, że zgodność zależy od semantyki języka źródłowego. Na przykład arytmetyka stałoprzecinkowa COBOL-u odrzuca nadmiarowe miejsca dziesiętne, jeśli nie określono jawnie zasad zaokrąglania. Jeśli nowa implementacja zaokrągla je inaczej, program może działać poprawnie, a mimo to zwracać inne wyniki finansowe.
Kryterium testu migracyjnego stanowi więc zgodność wyników dla sprawdzanych przypadków, ale praktyczne kryteria zespołu powinny obejmować również własne reguły obliczeń, format danych i zależności systemu. Dobrym pierwszym krokiem jest wybór modułu o jasno określonych danych wejściowych i wyjściowych, ustalenie wyników referencyjnych dla rzeczywistych przypadków brzegowych oraz równoległe uruchomienie wersji oryginalnej i przepisanej.
Co wyniki oznaczają dla zespołów
Liczby OpenAI odnoszą się do opublikowanych zestawów i ustawień rozumowania. MultiLangBench ocenia tworzenie implementacji zgodnej z SQLite, a zestaw COBOL — zachowanie programu po migracji; wyniki opisują te konkretne testy. Zespoły mogą wykorzystać je jako punkt odniesienia przy wyborze modeli i podstawę własnych, odtwarzalnych porównań, ale nie jako gotową ocenę zgodności z dowolnym systemem produkcyjnym.
Praktyczny wniosek jest prosty: warto testować modele na własnym kodzie i własnych przypadkach kontrolnych, a koszty analizować łącznie ze skutecznością. Przy modernizacji COBOL-u szczególnie ważne są testy zaokrągleń, pominiętych rekordów i innych reguł utrwalonych w działaniu starszego programu. Nowe wyniki ułatwiają takie sprawdzanie, ale potwierdzenie równoważności nadal należy do procesu inżynieryjnego.