MLOps
Die Praxis, Machine-Learning-Modelle zuverlässig und effizient in Produktion zu bringen und zu betreiben – die Verbindung von ML, DevOps und Data Engineering.
Ein zentrales Repository zur Versionierung, Speicherung und Verwaltung von Machine-Learning-Modellen – mit Metadaten, Lineage und Deployment-Status.
Eine Model Registry ist das zentrale Verwaltungssystem für trainierte ML-Modelle in einer Organisation. Sie speichert nicht nur die Modell-Artefakte selbst, sondern auch alle Metadaten: Trainings-Parameter, Evaluierungs-Metriken, Datensatz-Versionen und Deployment-Status. Ohne Model Registry verliert man schnell den Überblick, welches Modell gerade in Produktion ist, welche Version besser war und wie man ein Modell reproduzieren kann. Eine Model Registry ist damit ein zentrales Element von Model Governance und MLOps. MLflow Model Registry und Weights & Biases sind die meistgenutzten Lösungen. Sie ermöglichen auch A/B-Tests zwischen Modellversionen und einfaches Rollback bei Problemen.
Eine Model Registry ist ein zentrales Repository für ML-Modelle. Sie speichert nicht nur die Modelle selbst, sondern auch alle wichtigen Informationen: Welche Version, welche Metriken, welche Daten wurden verwendet, wo ist es deployed?
Warum ist das wichtig?
Ohne Registry:
Mit Registry:
| Funktion | Beschreibung |
|---|---|
| Versionierung | Jedes Modell mit eindeutiger Version |
| Metadaten | Metriken, Hyperparameter, Beschreibung |
| Lineage | Verbindung zu Training-Daten und Code |
| Stages | None → Staging → Production → Archived |
| Artefakte | Modell-Dateien, Configs, Requirements |
import mlflow
# Modell registrieren
mlflow.register_model(
model_uri="runs:/abc123/model",
name="fraud-detection-model"
)
# Version zu Production promoten
client = mlflow.tracking.MlflowClient()
client.transition_model_version_stage(
name="fraud-detection-model",
version=3,
stage="Production"
)
# Modell aus Registry laden
model = mlflow.pyfunc.load_model(
model_uri="models:/fraud-detection-model/Production"
)
None → Staging → Production → Archived
↓ ↓
Testing Live Traffic
↓ ↓
Metrics Monitoring
Eine Model Registry ist wie ein Weinarchiv: Jede Flasche (Modell) ist katalogisiert mit Jahrgang (Version), Herkunft (Training-Daten), Lagerort (Deployment) und Bewertung (Metriken).
Zentrale Versionierung aller ML-Modelle mit Metadaten
Tracking von Lineage: Welche Daten, welches Training, welche Metriken
Deployment-Management: Staging, Production, Rollback
Modell-Versionierung
Alle Modellversionen mit Metriken und Artefakten speichern
Deployment-Pipeline
Modelle von Staging zu Production promoten
Audit & Compliance
Nachvollziehbarkeit für regulierte Branchen
Für Produktion: Ja. Sobald du mehr als ein Modell oder mehr als eine Version hast, wird Tracking ohne Registry chaotisch. Für Experimente und Prototypen: Optional, aber hilfreich.
Experiment Tracking dokumentiert den Trainingsprozess (Hyperparameter, Metriken, Logs). Model Registry verwaltet die fertigen Modelle (Versionen, Deployment-Status, Lineage). Oft sind beide in einer Plattform integriert.
Semantic Versioning (1.0.0) oder automatische Versionierung bei jedem Training. Wichtig: Immer Metadaten speichern (Training-Daten-Version, Hyperparameter, Metriken), damit Versionen vergleichbar sind.