Diese Kurzübersicht fasst wichtige Änderungen für die Migration von Agent Evaluation und MLflow 2 zu den verbesserten APIs in MLflow 3 zusammen.
Sehen Sie die vollständige Führungslinie unter Migrieren zu MLflow 3 von Agent-Auswertung.
Importieren von Updates
### 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
Auswertungsfunktion
| MLflow 2.x |
MLflow 3.x |
mlflow.evaluate() |
mlflow.genai.evaluate() |
model=my_agent |
predict_fn=my_agent |
model_type="databricks-agent" |
(nicht erforderlich) |
extra_metrics=[...] |
scorers=[...] |
evaluator_config={...} |
(Konfiguration in Scorern) |
Auswahl des Richters
| MLflow 2.x |
MLflow 3.x |
| Führt automatisch alle geltenden Richter basierend auf Daten aus |
Muss explizit angeben, welche Scorer verwendet werden sollen |
Verwenden Sie evaluator_config, um Richter einzuschränken |
Geben Sie die gewünschten Scorer im scorers-Parameter an |
global_guidelines in Konfiguration |
Nutzung des „Guidelines()“-Scorer-R-Skripts |
| Basierend auf verfügbaren Datenfeldern ausgewählte Richter |
Sie haben die Kontrolle darüber, welche Scorer genau ausgeführt werden |
Datenfelder
| MLflow 2.x Feld |
MLflow 3.x Feld |
BESCHREIBUNG |
request |
inputs |
Agent-Eingabe |
response |
outputs |
Agent-Ausgabe |
expected_response |
expectations |
Grundwahrheit |
retrieved_context |
Zugreifen auf mit Ablaufverfolgung ausführen |
Kontext aus Ablauf verfolgen |
guidelines |
Teil der Scorer-Konfiguration |
Verschoben auf Scorer-Ebene |
Benutzerdefinierte Metriken und Scorer
| MLflow 2.x |
MLflow 3.x |
Hinweise |
@metric Dekorateur |
@scorer Dekorateur |
Neuer Name |
def my_metric(request, response, ...) |
def my_scorer(inputs, outputs, expectations, traces) |
Vereinfacht |
| Mehrere expected_* params |
Einfacher expectations Parameter, der ein Diktat ist |
Konsolidiert |
custom_expected |
Teil des expectations Diktats |
Vereinfacht |
request Parameter |
inputs Parameter |
Einheitliche Benennung |
response Parameter |
outputs Parameter |
Einheitliche Benennung |
Ergebniszugriff
| MLflow 2.x |
MLflow 3.x |
results.tables['eval_results'] |
mlflow.search_traces(run_id=results.run_id) |
| Direkter DataFrame-Zugriff |
Durchlaufen der Abläufe und Bewertungen |
LLM-Richter
| Anwendungsfall |
MLflow 2.x |
MLflow 3.x empfohlen |
| Grundlegende Korrektheitsprüfung |
judges.correctness() in @metric |
Correctness() Scorer oder judges.is_correct() Richter |
| Sicherheitsbewertung |
judges.safety() in @metric |
Safety() Scorer oder judges.is_safe() Richter |
| Globale Richtlinien |
judges.guideline_adherence() |
Guidelines() Scorer oder judges.meets_guidelines() Richter |
| Richtlinien für die Zeilenbewertung pro Sammlung |
judges.guideline_adherence() mit expected_* |
ExpectationsGuidelines() Scorer oder judges.meets_guidelines() Richter |
| Prüfen Sie die Faktensupport. |
judges.groundedness() |
judges.is_grounded() oder RetrievalGroundedness() Scorer-R-Skript |
| Überprüfen der Relevanz des Kontexts |
judges.relevance_to_query() |
judges.is_context_relevant() oder RelevanceToQuery() Scorer-R-Skript |
| Überprüfen der Relevanz von Kontextblöcken |
judges.chunk_relevance() |
judges.is_context_relevant() oder RetrievalRelevance() Scorer-R-Skript |
| Überprüfen der Vollständigkeit des Kontexts |
judges.context_sufficiency() |
judges.is_context_sufficient() oder RetrievalSufficiency() Scorer-R-Skript |
| Komplexe benutzerdefinierte Logik |
Direkt Anrufe des Richters @metric |
Vordefinierte Scorer oder @scorer mit Richteraufrufen |
Menschliches Feedback
| 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() |
Allgemeine Migrationsbefehle
# 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"
Weitere Ressourcen
Weitere Unterstützung während der Migration finden Sie in der MLflow-Dokumentation oder wenden Sie sich an Ihr Databricks-Supportteam.