← Derniers articles
💬 NLP

Evaluating and Achieving Controllable Code Completion in Code LLM

Cet article introduit le Controllable Code Completion Benchmark (C3-Bench) pour remédier au manque d'évaluation du respect des instructions dans les LLM de code, révèle des écarts de performance significatifs entre les modèles open-source et propriétaires, et propose un pipeline de synthèse de données permettant à un modèle affiné d'atteindre des résultats de pointe sur le nouveau benchmark.

Auteurs originaux : Jiajun Zhang, Zeyu Cui, Lei Zhang, Jian Yang, Jiaxi Yang, Qiang Liu, Zilei Wang, Binyuan Hui, Liang Wang, Junyang Lin

Publié 2026-01-23
📖 5 min de lecture🧠 Analyse approfondie

Auteurs originaux : Jiajun Zhang, Zeyu Cui, Lei Zhang, Jian Yang, Jiaxi Yang, Qiang Liu, Zilei Wang, Binyuan Hui, Liang Wang, Junyang Lin

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 êtes un chef étoilé (l'IA) travaillant dans une cuisine très occupée. Pendant longtemps, la façon de tester ces chefs était simple : nous leur donnions un plat à moitié cuit (le code avant la partie manquante) et un autre plat à moitié cuit après lui (le code après la partie manquante), et nous leur demandions de remplir le milieu. Si le plat final avait bon goût (passait les tests unitaires), le chef recevait une étoile d'or.

Le Problème : La « Recette » Manquait
Les auteurs de cet article soutiennent que cette ancienne façon de tester est défectueuse. Dans le monde réel, un chef de cuisine ne se contente pas de dire : « Remplis le milieu ». Il dit : « Remplis le milieu, mais utilise uniquement des ingrédients végétariens », ou « Remplis le milieu, mais fais en sorte qu'il fasse exactement trois lignes de long », ou encore « Remplis le milieu, mais utilise un type de couteau spécifique ».

Les modèles d'IA actuels sont excellents pour faire en sorte que le plat ait bon goût, mais ils ignorent souvent les instructions spécifiques sur la manière de le préparer. Ils pourraient utiliser de la viande alors que vous avez demandé des légumes, ou écrire un paragraphe alors que vous avez demandé une seule ligne. Les anciens tests ne l'ont pas détecté car ils ne vérifiaient que si la nourriture était comestible, et non si le chef avait écouté la commande.

La Solution : C3-Bench (Le test de « Suivi d'Instructions »)
Pour corriger cela, l'équipe a créé un nouveau test appelé C3-Bench (Controllable Code Completion Benchmark). Considérez cela comme une nouvelle compétition de cuisine, beaucoup plus stricte.

Au lieu de simplement demander une pièce de code manquante, chaque test de C3-Bench vient avec une instruction spécifique et détaillée. Ils ont divisé ces instructions en deux catégories principales :

  1. Les instructions de « Comment faire » (Contrôle de l'implémentation) :
    • Analogie : « Construisez un pont, mais vous devez utiliser une conception suspendue, et non une conception à poutres. »
    • own L'IA doit écrire du code qui fonctionne et qui suit un style, un algorithme ou une structure spécifique. Par exemple, « Triez cette liste en utilisant une méthode de tri spécifique » ou « Gérez les erreurs de cette manière spécifique ».
  2. Les instructions de « Taille » (Contrôle de l'échelle) :
    • Analogie : « Écrivez une phrase qui fait exactement 10 mots », ou « Écrivez un paragraphe qui fait exactement 3 phrases ».
    • L'IA doit générer du code qui respecte une limite de taille stricte, comme exactement 5 lignes de code, ni plus, ni moins.

Ce Qu'Ils Ont Découvert
L'équipe a testé plus de 40 modèles d'IA différents (tant des modèles gratuits et open-source que des modèles fermés et coûteux) sur ce nouveau test. Voici ce qu'ils ont découvert :

  • Les modèles Open-Source « Trop Confiants » : Sur les anciens tests, de nombreux modèles d'IA gratuits et open-source performaient aussi bien que les modèles haut de gamme, coûteux et fermés. Cependant, sur ce nouveau test C3-Bench, ils ont énormément peiné. Il s'avère qu'ils avaient « mémorisé » les anciens tests mais ne savaient pas réellement comment suivre des instructions complexes. Ils étaient comme des étudiants qui avaient mémorisé le corrigé mais qui ne savaient pas résoudre un nouveau problème avec une variante.
  • Le Fossé : Il existe un énorme fossé entre les modèles qui peuvent simplement « faire fonctionner le code » et les modèles qui peuvent « faire fonctionner le code exactement comme vous l'avez demandé ». Même certains des modèles les plus intelligents et les plus coûteux ont eu du mal avec les instructions de « Taille » (comme écrire exactement le bon nombre de lignes).
  • La Correction : Les auteurs n'ont pas seulement pointé le problème ; ils ont construit une solution. Ils ont créé un pipeline pour générer automatiquement des milliers de nouveaux exemples d'entraînement où une IA écrit du code et suit une instruction spécifique. Ils ont utilisé ces données pour entraîner une nouvelle version de leur modèle, appelée Qwen2.5-Coder-C3.
  • Le Résultat : Ce nouveau modèle est devenu le meilleur pour suivre les instructions dans la complétion de code, battant presque tout le monde sur le nouveau test tout en restant performant sur les anciens tests.

Ce Qu'il faut Retenir
Cet article introduit une nouvelle façon de mesurer les compétences de codage de l'IA qui compte réellement pour une utilisation dans le monde réel : L'IA sait-elle écouter ?

Ils ont découvert que de nombreux modèles d'IA actuels sont comme des musiciens talentueux qui jouent les bonnes notes mais ignorent les changements de tempo du chef d'orchestre. En créant ce nouveau benchmark et une méthode pour entraîner les modèles à mieux écouter, les auteurs aident les développeurs à construire des outils d'IA qui ne se contentent pas d'écrire du code, mais qui écrivent le bon code selon les besoins spécifiques et détaillés de l'utilisateur. Ils ont mis toutes leurs données et leurs modèles à disposition des autres pour les utiliser et les améliorer.

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.

Essayer Digest →