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.
Auf dieser Seite wird gezeigt, wie Instrumentierte GenAI-Anwendungen auf Databricks bereitgestellt werden, damit Produktionsablaufverfolgungen automatisch erfasst werden.
Ablaufverfolgungen werden bei einem MLflow-Experiment für die Echtzeitanzeige protokolliert. Speichern Sie sie optional mithilfe von Delta-Tabellen für den langfristigen Speicher. Siehe Bereitstellen einer ablaufverfolgungsbasierten App zum Vergleichen der Bereitstellungs- und Ablaufverfolgungsprotokollierungsoptionen.
Informationen zu Apps, die außerhalb von Databricks bereitgestellt werden, finden Sie unter Trace-Agents, die außerhalb von Databricks bereitgestellt werden.
Bereitstellen mit Agent Framework (empfohlen)
Wenn Sie GenAI-Anwendungen über Mosaik AI Agent Framework bereitstellen, funktioniert die MLflow-Ablaufverfolgung automatisch ohne zusätzliche Konfiguration. Ablaufverfolgungen werden im MLflow-Experiment des Agents gespeichert.
Schritte für die Bereitstellung
Richten Sie zunächst die Speicherorte für Ablaufverfolgungen ein:
- Wenn Sie beabsichtigen, die Produktionsüberwachung zum Speichern von Ablaufverfolgungen in Delta-Tabellen zu verwenden, stellen Sie sicher, dass sie für Ihren Arbeitsbereich aktiviert ist.
- Erstellen Sie ein MLflow-Experiment zum Speichern der Produktionsablaufverfolgungen Ihrer App.
Instrumentieren Sie als Nächstes in Ihrem Python-Notizbuch Ihren Agent mit der MLflow-Ablaufverfolgung, und verwenden Sie Agent Framework, um Ihren Agent bereitzustellen:
- Installieren Sie
mlflow[databricks]sie in Ihrer Python-Umgebung. Verwenden Sie die neueste Version. - Stellen Sie eine Verbindung mit dem MLflow Experiment her.
mlflow.set_experiment(...) - Umschließen Sie den Code Ihres Agents mithilfe der Erstellungsschnittstellen des Agent-Frameworks. Aktivieren Sie im Agentcode die MLflow-Ablaufverfolgung mithilfe der automatischen oder manuellen Instrumentierung.
- Protokollieren Sie Ihren Agent als MLflow-Modell, und registrieren Sie ihn im Unity-Katalog.
- Stellen Sie sicher, dass sich
mlflowdie Python-Abhängigkeiten des Modells befinden, wobei die gleiche Paketversion in Ihrer Notizbuchumgebung verwendet wird. - Wird
agents.deploy(...)verwendet, um das Unity Catalog-Modell (Agent) auf einem Model Serving-Endpunkt bereitzustellen.
Hinweis
Wenn Sie einen Agent aus einem Notizbuch bereitstellen, das in einem Git-Ordner "Databricks" gespeichert ist, funktioniert die Ablaufverfolgung von MLflow 3 in Echtzeit nicht standardmäßig.
Um die Echtzeitablaufverfolgung zu aktivieren, setzen Sie das Experiment auf eines, das nicht mit Git verbunden ist, indem Sie mlflow.set_experiment() vor dem Ausführen von agents.deploy() verwenden.
Ablaufverfolgungen von Ihrem Agent werden jetzt im MLflow-Experiment in Echtzeit angezeigt.
Beispielnotizbuch
Dieses Notizbuch veranschaulicht die vorstehenden Bereitstellungsschritte.
Agent Framework- und MLflow-Ablaufverfolgungsnotizbuch
Bereitstellen mit benutzerdefinierter CPU-Bereitstellung (Alternative)
Wenn Sie agent Framework nicht verwenden können, stellen Sie ihren Agent stattdessen mit benutzerdefiniertem CPU Model Serving bereit.
Richten Sie zunächst die Speicherorte für Ablaufverfolgungen ein:
- Wenn Sie beabsichtigen, die Produktionsüberwachung zum Speichern von Ablaufverfolgungen in Delta-Tabellen zu verwenden, stellen Sie sicher, dass sie für Ihren Arbeitsbereich aktiviert ist.
- Erstellen Sie ein MLflow-Experiment zum Speichern der Produktionsablaufverfolgungen Ihrer App.
Instrumentieren Sie als Nächstes in Ihrem Python-Notizbuch Ihren Agent mit der MLflow-Ablaufverfolgung, und verwenden Sie die Model Serving UI oder APIs, um Ihren Agent bereitzustellen:
- Protokollieren Sie Ihren Agent als MLflow-Modell mit automatischer oder manueller Tracing-Instrumentierung.
- Stellen Sie das Modell für die CPU-Bereitstellung bereit.
- Bereitstellen eines Dienstprinzipals oder eines persönlichen Zugriffstokens (PAT) mit
CAN_EDITZugriff auf das MLflow-Experiment. - Wechseln Sie auf der Seite "CPU-Dienstendpunkt" zu "Endpunkt bearbeiten". Fügen Sie für jedes bereitgestellte Modell zur Ablaufverfolgung die folgenden Umgebungsvariablen hinzu:
ENABLE_MLFLOW_TRACING=trueMLFLOW_EXPERIMENT_ID=<ID of the experiment you created>- Wenn Sie einen Dienstprinzipal bereitgestellt haben, legen Sie
DATABRICKS_CLIENT_IDfest undDATABRICKS_CLIENT_SECRET. Wenn Sie einen PAT bereitgestellt haben, legenDATABRICKS_HOSTSie undDATABRICKS_TOKEN.
Anzeigen von Produktionsablaufverfolgungen
Anzeigen von Produktionsablaufverfolgungen in der MLflow Experiments-Benutzeroberfläche. Produktionsablaufverfolgungen zeigen:
- Benutzerabfragen und Agentantworten
- Feedback (Daumen nach oben/unten, Kommentare)
- Fehlerraten und Fehlermuster
- Latenz- und Leistungsmetriken
- Tokenverbrauch
Protokollieren von Ablaufverfolgungen in Delta-Tabellen
Protokollieren Sie optional Ablaufverfolgungen zusätzlich in Delta-Tabellen zu Ihrem MLflow-Experiment.
- Produktionsüberwachungstabellen (empfohlen): Der Auftrag zum Synchronisieren von Spuren mit einer Delta-Tabelle wird alle ca. 15 Minuten ausgeführt. Sie müssen keine Überwachungsmetriken aktivieren, damit dies funktioniert. Ablaufverfolgungen haben keine Größenbeschränkungen.
- AI Gateway-fähige Ableitungstabellen: Aktivieren Sie die AI-Gatewayeinstellungen auf der Seite "Modellbereitstellungsendpunkt". Beachten Sie die Einschränkungen bei Ablaufverfolgungsgrößen und Verzögerungen bei der Synchronisierung von Ablaufverfolgungen mit Tabellen.
Begrenzungen
Die Protokollierung von Ablaufverfolgungen an MLflow-Experimenten und Produktionsüberwachungstabellen umfasst Grenzwerte für die Anzahl von Ablaufverfolgungen und Spitzenlasten. Wenn Sie mehr als 100K-Ablaufverfolgungen pro Experiment speichern müssen oder eine Spitzenlast von > 60 Abfragen pro Sekunde (QPS) haben, verwenden Sie dieses Formular , um eine Erhöhung anzufordern.
Nächste Schritte
- Kontext zu Traces hinzufügen – Metadaten anfügen für Anforderungsnachverfolgung, Benutzersitzungen und Umgebungsdaten.
- Nachverfolgen der Tokennutzung – Überwachen der Tokennutzung für die Kostennachverfolgung.
- Produktionsüberwachung – Automatische Auswertung von Traces mit Scorern.