RAGAS évaluateurs
RAGAS (évaluation de la génération augmentée de récupération) est un cadre d'évaluation pour les applications LLM. MLflow s’intègre à RAGAS afin que vous puissiez utiliser les métriques RAGAS comme évaluateurs pour l’évaluation de la qualité de la récupération, la génération de réponses, le comportement des agents et la similarité des textes.
Exigences
Installez le package ragas :
%pip install ragas
Quick start
Pour appeler un évaluateur RAGAS directement :
from mlflow.genai.scorers.ragas import Faithfulness
scorer = Faithfulness(model="databricks:/databricks-gpt-5-mini")
feedback = scorer(trace=trace)
print(feedback.value) # Score between 0.0 and 1.0
print(feedback.rationale) # Explanation of the score
Pour appeler les évaluateurs RAGAS à l'aide de mlflow.genai.evaluate():
import mlflow
from mlflow.genai.scorers.ragas import Faithfulness, ContextPrecision
traces = mlflow.search_traces()
results = mlflow.genai.evaluate(
data=traces,
scorers=[
Faithfulness(model="databricks:/databricks-gpt-5-mini"),
ContextPrecision(model="databricks:/databricks-gpt-5-mini"),
],
)
Évaluateurs RAGAS disponibles
Métriques RAG
Ces évaluateurs mesurent la qualité de la récupération et la génération de réponses dans les applications de génération augmentée de récupération (RAG).
Évaluateur | Qu'est-ce que cela évalue ? | Documentation RAGAS |
|---|---|---|
Les documents pertinents récupérés sont-ils classés plus haut que les documents non pertinents ? | ||
Quelle est l'efficacité de l'utilisation du contexte récupéré dans la réponse ? | ||
Version non-LLM de la précision du contexte utilisant des réponses de référence. | ||
Le contexte de récupération contient-il toutes les informations nécessaires pour répondre à la query ? | ||
Variante non-LLM du rappel de contexte utilisant des réponses de référence. | ||
Les entités de la réponse attendue sont-elles présentes dans le contexte récupéré ? | ||
Dans quelle mesure le modèle est-il sensible aux informations non pertinentes dans le contexte ? | ||
Dans quelle mesure la réponse générée est-elle pertinente par rapport à la query d'entrée ? | ||
La sortie est-elle factuellement conforme au contexte de récupération ? | ||
Quelle est la précision de la réponse par rapport à la vérité terrain ? | ||
Dans quelle mesure le contexte récupéré est-il pertinent par rapport à la requête d'entrée ? | ||
La réponse est-elle basée sur le contexte fourni ? |
Métriques d'utilisation de l'agent et des outils
Ces évaluateurs évaluent le comportement des agents IA, y compris la précision de l'invocation des outils et la réalisation des objectifs.
Évaluateur | Qu'est-ce que cela évalue ? | Documentation RAGAS |
|---|---|---|
L'agent reste-t-il pertinent pendant la conversation ? | ||
Les bons outils sont-ils appelés avec les paramètres appropriés ? | ||
Score F1 pour la prédiction des appels d'outil. | ||
L'agent atteint-il son objectif ? Comparé à une réponse de référence. | ||
L'agent atteint-il son objectif ? Évalué sans réponse de référence. |
Comparaison de langage naturel
Ces évaluateurs comparent le texte généré à la sortie attendue à l'aide de méthodes sémantiques et déterministes.
Évaluateur | Qu'est-ce que cela évalue ? | Documentation RAGAS |
|---|---|---|
La sortie est-elle factuellement correcte par rapport à la réponse attendue ? | ||
Similitude sémantique entre la sortie et la réponse attendue. | ||
Similitude de chaînes entre la sortie et la réponse attendue. | ||
Score BLEU pour la comparaison de texte. | ||
Score CHRF pour la comparaison de texte. | ||
ROUGE score pour la comparaison de texte. | ||
Une chaîne spécifique est-elle présente dans la sortie ? | ||
La sortie correspond-elle exactement à la sortie attendue ? |
Usage général
Ces évaluateurs fournissent une logique d'évaluation flexible et personnalisable.
Évaluateur | Qu'est-ce que cela évalue ? | Documentation RAGAS |
|---|---|---|
Évalue les aspects spécifiques de la sortie à l'aide d'un LLM. | ||
Métrique discrète personnalisée avec une logique de scoring flexible. | ||
Évalue les sorties selon des rubriques prédéfinies. | ||
Évalue les sorties selon des critères propres à chaque instance. |
Autres tâches
Évaluateur | Qu'est-ce que cela évalue ? | Documentation RAGAS |
|---|---|---|
Qualité de la synthétisation de texte. |
Créez un évaluateur par nom
Vous pouvez créer dynamiquement un évaluateur à l'aide de get_scorer en passant le nom de la métrique sous forme de chaîne :
from mlflow.genai.scorers.ragas import get_scorer
scorer = get_scorer(
metric_name="Faithfulness",
model="databricks:/databricks-gpt-5-mini",
)
feedback = scorer(trace=trace)
Configuration
Les évaluateurs RAGAS acceptent les parameters spécifiques aux métriques comme arguments de mots-clés du constructeur. Les métriques basées sur un LLM nécessitent un paramètre model. Les mesures non-LLM ne nécessitent pas de modèle.
from mlflow.genai.scorers.ragas import Faithfulness, ExactMatch
# LLM-based metric with model specification
scorer = Faithfulness(model="databricks:/databricks-gpt-5-mini")
# Non-LLM metric (no model required)
deterministic_scorer = ExactMatch()
Pour les parameters spécifiques aux métriques et les options d'utilisation avancées, consultez la documentation RAGAS.