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.
Die MLflow-Ablaufverfolgung ist ein leistungsstarkes Feature, das End-to-End-Observability für KI-Anwendungen der Generation bietet, einschließlich komplexer agentbasierter Systeme. Sie zeichnet Eingaben, Ausgaben, Zwischenschritte und Metadaten auf, um Ihnen ein vollständiges Bild davon zu geben, wie sich Ihre App verhält.
Die Ablaufverfolgung ermöglicht es Ihnen:
- Debuggen und Verstehen Ihrer Anwendung
- Überwachen der Leistung und Optimieren von Kosten
- Bewerten und Verbessern der Anwendungsqualität
- Sicherstellen von Auditierbarkeit und Konformität
- Integration der Ablaufverfolgung in viele beliebte Drittanbieter-Frameworks
Möchten Sie mit der Ablaufverfolgung beginnen?
Sehen Sie sich die Schnelleinstiege an, um praktische Erfahrungen zu sammeln.
Lokale IDE: Schnellstart zur Ablaufverfolgung | Databricks-Notizbuch: Schnellstart zur Ablaufverfolgung |
---|
So einfach ist es, mit der MLflow-Ablaufverfolgung in nur wenigen Codezeilen zu beginnen.
mlflow.openai.autolog()
automatisches Nachverfolgen jedes OpenAI-Aufrufs in Ihrer Anwendung – es sind keine weiteren Codeänderungen erforderlich:
import mlflow
import openai
import os # Added for environment variable configuration
# Configure Databricks Authentication (if running outside Databricks)
# If running in a Databricks notebook, these are not needed.
# os.environ["DATABRICKS_HOST"] = "https://your-workspace.databricks.com"
# os.environ["DATABRICKS_TOKEN"] = "your-databricks-token"
# Configure OpenAI API Key (replace with your actual key)
# os.environ["OPENAI_API_KEY"] = "your-api-key-here"
# Enable automatic tracing for OpenAI - that's it!
mlflow.openai.autolog()
# Set up MLflow tracking
mlflow.set_tracking_uri("databricks")
mlflow.set_experiment("/Shared/my-genai-app")
# Your existing OpenAI code works without any changes
client = openai.OpenAI()
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Explain MLflow Tracing"}],
max_tokens=100
)
# Traces are automatically captured and logged to MLflow!
Tipp
Wenn Sie ein Databricks-Notizbuch ausführen, sind die Aufrufe von mlflow.set_tracking_uri("databricks")
und mlflow.set_experiment()
nicht erforderlich – MLflow wird automatisch für Sie konfiguriert.
Debuggen und Verstehen Ihrer Anwendung
Die MLflow-Ablaufverfolgung bietet tiefe Einblicke in das Verhalten Ihrer Anwendung, wodurch ein vollständiges Debugging in verschiedenen Umgebungen ermöglicht wird. Indem Sie den vollständigen Anforderungsantwortzyklus (Input/Output Tracking) und den Ausführungsfluss erfassen, können Sie die Logik und den Entscheidungsprozess Ihrer Anwendung visualisieren und verstehen.
Das Untersuchen der Eingaben, Ausgaben und Metadaten für jeden Zwischenschritt (z. B. Abruf, Toolaufrufe, LLM-Interaktionen) und zugehöriges Benutzerfeedback oder die Ergebnisse von Qualitätsbewertungen ermöglichen Folgendes:
- In der Entwicklung: Erhalten Sie detaillierte Einblicke in das, was unter den Abstraktionen von GenAI-Bibliotheken geschieht, und helfen Ihnen dabei, genau zu erkennen, wo Probleme oder unerwartete Verhaltensweisen auftreten.
- In der Produktion: Überwachen und Debuggen von Problemen in Echtzeit. Ablaufverfolgungen erfassen Fehler und können betriebstechnische Metriken wie Latenz bei jedem Schritt enthalten, wodurch die schnelle Diagnose unterstützt wird.
Die MLflow-Ablaufverfolgung bietet eine einheitliche Erfahrung zwischen Entwicklung und Produktion: Sie instrumentieren Ihre Anwendung einmal, und die Ablaufverfolgung funktioniert in beiden Umgebungen konsistent. Auf diese Weise können Sie nahtlos in Ihrer bevorzugten Umgebung mit Traces navigieren – sei es in Ihrer IDE, Ihrem Notebook oder Ihrem Produktionsüberwachung-Dashboard. Das vereinfacht den Prozess, zwischen mehreren Tools zu wechseln oder überladene Protokolle durchsuchen zu müssen.
Überwachen der Leistung und Optimieren von Kosten
Das Verständnis und die Optimierung der Leistung und der Kosten Ihrer GenAI-Anwendungen sind von entscheidender Bedeutung. Mit der MLflow-Ablaufverfolgung können Sie wichtige betriebstechnische Metriken wie Latenz, Kosten (z. B. Tokenverwendung) und Ressourcenauslastung in jedem Schritt der Ausführung Ihrer Anwendung erfassen und überwachen.
Dies ermöglicht Folgendes:
- Verfolgen und Identifizieren von Leistungsengpässen in komplexen Pipelines.
- Überwachen Sie die Ressourcenauslastung, um einen effizienten Betrieb sicherzustellen.
- Optimieren Sie die Kosteneffizienz, indem Sie verstehen, wo Ressourcen oder Token verbraucht werden.
- Identifizieren Sie Bereiche zur Leistungsverbesserung in Code- oder Modellinteraktionen.
Darüber hinaus ist die MLflow-Ablaufverfolgung mit OpenTelemetry kompatibel, einer industriestandardbasierten Spezifikation für Beobachtbarkeit. Diese Kompatibilität ermöglicht es Ihnen, Ihre Ablaufverfolgungsdaten in verschiedene Dienste Ihres vorhandenen Überwachungs-Stacks zu exportieren. Siehe Exportieren von Daten in andere Dienste für weitere Einzelheiten.
Bewerten und Verbessern der Anwendungsqualität
Die systematische Bewertung und Verbesserung der Qualität Ihrer GenAI-Anwendungen ist eine zentrale Herausforderung. Die MLflow-Ablaufverfolgung hilft Ihnen, Benutzerfeedback und die Ergebnisse von Qualitätsbewertungen (von LLM-Richtern oder benutzerdefinierten Metriken) direkt an Ihre Ablaufverfolgungen anzufügen und nachzuverfolgen.
Dies ermöglicht eine umfassende Qualitätsbewertung im gesamten Lebenszyklus Ihrer Anwendung:
- Während der Entwicklung: Bewerten Sie Protokolle mit Hilfe von menschlichen Prüfern oder LLM-Richtern, um Folgendes zu tun:
- Messen Sie Genauigkeit, Relevanz und andere Qualitätsaspekte.
- Verfolgen Sie Qualitätsverbesserungen, während Sie Eingabeaufforderungen, Modelle oder Abrufstrategien durchlaufen.
- Identifizieren Sie Muster in Qualitätsproblemen (z. B. bestimmte Arten von Abfragen, die zu schlechten Antworten führen).
- Nehmen Sie datengesteuerte Verbesserungen an Ihrer Anwendung vor.
-
In der Produktion: Überwachen und Bewerten der Qualität in Echtzeit, indem Sie:
- Nachverfolgen von Qualitätsmetriken (abgeleitet von Benutzerfeedback- und Auswertungsergebnissen) über Bereitstellungen hinweg.
- Identifizieren plötzlicher Qualitätsbeeinträchtigungen oder Regressionen.
- Auslösen von Warnungen für kritische Qualitätsprobleme.
- Unterstützung bei der Aufrechterhaltung von Service Level Agreements (SLAs).
Ablaufverfolgungen von Auswertungsläufen und Produktionsüberwachungen können untersucht werden, um Ursachen von Qualitätsproblemen zu identifizieren, z. B. unzureichend abgerufene Dokumente in einem RAG-System oder beeinträchtigte Leistung eines bestimmten Modells. Durch Traces können Sie diese Probleme im Detail analysieren und schnell iterieren.
Darüber hinaus sind Spuren für den Aufbau qualitativ hochwertiger Auswertungsdatensätze von unschätzbarem Wert. Indem Sie echte Benutzerinteraktionen und deren Ergebnisse erfassen, können Sie:
- Zusammenstellen repräsentativer Testfälle basierend auf tatsächlichen Nutzungsmustern.
- Erstellen Sie umfassende Evaluierungssätze, die verschiedene Szenarien abdecken.
- Verwenden Sie diese Daten, um Modelle zu optimieren oder Abrufmechanismen zu verbessern.
In Kombination mit MLflow LLM Evaluation bietet MLflow eine nahtlose Erfahrung zur Bewertung und Verbesserung der Qualität Ihrer Anwendung.
Sicherstellen von Auditierbarkeit und Konformität
Mit der MLflow-Ablaufverfolgung können Sie jede Ausführung Ihrer Anwendung erfassen und einen detaillierten Überwachungspfad erstellen, der angibt, wie jede Ausgabe generiert wurde. Dies ist für die Aufrechterhaltung von Transparenz, Rechenschaftspflicht und Compliance in Ihren GenAI-Anwendungen unerlässlich.
Mit vollständiger Sichtbarkeit des Ausführungsflusses – einschließlich aller Eingaben, Ausgaben, Zwischenschritte und Parameter – haben Sie folgende Möglichkeiten:
- Nachverfolgen und Überprüfen der Ursprünge aller Ausgaben.
- Stellen Sie Nachweise für Complianceanforderungen bereit.
- Aktivieren Sie eine gründliche Post-hoc-Analyse des Verhaltens Ihrer Anwendung für bestimmte Anforderungen.
- Untersuchen Sie vergangene Spuren, um historische Probleme zu lösen.
Diese umfassende Protokollierung stellt sicher, dass Sie über die erforderlichen Datensätze für interne Audits oder externe behördliche Anforderungen verfügen.
Umfassende Frameworkunterstützung und Erweiterbarkeit
Die MLflow-Ablaufverfolgung ist so konzipiert, dass sie mit minimaler Reibung in Ihren vorhandenen GenAI-Entwicklungsworkflow passt. Es integriert sich sofort mit über 20 beliebten GenAI-Bibliotheken und Frameworks, einschließlich OpenAI, LangChain, LlamaIndex, DSPy, Anthropic und mehr. Für viele dieser Elemente kann die Ablaufverfolgung mit einer einzigen Codezeile (z. B mlflow.openai.autolog()
. ) aktiviert werden.
Im Abschnitt "Automatische Ablaufverfolgung " und auf der Seite "Integrationen " finden Sie die vollständige Liste der unterstützten Bibliotheken und deren Verwendung.
Diese umfassende Unterstützung bedeutet, dass Sie die Observability ohne erhebliche Codeänderungen erhalten können, indem Sie die Tools einsetzen, die Sie bereits im Einsatz haben. Für benutzerdefinierte Komponenten oder nicht unterstützte Bibliotheken bietet MLflow auch leistungsstarke manuelle Ablaufverfolgungs-APIs.
Empfehlungen für die MLflow-Versionsverwaltung
Während Protokollierungsfunktionen in MLflow 2.15.0+ verfügbar sind, wird dringend empfohlen, MLflow 3 zu installieren (insbesondere Version 3.1 oder neuer, wenn mlflow[databricks]
verwendet wird), um die modernsten KI-Funktionen zu nutzen.
Berücksichtigen Sie für Produktionsumgebungen, die nur die Ablaufverfolgung (Tracing) benötigen, das mlflow-tracing
Paket. Verwenden Sie mlflow[databricks]>=3.1
für die Entwicklung und das Experimentieren mit Databricks.
Nächste Schritte
Fahren Sie mit diesen empfohlenen Aktionen und Lernprogrammen fort.
- Instrumentieren Sie Ihre App – Wählen Sie zwischen automatischen und manuellen Ablaufverfolgungsansätzen
- Debuggen und Beobachten Ihrer App – Lernen Sie, Ablaufverfolgungen zum Debuggen und Überwachen zu verwenden
- Ablaufverfolgungen verwenden, um die Qualität zu verbessern – Evaluationsdatensätze erstellen und Verbesserungsmöglichkeiten identifizieren
Referenzhandbücher
In dieser Anleitung finden Sie ausführliche Dokumentation zu Konzepten und Features.
- Ablaufverfolgungskonzepte – Grundlegendes zur MLflow-Ablaufverfolgung
- Ablaufverfolgungsdatenmodell – Erfahren Sie mehr über Ablaufverfolgungen, Spans und Attribute
- Abfrageablaufverfolgungen – Programmgesteuerten Zugriff auf Ablaufverfolgungsdaten erkunden