Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Fügen Sie MLflow-Experimente als Databricks-Apps-Ressourcen hinzu, um die Experimentnachverfolgung für Ihre KI-Anwendungen, Agents, LLMs und ML-Modelle zu ermöglichen. MLflow-Experimente bieten eine strukturierte Möglichkeit zum Organisieren und Protokollieren von Ausführungen, Nachverfolgen von Parametern, Metriken und Artefakten während des gesamten Lebenszyklus der KI-Anwendungsentwicklung.
Wenn Sie ein MLflow-Experiment als Ressource hinzufügen, kann Ihre App:
- Debuggen von Agents und LLM-Anwendungen mit Ausführungsspuren
- Bewerten Sie die Qualität von Agenten- und LLM-Anwendungen mit Bewertungstools
- Verwalten und Versionierung von Aufforderungsvorlagen für LLM-Anwendungen
- Protokollieren Sie ML-Modell-Trainingsläufe mit Parametern, Metriken und Artefakten.
- Abrufen von Experimentdaten, Metadaten und Ausführungsverlauf
Hinzufügen einer MLflow-Experimentressource
Bevor Sie ein MLflow-Experiment als Ressource hinzufügen, überprüfen Sie die Voraussetzungen für die App-Ressource.
- Klicken Sie im Abschnitt "App-Ressourcen " beim Erstellen oder Bearbeiten einer App auf +Ressource>MLflow-Experiment hinzufügen.
- Wählen Sie ein MLflow-Experiment aus der Liste der verfügbaren Experimente in Ihrem Arbeitsbereich aus.
- Wählen Sie die entsprechende Berechtigungsstufe für Ihre App aus:
- Kann lesen: Gewährt der App die Berechtigung zum Anzeigen von Experimentmetadaten, -Läufen, -Parametern und -Metriken. Wird für Apps verwendet, die Experimentergebnisse anzeigen.
- Kann bearbeiten: Gewährt der App die Berechtigung zum Ändern von Experimenteinstellungen und Metadaten.
- Kann verwalten: Gewährt der App voll administrativen Zugriff auf das Experiment.
- (Optional) Geben Sie einen benutzerdefinierten Ressourcenschlüssel an, mit dem Sie in Der App-Konfiguration auf das Experiment verweisen. Der Standardschlüssel ist
experiment.
Wenn Sie eine MLflow-Experimentressource hinzufügen:
- Azure Databricks gewährt dem Serviceprinzipal die angegebenen Berechtigungen für das ausgewählte Experiment.
- Die App kann Schulungsläufe protokollieren und über die MLflow-Tracking-API auf Experimentdaten zugreifen.
- Der Zugriff ist nur auf das ausgewählte Experiment beschränkt. Ihre App kann nicht auf andere Experimente zugreifen, es sei denn, Sie fügen sie als separate Ressourcen hinzu.
Note
Eine MLflow-Experimentressource gewährt Berechtigungen auf Arbeitsflächenebene für das Experiment. Wenn das Experiment Traces im Unity-Katalog speichert, fügen Sie die vier Unity-Catalog-Trace-Tabellen als App-Ressourcen hinzu. Der Zugriff auf Traces in diesen Tabellen wird durch Unity-Katalog-Rechte geregelt, nicht durch Experiment-Berechtigungen.
Umgebungsvariablen
Wenn Sie eine App mit einer MLflow-Experimentressource bereitstellen, macht Azure Databricks die Experiment-ID über Umgebungsvariablen verfügbar, auf die Sie mithilfe des Felds valueFrom in Ihrer konfiguration app.yaml verweisen können.
Beispielkonfiguration:
env:
- name: MLFLOW_EXPERIMENT_ID
valueFrom: experiment # Use your custom resource key if different
Verwenden der Experiment-ID in Ihrer Anwendung:
import os
import mlflow
# Access the experiment using the injected environment variable
experiment_id = os.getenv("MLFLOW_EXPERIMENT_ID")
# Set the experiment for tracking
mlflow.set_experiment(experiment_id=experiment_id)
# Log parameters and metrics
with mlflow.start_run():
mlflow.log_param("learning_rate", 0.01)
mlflow.log_metric("accuracy", 0.95)
mlflow.log_artifact("model.pkl")
Weitere Informationen finden Sie unter Zugriff auf Umgebungsvariablen von Ressourcen.
MLflow-Traces in Unity Catalog speichern
Um MLflow-Traces von einer App in den Unity Catalog zu schreiben, erstellen Sie zunächst ein Experiment mit einem Unity Catalog Trace-Standort. Geben Sie ein Tabellenpräfix an, sodass die Namen der vier Spurtabellen vorhersehbar sind.
Füge das Experiment mit Erlaubnis CAN_EDIT zur App hinzu. Fügen Sie dann jede der folgenden Unity-Katalogtabellen als separate App-Ressource mit MODIFY Berechtigung hinzu:
<table_prefix>_otel_annotations<table_prefix>_otel_logs<table_prefix>_otel_metrics<table_prefix>_otel_spans
Die Berechtigung MODIFY gewährt dem Dienstprinzipal der App sowohl MODIFY als auch SELECT für jede Tabelle. Die Databricks Apps gewährt außerdem automatisch USE CATALOG und USE SCHEMA für den übergeordneten Katalog und das Schema.
Das folgende Beispiel zu Deklarativen Automatisierungsbündeln konfiguriert das Experiment und seine vier Spurtabellen als App-Ressourcen:
resources:
apps:
my_app:
name: 'my-app'
source_code_path: ./app
resources:
- name: 'experiment'
experiment:
experiment_id: '<experiment-id>'
permission: 'CAN_EDIT'
- name: 'trace-annotations'
uc_securable:
securable_full_name: '<catalog>.<schema>.<table_prefix>_otel_annotations'
securable_type: 'TABLE'
permission: 'MODIFY'
- name: 'trace-logs'
uc_securable:
securable_full_name: '<catalog>.<schema>.<table_prefix>_otel_logs'
securable_type: 'TABLE'
permission: 'MODIFY'
- name: 'trace-metrics'
uc_securable:
securable_full_name: '<catalog>.<schema>.<table_prefix>_otel_metrics'
securable_type: 'TABLE'
permission: 'MODIFY'
- name: 'trace-spans'
uc_securable:
securable_full_name: '<catalog>.<schema>.<table_prefix>_otel_spans'
securable_type: 'TABLE'
permission: 'MODIFY'
Informationen zu allen Anforderungen für Tracing in Unity Catalog, einschließlich der zum Erstellen und Verwalten der Tabellen erforderlichen Berechtigungen, finden Sie unter OpenTelemetry-Traces in Unity Catalog speichern.
Entfernen einer MLflow Experiment-Ressource
Wenn Sie eine MLflow Experiment-Ressource aus einer App entfernen, verliert der Dienstprinzipal der App den Zugriff auf das Experiment. Das Experiment selbst bleibt unverändert und ist weiterhin für andere Benutzer und Anwendungen verfügbar, die über entsprechende Berechtigungen verfügen.
Bewährte Methoden
Befolgen Sie die folgenden bewährten Methoden, wenn Sie mit MLflow-Experimentressourcen arbeiten:
- Organisieren Sie Experimente logisch nach Projekt- oder Modelltyp, um die Auffindbarkeit zu verbessern.
- Verwenden Sie in Ihrer gesamten Organisation einheitliche Namenskonventionen für Ausführungen und Parameter.
- Erwägen Sie die Experimentieraufbewahrungsrichtlinien und die Speicherverwaltung für lange laufende Projekte.