Compartir a través de


Migrar a MLflow 3 desde Evaluation Agent: Guía rápida

Esta referencia rápida resume los cambios clave para migrar desde la evaluación del agente y MLflow 2 a las API mejoradas de MLflow 3. Consulte la guía completa en Migrar a MLflow 3 desde la Evaluación del Agente.

Importar actualizaciones

### Old imports ###
from mlflow import evaluate
from databricks.agents.evals import metric
from databricks.agents.evals import judges

from databricks.agents import review_app

### New imports ###
from mlflow.genai import evaluate
from mlflow.genai.scorers import scorer
from mlflow.genai import judges
# For predefined scorers:
from mlflow.genai.scorers import (
    Correctness, Guidelines, ExpectationsGuidelines,
    RelevanceToQuery, Safety, RetrievalGroundedness,
    RetrievalRelevance, RetrievalSufficiency
)

import mlflow.genai.labeling as labeling
import mlflow.genai.label_schemas as schemas

Función de evaluación

MLflow 2.x MLflow 3.x
mlflow.evaluate() mlflow.genai.evaluate()
model=my_agent predict_fn=my_agent
model_type="databricks-agent" (no es necesario)
extra_metrics=[...] scorers=[...]
evaluator_config={...} (configuración en los puntuadores)

Selección de juez

MLflow 2.x MLflow 3.x
Ejecuta automáticamente todos los algoritmos de evaluación aplicables en función de los datos Debe especificar explícitamente qué puntuadores usar
Uso evaluator_config para limitar los jueces Especifique los puntuadores deseados en el parámetro scorers
global_guidelines en configuración Utilice el puntuador Guidelines()
Jueces seleccionados en función de los campos de datos disponibles Controla exactamente qué puntuadores se ejecutan

Campos de datos

Campo MLflow 2.x Campo MLflow 3.x Descripción
request inputs Entrada del agente
response outputs Salida del agente
expected_response expectations Cierto
retrieved_context Acceso a través de seguimientos Contexto del seguimiento
guidelines Parte de la configuración del puntuador Se ha movido al nivel del puntuador

Métricas y puntuadores personalizados

MLflow 2.x MLflow 3.x Notas
@metric decorador @scorer decorador Nuevo nombre
def my_metric(request, response, ...) def my_scorer(inputs, outputs, expectations, traces) Simplificado
Varios expected_* params Parámetro único expectations que es un diccionario Consolidado
custom_expected Parte del diccionario expectations Simplificado
Parámetro request Parámetro inputs Nomenclatura coherente
Parámetro response Parámetro outputs Nomenclatura coherente

Acceso a resultados

MLflow 2.x MLflow 3.x
results.tables['eval_results'] mlflow.search_traces(run_id=results.run_id)
Acceso directo a DataFrame Iterar seguimientos y evaluaciones

Jueces de LLM

Caso de uso MLflow 2.x MLflow 3.x Recomendado
Comprobación de corrección básica judges.correctness() en @metric Correctness() puntuador o judges.is_correct() juez
Evaluación de seguridad judges.safety() en @metric Safety() puntuador o judges.is_safe() juez
Directrices globales judges.guideline_adherence() Guidelines() puntuador o judges.meets_guidelines() juez
Directrices por fila de conjunto de evaluación judges.guideline_adherence() con expected_* ExpectationsGuidelines() puntuador o judges.meets_guidelines() juez
Comprobación de la compatibilidad fáctica judges.groundedness() judges.is_grounded() o RetrievalGroundedness() puntuador
Comprobación de la relevancia del contexto judges.relevance_to_query() judges.is_context_relevant() o RelevanceToQuery() puntuador
Comprobación de la relevancia de los fragmentos de contexto judges.chunk_relevance() judges.is_context_relevant() o RetrievalRelevance() puntuador
Comprobación de la integridad del contexto judges.context_sufficiency() judges.is_context_sufficient() o RetrievalSufficiency() puntuador
Lógica personalizada compleja Llamadas directas del juez en @metric Puntuadores predefinidos o @scorer con llamadas de juez

Comentarios humanos

MLflow 2.x MLflow 3.x
databricks.agents.review_app mlflow.genai.labeling
databricks.agents.datasets mlflow.genai.datasets
review_app.label_schemas.* mlflow.genai.label_schemas.*
app.create_labeling_session() labeling.create_labeling_session()

Comandos comunes de migración

# Find old evaluate calls
grep -r "mlflow.evaluate" . --include="*.py"

# Find old metric decorators
grep -r "@metric" . --include="*.py"

# Find old data fields
grep -r '"request":\|"response":\|"expected_response":' . --include="*.py"

# Find old imports
grep -r "databricks.agents" . --include="*.py"

Recursos adicionales

Para obtener soporte técnico adicional durante la migración, consulte la documentación de MLflow o póngase en contacto con el equipo de soporte técnico de Databricks.