Skillshub tracking-model-versions
git clone https://github.com/ComeOnOliver/skillshub
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/jeremylongshore/claude-code-plugins-plus-skills/tracking-model-versions" ~/.claude/skills/comeonoliver-skillshub-tracking-model-versions-2acf29 && rm -rf "$T"
skills/jeremylongshore/claude-code-plugins-plus-skills/tracking-model-versions/SKILL.mdModel Versioning Tracker
Overview
Track and manage AI/ML model versions using MLflow, DVC, or Weights & Biases. Log model metadata (hyperparameters, training data hash, framework version), record evaluation metrics (accuracy, F1, latency), manage model registry transitions (Staging, Production, Archived), and generate model cards documenting lineage and performance.
Prerequisites
- MLflow tracking server running locally or remotely (
or managed MLflow)mlflow server - Python 3.9+ with
,mlflow
, and the relevant ML framework installedpandas - Model artifacts accessible on the local filesystem or cloud storage (S3, GCS)
- Write access to the MLflow tracking URI and artifact store
Instructions
- Connect to the MLflow tracking server by setting
and verify connectivity withMLFLOW_TRACKING_URI
.mlflow experiments list - Create or select an MLflow experiment for the model project using
.mlflow experiments create --experiment-name <name> - Log a new model version: start an MLflow run, log parameters (learning rate, epochs, batch size), log metrics (accuracy, loss, F1 score), and log the model artifact with
.mlflow.<flavor>.log_model() - Register the model in the MLflow Model Registry using
with the run URI and a descriptive model name.mlflow.register_model() - Transition the model version through stages:
->None
->Staging
usingProduction
. Archive previous production versions.client.transition_model_version_stage() - Compare model versions by querying metrics across runs with
and generating comparison tables showing metric improvements between versions.mlflow.search_runs() - Generate a model card from the registered model metadata, including training data description, evaluation metrics, intended use, limitations, and ethical considerations. See
.${CLAUDE_SKILL_DIR}/assets/model_card_template.md - Set up automated alerts for model performance degradation by comparing production metrics against baseline thresholds stored in the model registry.
See
${CLAUDE_SKILL_DIR}/assets/example_mlflow_workflow.yaml for a complete workflow configuration.
Examples
Tracking a new image classification model version: Log a ResNet-50 fine-tuned on a custom dataset. Record hyperparameters (lr=0.001, epochs=50, optimizer=Adam), metrics (val_accuracy=0.94, val_loss=0.18, inference_latency_ms=12), and the serialized model artifact. Register as version 3 in the model registry and transition to Staging for validation.
Comparing model versions before production promotion: Query MLflow for all versions of the sentiment-analysis model. Generate a comparison table showing accuracy improved from 0.87 (v2) to 0.91 (v3) while inference latency increased from 8ms to 15ms. Recommend promoting v3 to Production only if latency is acceptable for the use case.
Generating a model card for compliance review: Extract metadata from MLflow model registry version 5: training dataset (100K customer reviews), evaluation results (F1=0.89 on held-out test set), known limitations (struggles with sarcasm and multilingual input), and intended use (customer feedback classification). Output a structured Markdown model card.
Output
- MLflow run with logged parameters, metrics, and model artifact
- Model registry entry with version number and stage assignment
- Version comparison table with metric deltas across runs
- Model card in Markdown format documenting lineage, performance, and limitations
Error Handling
| Error | Cause | Solution |
|---|---|---|
| MLflow connection refused | Tracking server not running or wrong URI | Verify is correct; start server with |
| Artifact upload failed | Insufficient permissions on artifact store | Check S3/GCS bucket permissions; verify IAM role has write access to the artifact path |
| Model registration conflict | Model name already exists with incompatible schema | Use a versioned model name or delete the conflicting registry entry |
| Metrics not logged | MLflow run ended before logging completed | Ensure all calls happen within the active run context () |
| Stage transition denied | Model version already in target stage | Archive the existing version in that stage first, then retry the transition |
Resources
- MLflow documentation: https://mlflow.org/docs/latest/index.html
- MLflow Model Registry: https://mlflow.org/docs/latest/model-registry.html
- DVC (Data Version Control): https://dvc.org/doc
- Weights & Biases Model Registry: https://docs.wandb.ai/guides/model-registry
- ML Model Cards: https://modelcards.withgoogle.com/about