SWE-bench & co. : bien lire les benchmarks d'agents
SWE-bench, SWE-bench Verified, Terminal-Bench : ce que ces benchmarks d'agents testent concrètement, comment leurs chiffres sont produits – et où sont leurs limites.
Ce que mesure SWE-bench
SWE-bench est un test pour agents de codage IA, basé sur de vrais problèmes GitHub déjà résolus. Pour chaque tâche, l'agent reçoit une description réelle de bug issue d'un projet open source, plus le code correspondant – et doit écrire une solution adaptée. Des tests automatiques issus du projet lui-même vérifient si la solution est correcte, aucun humain n'évalue à la main.
Pourquoi SWE-bench Verified est né
Les tâches originales de SWE-bench avaient des faiblesses : certaines descriptions de bug étaient trop imprécises pour deviner la solution sans ambiguïté, certains tests trop stricts ou injustes. OpenAI a donc, avec les créateurs·rices de SWE-bench, sélectionné 500 tâches particulièrement vérifiées, chacune contrôlée à la main par de vrais développeurs·euses – SWE-bench Verified est aujourd'hui considéré comme la variante la plus fiable.
Terminal-Bench : la ligne de commande comme terrain de test
Terminal-Bench teste quelque chose de similaire, mais de façon plus large : un agent peut-il résoudre de manière autonome des tâches directement dans le terminal – compiler du code, mettre en place un serveur, entraîner un modèle ? Ici aussi, seul compte le fait que la tâche fonctionne réellement à la fin.
Ce que ces chiffres NE montrent PAS
Un pourcentage élevé vaut pour exactement ce type de tâches – pas automatiquement pour ton propre projet. Le chapitre « Lire les benchmarks sans se faire avoir » approfondit la façon d'interpréter les chiffres de benchmark en général.
EXEMPLE
Lire une entrée de classement : « Modèle X – 75,6 % sur SWE-bench Verified ». Concrètement, ça signifie : sur 500 tâches réelles de correction de bug GitHub, vérifiées à la main, issues de douze projets Python connus, le modèle a réussi les tests automatiques du projet concerné pour environ 378 d'entre elles – pas 75,6 % de toutes les tâches de programmation imaginables.
🛠️ EXERCICE — À TOI DE JOUER
Analyse de façon critique une entrée actuelle du classement SWE-bench Verified ou Terminal-Bench, au lieu de la lire juste comme un classement.
- Ouvre https://www.swebench.com/ ou https://www.tbench.ai/ et choisis un modèle bien classé.
- Découvre de combien de tâches, et de quel type, se compose le benchmark concerné.
- Réfléchis concrètement : quelles caractéristiques de ton propre projet (langage, taille, ancienneté du code) n'apparaissent pas dans le benchmark ?
- Formule une phrase sur ce que le pourcentage indique vraiment – et ce qu'il n'indique pas.
✅ AUTO-VÉRIFICATION
- ☐ Peux-tu expliquer d'où viennent les tâches de SWE-bench et comment elles sont évaluées automatiquement ?
- ☐ Sais-tu pourquoi SWE-bench Verified est considéré comme plus fiable que le jeu de données original ?
- ☐ As-tu identifié une différence concrète entre les tâches du benchmark et ton propre projet ?
QUIZ RAPIDE
Qu'est-ce qui distingue SWE-bench Verified du jeu de données SWE-bench original ?
SOURCES
- SWE-bench: offizielle Seite ↗ www.swebench.com
- OpenAI: Introducing SWE-bench Verified ↗ openai.com
- Terminal-Bench: offizielle Seite ↗ www.tbench.ai
- SWE-bench: FAQ ↗ www.swebench.com