COBOL-Coder: Domain-Adapted Large Language Models for COBOL Code Generation and Translation
Ce papier présente COBOL-Coder, un modèle de langage spécialisé dans le domaine COBOL obtenu grâce à une pipeline de curation de données automatisée, qui surpasse nettement les modèles généralistes en génération et traduction de code tout en étant validé par des développeurs expérimentés.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous essayez de faire parler un génie moderne (une Intelligence Artificielle très avancée) avec un artisan expérimenté qui parle une langue ancienne et complexe. C'est exactement le défi que relève cette recherche.
Voici l'explication de l'article COBOL-Coder, racontée comme une histoire, en français simple et avec des images pour tout le monde.
1. Le Problème : Le "Vieux Livre de Cuisine" perdu
Imaginez que les banques, les assurances et les gouvernements fonctionnent encore avec d'énormes ordinateurs (des "mainframes") qui tournent sur un langage de programmation vieux de 60 ans appelé COBOL. C'est comme un vieux livre de cuisine écrit dans une langue que plus personne ne parle couramment aujourd'hui.
Aujourd'hui, nous avons des "Super-Cuisiniers" (les IA comme GPT-4) qui sont excellents pour cuisiner avec des ingrédients modernes (Python, Java). Mais si vous leur demandez de cuisiner selon ce vieux livre de cuisine COBOL, ils échouent lamentablement. Ils ne comprennent pas les règles bizarres, la grammaire rigide, et ils cuisinent des plats qui ne sont pas comestibles (le code ne fonctionne pas).
2. La Solution : Créer un "Super-Cuisinier COBOL"
Les chercheurs de cet article ont décidé de ne pas attendre que le Super-Cuisinier généraliste apprenne tout seul. Au lieu de cela, ils ont créé un cuisinier spécialisé nommé COBOL-Coder.
Pour y arriver, ils ont suivi trois étapes magiques :
Étape 1 : La Chasse aux Trésors (Collecte de données)
Ils ont fouillé dans des archives publiques (comme GitHub) pour trouver des recettes COBOL existantes. Mais attention, beaucoup de ces recettes étaient abîmées, incomplètes ou illisibles.
- L'analogie : C'est comme trouver des vieux manuscrits dans une cave humide. Certains sont mouillés, d'autres ont des pages manquantes.
Étape 2 : La Réparation par l'Expert (Validation)
Au lieu de jeter les recettes abîmées, ils ont utilisé une IA très intelligente (GPT-4) agissant comme un expert correcteur.
- Le processus : Ils ont donné le code à un "compilateur" (un vérificateur automatique). Si le code échouait, l'IA lisait l'erreur, réfléchissait comme un vieux développeur COBOL, et réparait le code. Elle répétait ce processus jusqu'à ce que la recette soit parfaite et prête à être cuisinée.
- Le résultat : Ils ont nettoyé des milliers de recettes pour en faire une bibliothèque de haute qualité.
Étape 3 : La Traduction et l'Enrichissement (Synthèse)
Il y avait encore un problème : il y avait trop peu de recettes COBOL par rapport aux recettes modernes (Java).
- L'astuce : Ils ont pris des recettes modernes (Java), très nombreuses, et ont demandé à l'IA de les traduire en COBOL. Ensuite, ils ont vérifié si la traduction avait gardé le même goût (la même logique).
- L'ajout de savoir : Ils ont aussi ajouté des livres de théorie sur le COBOL pour que l'IA comprenne non seulement comment écrire, mais aussi pourquoi on écrit ainsi dans les entreprises.
3. Le Résultat : Le Champion du COBOL
Ils ont entraîné leur modèle (COBOL-Coder) avec cette nouvelle bibliothèque. Ensuite, ils l'ont mis à l'épreuve contre les géants de l'IA (comme GPT-4o) sur deux types de tâches :
- Créer du code COBOL : Donner une consigne ("Fais une liste de courses") et voir si l'IA écrit le bon code.
- Résultat : Les géants généraux (GPT-4) ont souvent échoué (code qui ne marche pas). COBOL-Coder, lui, a réussi à écrire des recettes qui fonctionnent presque 74% du temps ! C'est énorme.
- Traduire : Transformer du code moderne (Java) en vieux code (COBOL) et vice-versa.
- Résultat : Traduire du moderne vers le vieux est très difficile. Les autres IA sont tombées à zéro. COBOL-Coder a réussi à le faire correctement plus de 30% du temps, ce qui est un exploit pour ce type de tâche.
4. Le Témoignage des Vrais Chefs (Les Développeurs)
Pour être sûrs que ce n'était pas juste des chiffres, les chercheurs ont demandé à de vrais chefs cuisiniers (des développeurs COBOL expérimentés) de goûter les plats.
- Le verdict : Les chefs ont préféré le plat de COBOL-Coder. Ils ont dit : "Ce code a l'air professionnel, il respecte les règles de l'entreprise, et il est structuré comme un vrai programme COBOL."
- La nuance : Les chefs ont précisé que l'IA ne doit pas être le chef final. Elle est comme un stagiaire très doué qui prépare le brouillon. Le vrai chef humain doit toujours vérifier, corriger et valider avant de servir le plat aux clients (les banques, etc.).
En Résumé
Cette recherche nous apprend que pour faire parler une IA avec une langue ancienne et complexe, on ne peut pas juste lui donner un gros cerveau généraliste. Il faut lui donner la bonne nourriture (des données spécifiques et nettoyées) et la former spécifiquement à cette langue.
COBOL-Coder est la preuve qu'avec les bons outils, on peut sauver et moderniser les systèmes informatiques du passé, en aidant les humains à ne pas perdre le fil de l'histoire numérique de nos banques et de nos gouvernements.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.