← Derniers articles
🤖 AI

Beyond Pass Rate: A Multilingual, Execution-Grounded Evaluation of Open Code LLMs

Cet article présente une évaluation à grande échelle, multilingue et ancrée dans l'exécution de neuf modèles de langage de code ouverts sur plus de 2 700 problèmes LeetCode, révélant que les modèles actuels accusent un retard significatif par rapport aux performances humaines et que leurs classements ainsi que leurs modes d'échec varient considérablement selon les langages et la difficulté des problèmes, mettant ainsi en évidence les limites des classements basés sur un indicateur unique.

Auteurs originaux : Sayed Erfan Arefin

Publié 2026-06-09
📖 5 min de lecture🧠 Analyse approfondie

Auteurs originaux : Sayed Erfan Arefin

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 l'entraîneur principal d'une équipe de codage et que vous devez embaucher un nouvel assistant programmeur. La méthode standard pour interroger les candidats consiste à leur donner un seul puzzle court et à voir s'ils le résolvent. S'ils réussissent, ils obtiennent un « succès ». S'ils échouent, ils obtiennent un « échec ».

Cet article soutient que cette méthode « succès/échec » revient à juger un chef uniquement sur sa capacité à faire bouillir un œuf. Cela vous en dit très peu sur sa capacité à cuisiner un repas complexe, à manipuler des ingrédients épicés ou à garder sa cuisine propre.

Voici ce que les chercheurs ont fait, expliqué simplement :

La Grande Expérience : Les Olympiades du Codage

Au lieu d'un seul puzzle, les chercheurs ont mis en place de véritables « Olympiades du Codage ».

  • Les Compétiteurs : Ils ont invité 9 modèles d'IA en open-source (les « assistants ») à concourir.
  • L'Arène : Ils ont utilisé 2 707 problèmes de codage gratuits provenant de LeetCode (un site populaire pour la pratique du codage).
  • Les Langages : Ils n'ont pas utilisé qu'un seul langage (comme l'anglais) ; ils ont testé les IA dans 12 langages de programmation différents (comme Python, Java, C++, etc.).
  • L'Échelle : Au total, ils ont lancé plus de 325 000 tentatives. C'est comme si chaque participant essayait chaque puzzle dans chaque langage.

Les Résultats : C'est Compliqué

Les chercheurs ont découvert qu'il n'existe pas une seule « meilleure » IA. Le vainqueur dépend entièrement de ce que vous recherchez.

1. Le « Généraliste » vs Le « Spécialiste »

  • Yi-Coder-9B-Chat était le performeur moyen le plus constant. Si vous lui demandiez de résoudre un mélange aléatoire de problèmes, c'est elle qui en résolvait le plus grand nombre au total.
  • Qwen2.5-Coder-14B-Instruct était le spécialiste du « mode difficile ». Elle ne gagnait pas le plus de problèmes faciles, mais lorsque les puzzles devenaient vraiment difficiles, c'était l'IA à battre. Elle parvenait également à résoudre la plus grande variété de problèmes différents, même si elle ne réussissait pas chaque cas parfaitement.
  • Gemma-2-27B-IT était la « maniaque de la propreté ». Bien qu'elle n'ait pas résolu le plus de problèmes, le code qu'elle écrivait était le plus propre et respectait le plus de règles.

2. L'Écart avec l'Humain
Même la meilleure IA de l'étude n'a résolu qu'environ 23 % des problèmes correctement en moyenne. En comparaison, un programmeur humain en résoudrait environ 57 %. Cela signifie que les IA sont encore loin d'être assez fiables pour travailler seules ; elles sont plutôt comme des stagiaires juniors qui ont besoin de beaucoup de supervision.

3. Le Mur de l'Erreur de Compilation
Les chercheurs ont examiné pourquoi les IA échouaient. Ils ont trouvé un schéma surprenant : 63 % des échecs se sont produits avant même que le code ne soit exécuté.
Pensez à une voiture qui ne démarre pas parce que le bloc moteur est fissuré. Vous ne pouvez même pas tester si la voiture roule vite ou lentement parce qu'elle ne s'allume pas. La plupart des IA échouaient à cause d'erreurs de syntaxe de base (fautes de frappe, parenthèses manquantes) plutôt que par des erreurs de logique. Elles échouaient à « compiler » (se transformer en un programme fonctionnel) bien avant de pouvoir être testées pour leur exactitude.

4. Le Paradoxe du « Code Propre »
Voici le rebondissement : l'IA qui écrivait le code le plus propre (Gemma) n'était pas celle qui résolvait le plus de problèmes. Inversement, l'IA qui résolvait le plus de problèmes (Qwen) écrivait un code plus « désordonné » et présentait plus d'avertissements d'un outil de nettoyage de code.

  • Analogie : Imaginez deux étudiants passant un examen. L'étudiant A écrit une dissertation très soignée et parfaitement formatée, mais se trompe dans la réponse. L'étudiant B écrit une dissertation brouillonne, avec des ratures, mais donne la bonne réponse.
  • L'article montre que le « succès fonctionnel » (obtenir la bonne réponse) et la « qualité statique » (écrire un code propre) sont deux choses différentes. Vous ne pouvez pas supposer qu'un modèle qui écrit du code propre résoudra votre problème, et un modèle qui résout votre problème peut écrire du code désordonné.

5. La Question du Langage
Une IA qui est excellente pour écrire en Python peut être très mauvaise pour écrire en C++. Les classements changeaient selon le langage utilisé par l'IA. Cela prouve que vous ne pouvez pas simplement dire « Le Modèle X est le meilleur ». Vous devez dire « Le Modèle X est le meilleur pour Python, mais le Modèle Y est meilleur pour Java ».

Le Mot de la Fin

L'article conclut que nous devons arrêter de chercher un score unique pour juger les IA de codage. Tout comme vous ne jugeriez pas un médecin uniquement sur sa capacité à recoudre une plaie (en ignorant sa capacité à diagnostiquer une maladie), nous ne devrions pas juger les IA de codage uniquement par un « taux de réussite ».

Pour comprendre véritablement ces outils, nous devons examiner :

  • Quels langages elles maîtrisent bien.
  • Comment elles gèrent les problèmes difficiles.
  • Si elles échouent à cause de fautes de frappe ou de mauvaise logique.
  • Si le code qu'elles écrivent est assez propre pour être maintenu.

Les chercheurs ont construit une base de données massive et détaillée de ces résultats afin que d'autres puissent voir exactement comment et pourquoi ces modèles réussissent ou échouent, plutôt que de voir un simple chiffre sur un tableau de classement.

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 →