COBOL-Coder: Domain-Adapted Large Language Models for COBOL Code Generation and Translation
Die Studie stellt COBOL-Coder vor, ein spezialisiertes Large Language Model, das durch eine automatisierte Datencurierung mit Compiler-Validierung entwickelt wurde und bei der COBOL-Codegenerierung sowie der bidirektionalen Übersetzung zwischen COBOL und Java deutlich bessere Ergebnisse als allgemeine LLMs erzielt.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Das Problem: Der alte, vergessene Bibliothekar
Stellen Sie sich vor, die Welt der Banken, Versicherungen und Regierungen wird von einem riesigen, alten Bibliothekar namens COBOL geleitet. Dieser Bibliothekar arbeitet seit den 1960er-Jahren. Er kennt jedes Buch, jede Regel und jede Transaktion in den Archiven. Er ist unersetzlich, aber er spricht eine sehr alte, strenge Sprache, die heute kaum noch jemand fließend beherrscht.
Die modernen KI-Modelle (die „großen Sprachmodelle" wie GPT-4) sind wie superintelligente, junge Genies. Sie können moderne Sprachen wie Python oder Java perfekt sprechen und sogar Gedichte schreiben. Aber wenn man sie vor den alten Bibliothekar stellt und bittet, einen alten COBOL-Befehl zu übersetzen oder einen neuen zu schreiben, stolpern sie. Sie verstehen die alten Regeln nicht, machen grammatikalische Fehler und ihre Lösungen funktionieren in der echten Welt oft gar nicht. Es ist, als würde man versuchen, ein antikes lateinisches Manuskript mit einem modernen Übersetzer zu bearbeiten, der nur moderne Slangwörter kennt.
Die Lösung: Ein spezieller Auszubildender (COBOL-Coder)
Die Autoren dieses Papers haben sich gedacht: „Wir brauchen keinen allgemeinen Genie-Übersetzer, sondern einen spezialisierten Auszubildenden, der nur für COBOL trainiert wird."
Sie haben COBOL-Coder erschaffen. Aber wie lernt ein Computer eine so alte Sprache? Hier kommt der kreative Teil des Papers ins Spiel:
1. Die Datensammlung: Das „Reparatur-Team"
Das größte Problem war: Es gibt kaum saubere COBOL-Code-Beispiele im Internet. Die meisten sind kaputt, veraltet oder unvollständig.
- Die Analogie: Stellen Sie sich vor, Sie sammeln alte, verstaubte Bücher aus dem Keller. Viele Seiten sind zerrissen oder die Tinte ist verblasst.
- Der Trick: Die Forscher haben eine automatische Maschine gebaut. Sie nimmt einen alten, kaputten Code, schickt ihn an einen echten COBOL-Compiler (einen strengen Prüfer), der sagt: „Hier ist ein Fehler!" Dann nimmt ein KI-Modell (wie ein erfahrener Handwerker) diese Fehlermeldung, repariert den Code und schickt ihn zurück. Dieser Prozess wiederholt sich, bis das Buch perfekt lesbar ist. So haben sie aus dem Müll einen riesigen, sauberen Vorrat an COBOL-Wissen gezaubert.
2. Die Übersetzungs-Maschine: Der „Spiegel-Trick"
Da es zu wenig COBOL-Code gab, mussten sie mehr davon erfinden.
- Die Analogie: Sie haben moderne Bücher (in Java geschrieben) genommen und sie in die alte Sprache übersetzt. Aber wie stellen sie sicher, dass die Übersetzung stimmt?
- Der Trick: Sie nutzten einen „Spiegel-Trick". Sie übersetzten das moderne Java-Buch in COBOL. Dann nahmen sie das COBOL-Buch und übersetzten es zurück ins Java. Wenn das zurückübersetzte Buch dem Originalbuch gleicht, war die Übersetzung gut. Wenn nicht, wurde es verworfen. So entstand ein riesiges Trainingsbuch, das die KI lernte, wie man moderne Ideen in alte, strenge Regeln übersetzt.
3. Der Test: Die Prüfung im echten Leben
Die Forscher haben ihre neue KI (COBOL-Coder) gegen die großen, allgemeinen KIs (wie GPT-4) getestet.
- Das Ergebnis: Die allgemeinen KIs waren wie Schüler, die eine Fremdsprache nur aus einem Wörterbuch gelernt haben. Sie schrieben Sätze, die grammatikalisch falsch waren und im echten Leben nicht funktionierten (sie „kompilierten" nicht).
- COBOL-Coder hingegen war wie ein echter Handwerker. Er schrieb Code, der sofort funktionierte. Auf einer Skala von 0 bis 100 erreichte er fast 74 Punkte bei der Korrektheit, während die besten allgemeinen KIs nur bei 41 landeten. Bei der Übersetzung von modernem Java zurück in altes COBOL war das Ergebnis noch dramatischer: Die allgemeinen KIs schafften fast gar nichts (nahezu 0 Punkte), während COBOL-Coder erfolgreich war.
4. Die Meinung der Experten: Der Chef-Prüfer
Am Ende haben die Forscher echte, erfahrene COBOL-Programmierer gefragt, was sie von den Ergebnissen halten.
- Das Feedback: Die Experten sagten: „Die allgemeine KI klingt nett, aber ihr Code ist unpraktisch. COBOL-Coder hingegen fühlt sich an wie ein Kollege, der die alten Regeln kennt. Er schreibt Code, der strukturiert ist, wie man es in Banken erwartet, und nicht wie ein wilder Experiment."
- Die Einschränkung: Die Experten betonen jedoch: Die KI ist wie ein sehr talentierter Junior-Mitarbeiter. Sie kann den ersten Entwurf machen, aber ein erfahrener Senior muss ihn immer noch prüfen. Man kann die KI nicht einfach allein im System laufen lassen, ohne Aufsicht.
Das Fazit in einem Satz
Die Forscher haben gezeigt, dass man für alte, spezielle Sprachen wie COBOL keine „Allround-Genies" braucht, sondern spezialisierte Experten, die mit sauberen, korrigierten Daten trainiert wurden. COBOL-Coder ist dieser Spezialist: Er rettet die alten Systeme, indem er die Sprache der Vergangenheit versteht, die moderne KIs längst vergessen haben.
Es ist wie der Unterschied zwischen einem Touristen, der ein paar Wörter auf einer Karte liest, und einem Einheimischen, der die Straßen, die Regeln und die Geheimnisse der Stadt wirklich kennt.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.