Évaluateurs basés sur le code
Les évaluateurs basés sur le code sont des fonctions Python que vous créez. Utilisez-les lorsque les juges LLM intégrés et les juges LLM personnalisés ne correspondent pas à vos besoins d'évaluation. Par exemple, les évaluateurs basés sur le code vous permettent de :
- Définissez une métrique d'évaluation heuristique ou programmatique personnalisée.
- Personnalisez la manière dont les données de trace sont mappées à un juge LLM intégré Databricks.
- Utilisez votre propre LLM (au lieu d'un juge LLM hébergé par Databricks) pour l'évaluation.
- Autres cas d'utilisation où vous avez besoin de plus de flexibilité et de contrôle que ce qui est fourni par les juges LLM personnalisés.
Vous pouvez utiliser le même évaluateur basé sur le code pour l'évaluation en développement et le monitoring en production.
Choisir un style de définition
MLflow prend en charge deux manières de définir un évaluateur basé sur le code :
Approche | Quand utiliser | Monitoring de la production |
|---|---|---|
| La plupart des cas. Point de départ recommandé. | Pris en charge (lorsqu'il est défini et enregistré à partir d'un Notebook Databricks). |
| Vous avez besoin d’évaluateurs avec état, d’une initialisation complexe ou de champs Pydantic. | Non pris en charge. |
:::note Compatibilité avec le monitoring de production
Le monitoring en production prend en charge les juges LLM intégrés et les fonctions décorées @scorer. Les sous-classes Scorer basées sur des classes ne sont pas prises en charge pour le monitoring en production. Si vous avez besoin d'évaluateurs avec état en production, utilisez le décorateur @scorer et gérez l'état à l'intérieur du corps de la fonction.
@scorerLes fonctions décorées utilisées dans le monitoring de production doivent être définies et enregistrées à partir d'un Notebook Databricks . Le service de monitoring sérialise le code de fonction pour l'exécution à distance, et cette sérialisation requiert l'environnement de Notebook. Pour plus de détails, consultez Utiliser des fonctions d'évaluateur personnalisées.
:::
Ressources supplémentaires
-
Développer des évaluateurs basés sur du code — Parcourez le workflow de développement des évaluateurs basés sur du code.
-
Exemples d'évaluateurs basés sur le code — Exemples concrets couvrant les schémas courants d'évaluateurs basés sur le code.
-
Évaluer les applications GenAI pendant le développement — Comprendre comment
mlflow.genai.evaluate()utilise vos scorers. -
Surveillez les applications GenAI en production — Déployez des évaluateurs pour un monitoring continu.
-
Référence du scoreur basé sur le code — Référence pour
@scoreretScorer, y compris les signatures, les entrées, les sorties, la dénomination des métriques, la gestion des erreurs et l'accès aux secrets.