MLflow Tracking: Managing Experiments and Model Versions
Who this is for:
Architecture / Concept Overview: MLflow Tracking: Managing Experiments and Model Versions
MLflow's tracking server records every run, while the Unity Catalog model registry manages versioned model lifecycles.
%%{init: {"theme":"base","themeVariables":{"background":"#0B0E14","primaryTextColor":"#E0E6ED","lineColor":"#5D6470","darkMode":true,"primaryColor":"#2E4A4A","secondaryColor":"#374151","secondaryTextColor":"#E0E6ED","tertiaryColor":"#111827","tertiaryTextColor":"#E0E6ED","edgeLabelBackground":"#1f2937"}}}%%
flowchart LR
classDef source fill:#3F4B59,stroke:#9CA3AF,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef ingestion fill:#5A4B36,stroke:#C9A86B,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef processing fill:#535072,stroke:#8E82B4,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef storage fill:#2E4A4A,stroke:#5FAFA8,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef serving fill:#3D5550,stroke:#6BB7AA,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef governance fill:#5A3F52,stroke:#C28BB0,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
CODE[Training Code] -->|Log| RUN[MLflow Run]
RUN -->|Store| EXP[Experiment]
RUN -->|Save| ART[Artifacts - Model Files]
EXP -->|Compare| UI[MLflow UI]
ART -->|Register| REG[Model Registry - UC]
REG -->|Alias| CHAMP[Champion / Challenger]
CHAMP -->|Deploy| SERVE[Serving Endpoint]
CODE:::source
RUN:::ingestion
EXP:::processing
ART:::storage
UI:::source
REG:::governance
CHAMP:::serving
SERVE:::serving
*MLflow data flow: training code logs runs to experiments, models are registered in Unity Catalog, and promoted via aliases to serving.*
%%{init: {"theme":"base","themeVariables":{"background":"#0B0E14","primaryTextColor":"#E0E6ED","lineColor":"#5D6470","darkMode":true,"primaryColor":"#2E4A4A","secondaryColor":"#374151","secondaryTextColor":"#E0E6ED","tertiaryColor":"#111827","tertiaryTextColor":"#E0E6ED","edgeLabelBackground":"#1f2937"}}}%%
graph TD
classDef source fill:#3F4B59,stroke:#9CA3AF,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef ingestion fill:#5A4B36,stroke:#C9A86B,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef processing fill:#535072,stroke:#8E82B4,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef storage fill:#2E4A4A,stroke:#5FAFA8,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef serving fill:#3D5550,stroke:#6BB7AA,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
classDef governance fill:#5A3F52,stroke:#C28BB0,stroke-width:2px,rx:8,ry:8,color:#E0E6ED
RUN_OBJ[MLflow Run] --> PARAMS[Parameters]
RUN_OBJ --> METRICS[Metrics]
RUN_OBJ --> TAGS[Tags]
RUN_OBJ --> ARTIFACTS[Artifacts]
ARTIFACTS --> MODEL_FILES[Model Files]
ARTIFACTS --> PLOTS[Plots / Images]
ARTIFACTS --> DATA_SNAP[Data Snapshots]
RUN_OBJ:::governance
PARAMS:::source
METRICS:::processing
TAGS:::ingestion
ARTIFACTS:::storage
MODEL_FILES:::serving
PLOTS:::serving
DATA_SNAP:::serving
*Anatomy of an MLflow Run: parameters, metrics, tags, and artifacts.*
Key Terms
Prerequisites and Setup
- Databricks Runtime for ML (MLflow is pre-installed).
- Unity Catalog enabled for model registry.
CREATE MODELprivilege on the target catalog and schema.
Step-by-Step Implementation
Configuration Reference
| Parameter | Default | Description |
|---|---|---|
experiment_path | user folder | Path for the MLflow experiment |
registry_uri | workspace | Set to databricks-uc for Unity Catalog |
log_input_examples | false | Autolog input examples with the model |
log_model_signatures | true | Autolog model input/output signatures |
autolog(exclusive) | false | If true, only autolog the specified framework |