Aller au contenu
Cercle IA Tech · Évaluation Un site du réseau Cercle IA Tech

Guide

Métriques LLM : exactitude, fidélité, pertinence

Exactitude, fidélité, pertinence, cohérence, ROUGE : ce que mesure chaque métrique d'un LLM, comment Ragas et DeepEval la calculent.

Mis à jour le

Trois métriques couvrent l'essentiel de l'évaluation d'une application d'IA rédigée : l'exactitude (la réponse est-elle juste par rapport à la référence ?), la fidélité (s'appuie-t-elle sur les documents fournis, sans rien ajouter ?) et la pertinence (répond-elle à la question posée ?). On y ajoute selon l'usage la cohérence, le format, le temps de réponse et le coût. Voici comment les bibliothèques les plus utilisées les définissent, d'après leur documentation.

Le tableau d'ensemble

Métrique Question posée Besoin d'une référence Calcul
Exactitude la réponse dit-elle la même chose que la référence ? oui modèle juge
Fidélité chaque affirmation est-elle étayée par le contexte fourni ? non (il faut le contexte) modèle juge
Pertinence la réponse traite-t-elle la question ? non modèle juge et plongements
Correspondance exacte la sortie est-elle identique à la réponse attendue ? oui code
Recouvrement (ROUGE, BLEU) combien de mots ou de suites de mots en commun ? oui code
Cohérence des questions proches reçoivent-elles des réponses proches ? non plongements
Format, délai, coût JSON valide ? délai et coût sous le seuil ? non code

Exactitude

Ragas la nomme Factual Correctness. Un modèle découpe la réponse et la référence en affirmations, puis une inférence en langage naturel compare les deux listes. On compte les affirmations de la réponse présentes dans la référence (vrais positifs), celles qui n'y sont pas (faux positifs) et celles de la référence oubliées par la réponse (faux négatifs). On en tire une précision, un rappel et leur moyenne harmonique (F1), qui est le mode par défaut. Score de 0 à 1.

Deux réglages changent beaucoup le résultat : atomicity (découpe-t-on finement chaque phrase ?) et coverage (garde-t-on tous les détails ou seulement les points principaux ?). L'exemple de la documentation : la réponse « La tour Eiffel est à Paris », comparée à une référence qui ajoute sa hauteur, obtient 0,67 en mode F1 et 1,0 en mode précision. Autrement dit : rien de faux, mais une information manquante.

Dans DeepEval, l'exactitude s'écrit le plus souvent avec G-Eval : vous décrivez le critère (« la sortie est-elle juste au regard de la sortie attendue ? ») et un modèle juge note. Voir DeepEval.

Fidélité

La Faithfulness de Ragas divise le nombre d'affirmations de la réponse étayées par le contexte récupéré par le nombre total d'affirmations. Score de 0 à 1. L'exemple de la documentation : le contexte dit qu'Einstein est né le 14/03/1879 en Allemagne ; la réponse « né en Allemagne le 20/03/1879 » contient une affirmation étayée sur deux et obtient 0,5.

La fidélité ne demande pas de réponse de référence, ce qui la rend utilisable en production. Mais elle ne voit pas si le document lui-même est faux ou périmé. DeepEval propose une métrique du même nom, ainsi qu'une métrique « Hallucination ».

Pertinence

La Response Relevancy de Ragas part d'une idée simple : si la réponse traite bien la question, on doit pouvoir retrouver la question à partir de la réponse. Un modèle génère trois questions par défaut (paramètre strictness) à partir de la réponse, puis on calcule la similarité cosinus entre les plongements (représentations numériques du sens) de ces questions et celui de la question d'origine, et l'on fait la moyenne.

La documentation est nette : cette métrique ne mesure pas l'exactitude. Une réponse fausse mais dans le sujet obtient un bon score.

Les métriques calculées par code

Elles ne demandent aucun modèle juge et donnent le même résultat à chaque passage.

  • Correspondance exacte : utile pour une classification ou une réponse courte. Anthropic donne l'exemple d'une analyse de sentiment comparée à une étiquette, après normalisation (minuscules, espaces retirés).
  • ROUGE-L : longueur de la plus longue suite de mots commune avec la référence ; Anthropic l'utilise pour un résumé. Ces mesures récompensent les mêmes mots, pas le même sens.
  • Cohérence : Anthropic propose de poser des questions paraphrasées et de mesurer la similarité cosinus entre les réponses.
  • Format, délai et coût : promptfoo propose des assertions is-json, latency et cost, entre autres.

Choisir ses métriques

  1. Partez de vos critères de succès, pas de la liste d'une bibliothèque : la page des métriques de Ragas en liste une trentaine, réparties entre RAG, agents, comparaison de textes, SQL et critères généraux.
  2. Une métrique par critère suffit. Trois métriques suivies valent mieux que quinze qu'on ne lit pas.
  3. Combinez toujours une mesure de justesse (exactitude ou fidélité) avec une mesure de pertinence.
  4. Vérifiez chaque métrique fondée sur un modèle contre quelques relectures humaines : ses résultats dépendent du modèle juge.

Pour un assistant qui cherche dans vos documents, les métriques de récupération (précision et rappel du contexte) s'ajoutent à celles-ci : elles sont détaillées sur évaluer un RAG.

Questions fréquentes

Quelle différence entre exactitude et fidélité ?

L'exactitude compare la réponse à une réponse de référence : est-elle juste ? La fidélité compare la réponse aux documents fournis au modèle : chaque affirmation y est-elle étayée ? Une réponse peut être fidèle à un document périmé et donc inexacte.

La pertinence de la réponse vérifie-t-elle qu'elle est juste ?

Non. Dans Ragas, la pertinence mesure si la réponse traite la question posée, pas si son contenu est vrai. Il faut la combiner avec une mesure d'exactitude ou de fidélité.

Sources

Pages consultées pour écrire cet article :

  1. https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/
  2. https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/factual_correctness/
  3. https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/faithfulness/
  4. https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/answer_relevance/
  5. https://github.com/confident-ai/deepeval
  6. https://platform.claude.com/docs/en/test-and-evaluate/develop-tests
  7. https://www.promptfoo.dev/docs/configuration/expected-outputs/

À lire aussi