Mesurer la même chose pour tous
Trois modèles de 7 milliards de paramètres, servis localement par Ollama sur des GPU Kaggle : LLaMA 2 (Meta), Mistral (Mistral AI) et DeepSeek-R1 distillé dans Qwen, orienté raisonnement. Chaque réponse brute est enregistrée avec la réponse extraite, puis les métriques sont recalculées à partir de ces fichiers : les résultats se vérifient sans relancer les modèles.
| Épreuve | Tâche | Protocole |
|---|---|---|
| GSM8K | problèmes de maths de niveau collège, 500 questions | 8-shot, extraction de la réponse numérique finale |
| HellaSwag | choisir la fin la plus logique parmi 4, 500 questions | 0-shot, le modèle renvoie un indice |
| HumanEval | compléter une fonction Python, 164 problèmes | 0-shot, code exécuté dans un processus isolé contre les tests unitaires (pass@1) |
Aucun modèle ne gagne partout
DeepSeek-R1 domine le code avec 128 problèmes résolus sur 164. Mistral est le plus fort en sens commun et offre le meilleur compromis entre précision et temps de réponse. LLaMA 2 reste loin derrière sur les trois épreuves.
03 · Sous le scoreCe qu'un pourcentage cache
Sur GSM8K, DeepSeek-R1 obtient 47,6 %. Mais son raisonnement est si long qu'il n'a produit une réponse exploitable que pour 258 questions sur 500 ; parmi elles, 92 % sont justes. Le score mélange donc deux choses très différentes : la qualité du raisonnement, excellente, et la capacité à conclure dans le format attendu, médiocre. Le tout pour un temps d'inférence environ 100 fois plus élevé que celui des deux autres modèles.
Les erreurs de code racontent la même histoire. En relisant les messages d'erreur de chaque échec :
| Modèle | Échecs | Erreur la plus fréquente |
|---|---|---|
| DeepSeek-R1 | 36 | NameError (27), dont 22 où la fonction demandée est absente du code rendu |
| Mistral | 112 | AssertionError (76) : le code tourne mais donne un mauvais résultat ; 17 IndentationError |
| LLaMA 2 | 149 | AssertionError (90), puis NameError (33), dont 20 fois List utilisé sans import |