LLM-as-a-Judge
iaDéfinition
LLM-as-a-Judge (LLM comme juge) est la methodologie d'evaluation qui utilise un LLM puissant (typiquement GPT-4o ou Claude 3.5 Sonnet) pour noter la qualite des reponses d'un modele cible, remplacant ou complementant les annotations humaines couteuses. Zheng et al. (LMSYS, 2023) ont popularise cette approche avec MT-Bench, montrant que GPT-4 comme juge correlait bien avec les preferences humaines. Les modes d'evaluation LLM-as-a-Judge : (1) Absolute scoring — le juge attribue un score de 1 a 10 avec justification pour chaque reponse, (2) Pairwise comparison — le juge compare deux reponses (A vs B) et choisit la meilleure, (3) Reference-guided — le juge compare la reponse du modele a une reponse de reference ideale, (4) Criteria-specific — le juge evalue selon des criteres explicites (exactitude, coherence, securite, style). Les biais connus du LLM-as-a-Judge : (1) Biais de position — les juges LLM preferent souvent la premiere reponse dans les comparaisons par paires (contrebalancer en inversant A/B), (2) Biais de longueur — preference pour les reponses plus longues meme si elles ne sont pas meilleures, (3) Biais de style — preference pour un certain style d'ecriture (structure avec puces, etc.), (4) Self-enhancement bias — GPT-4 prefere les reponses stylisees comme GPT-4. Les bonnes pratiques pour reduire les biais : prompts de jugement tres structures avec des rubriques explicites, demander la justification avant le score (chain-of-thought judging), utiliser plusieurs juges LLM differents et aggreger, comparer A vs B et B vs A et moyenner les resultats. L'utilisation en production : LLM-as-a-Judge est maintenant integre dans de nombreux frameworks d'evaluation (Eleuther Eval Harness, Promptfoo, DeepEval). Il permet d'evaluer des milliers de cas en quelques heures au lieu de semaines avec des annotateurs humains, facilitant l'iteration rapide sur les prompts et les modeles. Le cout est typiquement $1-10 pour evaluer 1000 paires sur GPT-4o-mini.
Prompt LLM-as-a-Judge (pairwise)
JUDGE_PROMPT = """
Tu es un evaluateur expert. Compare les deux reponses ci-dessous a la question donnee.
Criteres : exactitude factuelle, utilite, exhaustivite, clarte.
Question : {question}
Reponse A : {response_a}
Reponse B : {response_b}
Raisonne etape par etape, puis indique ton verdict:
[[A]] si A est meilleure, [[B]] si B est meilleure, [[TIE]] si equivalentes.
"""
# Implementer avec GPT-4o-mini ou claude-3-5-haiku
def judge(question, response_a, response_b):
prompt = JUDGE_PROMPT.format(question=question, response_a=response_a, response_b=response_b)
result_ab = llm.invoke(prompt)
# Contrebalancer le biais de position
result_ba = llm.invoke(JUDGE_PROMPT.format(question=question, response_a=response_b, response_b=response_a))
return aggregate_judgments(result_ab, result_ba)
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés. 2.1.7
Un projet cybersécurité ?
Expert dispo · Réponse 24h