DeepEval-Lab · Journal d'expérimentation

Peut-on remplacer GPT-4 par un juge de 3 milliards de paramètres ?

DeepEval évalue les LLM avec un modèle juge — GPT-4 par défaut, API payante, données chez un tiers. J'ai branché un Llama-3.2-3B local à la place, sur mon CPU, et documenté chaque itération. Trois runs. Trois modes de défaillance caractérisés. Une recommandation d'architecture.

Fiable sur critères GEval simples Défaillant sur métriques multi-étapes

La matrice des verdicts

Sept tests, trois runs, configuration figée à temperature=0. Chaque cellule est un verdict — et la lecture par ligne raconte toute l'expérience.

TestRun 1Run 2Run 3Lecture
Professionnalisme · GEvalPASSPASSPASSstable ×3
Non-fabrication · GEvalPASSPASSPASSstable ×3
Relevancy SLAPASSPASSPASSstable ×3
Faithfulness mdpCRASHCRASHPASSinfra v2 efficace
Concision · GEval0.206 phr.9 phr.juge indulgent ×2
Relevancy FAQ0.000.200.00input halluciné
Faithfulness SLA0.000.000.00biais contexte ×3
Verdict fiable Défaillance du juge ou du chatbot Incident d'outillage

Ce que la matrice montre : les trois lignes vertes sont stables sur trois runs — le juge 3B tient sur des critères qualitatifs simples. Les trois lignes rouges échouent différemment à chaque fois — et c'est là que l'expérience devient intéressante.

Trois runs, trois enseignements

Chaque run part d'hypothèses écrites à l'avance, puis les confronte aux résultats.

Le juge détecte un vrai bug… et en invente deux autres

11 min 54 s · 3 passed / 4 failed · juge v1

Le juge repère à raison une réponse trop verbeuse du chatbot (score 0.20 — vraie détection). Mais sur Relevancy, il produit un raisonnement auto-contradictoire, et sur Faithfulness, il invente une contradiction absente de la réponse. Un crash JSON complète le tableau : le juge renvoie une liste là où le schéma attend un objet.

Métriques multi-étapes : la complexité du raisonnement demandé au juge — pas la qualité du chatbot — est le facteur limitant.

Même configuration, verdicts différents

10 min 31 s · 3 passed / 4 failed · config identique au Run 1

Run involontairement précieux : le patch v2 n'était pas appliqué, ce qui en fait une mesure de reproductibilité pure. Résultat : le GEval Concision qui bloquait au Run 1 laisse passer la même violation au Run 2 — seul le garde-fou déterministe (comptage de phrases) la rattrape. Relevancy passe de 0.00 à 0.20 sans aucun changement.

Le juge 3B n'est pas reproductible malgré temperature=0. Un LLM-as-Judge ne peut pas être l'unique barrière de qualité.

L'infra réparée isole le vrai coupable

9 min 00 s · 4 passed / 3 failed · coercition de schéma + 12 tests unitaires

La coercition liste→objet élimine le crash : la catégorie « infra » est soldée, tout échec résiduel est imputable au chatbot ou au juge. Et le juge livre sa plus belle défaillance : il évalue la réponse contre une question… qu'il a inventée.

Corriger l'outillage n'améliore pas le raisonnement : le parsing était un symptôme, pas la cause.
Bonus contre-intuitif : passer le chatbot de 200 à 300 tokens a aggravé sa verbosité (6 → 9 phrases). La troncature masquait le bug de fond.

Exemples

Les raisons produites par le juge, extraites des logs. Elles valent mieux qu'un long discours.

run-3 · AnswerRelevancy · score 0.00
Question posée : « Comment réinitialiser mon mot de passe ? »
Réponse du chatbot : guide correct en 4 étapes
Raison du juge : "all the irrelevant statements are completely unrelated to the input about laptop features"

Le juge a halluciné la question elle-même. Personne n'a parlé d'ordinateur portable — il a évalué la réponse contre un input inventé.

runs 1 & 3 · Faithfulness · score 0.00
Raison du juge : "contradicts itself by stating that standard tickets are resolved under 48 hours"
Réalité : les 48 heures figurent uniquement dans le contexte — jamais dans la réponse.

Biais systématique de confusion contexte/sortie — même erreur, formulation quasi identique, à deux runs d'écart. Ce n'est pas du bruit : c'est un mode de défaillance reproductible.

runs 2 & 3 · GEval Concision · verdict "concis"
Règle métier : 3 phrases maximum
Réponses jugées « concises » : 6 puis 9 phrases de marketing, faits inventés inclus
Détection : garde-fou déterministe (comptage de phrases) — deux fois sur deux

Le garde-fou structurel a rattrapé le juge deux fois. L'argument le plus concret en faveur de l'architecture hybride.

Verdict & architecture recommandée

Ce qu'un juge local 3B peut faire, ne peut pas faire, et comment l'utiliser quand même.

Utilisable

GEval sur critères qualitatifs simples

Professionnalisme, non-fabrication : 6/6 verdicts stables sur trois runs. Un juge local suffit — gratuit, souverain, hors-ligne.

À proscrire seul

Métriques multi-étapes

Relevancy, Faithfulness : variance à température zéro, input halluciné, biais contexte/sortie. Prévoir un juge de plus grande capacité.

Obligatoire

Garde-fous déterministes

Comptage, présence de faits, formats : ils ont rattrapé le juge deux fois. Aucun LLM-as-Judge ne doit être la seule barrière.