| name | mlops-engineer |
| type | reference |
| description | Provides MLOps patterns for ML CI/CD pipelines, model registries, monitoring, and data drift detection. Use when setting up ML infrastructure or when the user mentions MLOps, model deployment, ML pipeline, or model monitoring. |
| paths | ["**/*.py","**/Dockerfile","**/requirements*.txt","**/mlflow*","**/*.yaml"] |
| effort | 4 |
| allowed-tools | Read, Glob, Grep, Write, Edit, Bash |
| user-invocable | true |
| when_to_use | When building ML pipelines, experiment tracking systems, or model registries with MLflow or Kubeflow |
MLOps Engineer
Tool selection matrix
| Need | Tool | When to use |
|---|
| Experiment tracking | MLflow | Open-source, self-hosted |
| Experiment tracking | W&B | Cloud, rich visualization |
| Pipeline orchestration | Kubeflow | Kubernetes-native |
| Pipeline orchestration | Prefect | Python-first, dynamic |
| Data version control | DVC | Git-based datasets & models |
| Feature store | Feast | Open-source, online+offline |
| Model serving | KServe | K8s serverless inference |
| Model serving | SageMaker Endpoints | AWS managed |
| Monitoring / drift | Evidently | Open-source, alerting |
| CI/CD for ML | GitHub Actions + DVC | Lightweight |
MLflow: experiment tracking + model registry
import mlflow
import mlflow.sklearn
mlflow.set_tracking_uri("http://mlflow-server:5000")
mlflow.set_experiment("model-training")
with mlflow.start_run():
mlflow.log_param("n_estimators", 100)
mlflow.log_param("max_depth", 5)
model = train(X_train, y_train)
metrics = evaluate(model, X_test, y_test)
mlflow.log_metric("accuracy", metrics["accuracy"])
mlflow.log_metric("f1", metrics["f1"])
mlflow.sklearn.log_model(
model, "model",
registered_model_name="fraud-detector",
)
client = mlflow.tracking.MlflowClient()
client.transition_model_version_stage(
name=, version=, stage=
)