Udostępnij przez


Migrowanie do platformy MLflow 3 z wersji ewaluacyjnej agenta: szybka dokumentacja

Ta szybka referencja zawiera podsumowanie kluczowych zmian dotyczących migracji z oceny agenta i MLflow 2 do ulepszonych interfejsów API w MLflow 3. Zapoznaj się z pełnym przewodnikiem w temacie Migrate to MLflow 3 from Agent Evaluation (Migrowanie do platformy MLflow 3 z wersji ewaluacyjnej agenta).

Importowanie aktualizacji

### 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

Funkcja evaluation

MLflow 2.x MLflow 3.x
mlflow.evaluate() mlflow.genai.evaluate()
model=my_agent predict_fn=my_agent
model_type="databricks-agent" (nie jest to wymagane)
extra_metrics=[...] scorers=[...]
evaluator_config={...} (konfiguracja w ocenach)

Wybór sędziego

MLflow 2.x MLflow 3.x
Automatycznie uruchamia wszystkich odpowiednich sędziów na podstawie danych Należy jawnie określić, które elementy oceniające mają być używane
Użyj evaluator_config , aby ograniczyć sędziów Przekazywanie żądanych wyników w parametrze scorers
global_guidelines w konfiguracji Korzystanie z Guidelines() scorer
Sędziowie wybrani na podstawie dostępnych pól danych Kontrolujesz dokładnie, które algorytmy są uruchamiane

Pola danych

Pole MLflow 2.x Pole MLflow 3.x Opis
request inputs Dane wejściowe agenta
response outputs Dane wyjściowe agenta
expected_response expectations Prawda naziemna
retrieved_context Dostęp poprzez ślady Kontekst ze śladu
guidelines Część konfiguracji programu scorer Przeniesiono do poziomu scorer

Metryki niestandardowe i osoby oceniające

MLflow 2.x MLflow 3.x Notatki
dekorator @metric dekorator @scorer Nowa nazwa
def my_metric(request, response, ...) def my_scorer(inputs, outputs, expectations, traces) Uproszczone
Wiele parametrów expected_* Pojedynczy expectations parametr, który jest słownikiem Skonsolidowany
custom_expected Część dyktowania expectations Uproszczone
parametr request parametr inputs Spójne nazewnictwo
parametr response parametr outputs Spójne nazewnictwo

Dostęp do wyników

MLflow 2.x MLflow 3.x
results.tables['eval_results'] mlflow.search_traces(run_id=results.run_id)
Bezpośredni dostęp do ramki danych Iterowanie śladów i ocen

Sędziowie LLM

Przypadek użycia MLflow 2.x Zalecane środowisko MLflow 3.x
Podstawowe sprawdzanie poprawności judges.correctness() w @metric Correctness() punktujący lub judges.is_correct() sędzia
Ocena bezpieczeństwa judges.safety() w @metric Safety() punktujący lub judges.is_safe() sędzia
Wytyczne globalne judges.guideline_adherence() Guidelines() punktujący lub judges.meets_guidelines() sędzia
Wskazówki dla każdego wiersza w zestawie oceny judges.guideline_adherence() z expected_* ExpectationsGuidelines() punktujący lub judges.meets_guidelines() sędzia
Sprawdzanie pod kątem wsparcia faktycznego judges.groundedness() judges.is_grounded() lub RetrievalGroundedness() strzelec
Sprawdzanie istotności kontekstu judges.relevance_to_query() judges.is_context_relevant() lub RelevanceToQuery() strzelec
Sprawdzanie istotności fragmentów kontekstu judges.chunk_relevance() judges.is_context_relevant() lub RetrievalRelevance() strzelec
Sprawdzanie kompletności kontekstu judges.context_sufficiency() judges.is_context_sufficient() lub RetrievalSufficiency() strzelec
Złożona logika niestandardowa Bezpośrednie wezwania sędziego w @metric Wstępnie zdefiniowane osoby przyznające punkty lub @scorer z decyzjami sędziów

Opinie użytkowników

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()

Typowe polecenia migracji

# 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"

Dodatkowe zasoby

Aby uzyskać dodatkową pomoc techniczną podczas migracji, zapoznaj się z dokumentacją platformy MLflow lub skontaktuj się z zespołem pomocy technicznej usługi Databricks.