MLOps
The lifecycle, Docker, CI/CD, MLflow, FastAPI/BentoML serving, monitoring, and the incident-response playbook the textbook skips.
- Chapter 01
Lifecycle
4 lessons - 01 The real ML lifecycle Train once, ship forever — that's the textbook story. The real lifecycle is a loop, and every stage has its own way of biting you.
- 02 Establishing baselines Before you train a model, train the dumbest possible model. It's a floor, a leakage detector, and the thing that most often saves you from shipping…
- 03 Data-centric AI The fastest way to improve a stuck model is almost never another hyperparameter sweep. It's fixing the 50 mislabeled rows that are dragging the sli…
- 04 Data contracts & quality Most ML failures are silent data failures. A data contract is an enforced agreement on a dataset's schema and semantics, so bad data fails the pipe…
- Chapter 02
Tooling
7 lessons - 05 MLflow experiment tracking Stop guessing which notebook produced the model in prod. MLflow is the duct tape between 'I trained a model' and 'I can reproduce, compare, and rol…
- 06 Data & model versioning Version your datasets and model artifacts the way you version code, so any run is reproducible. Why a git commit alone isn't enough, and how DVC/la…
- 07 Model registry & promotion The single source of truth for which model exists, how it was trained, and what's in production. Versioning, stage promotion, and the governance ga…
- 08 Testing ML & the ML Test Score Unit tests on your code aren't enough — ML systems need data tests, model tests, infra tests, and monitoring. Google's ML Test Score rubric, and th…
- 09 Docker for ML Works-on-my-laptop is not a deployment strategy. Docker is how you ship a Python ML service that runs the same in CI, staging, and production — and…
- 10 CI/CD with GitHub Actions One repo, two pipelines. Code CI runs on every PR. Model CD runs on a schedule, retrains, validates against baselines, and blocks the deploy if it…
- 11 Pipeline orchestration Airflow, Dagster, Prefect, or Kubeflow? The job that schedules, retries, and connects your ML pipeline steps — and how to choose the right orchestr…
- Chapter 03
Serving & Monitoring
10 lessons - 12 Serving with FastAPI A REST API for your model in 60 lines — with the four things juniors miss the first time: Pydantic validation, lifespan startup, batch endpoints, a…
- 13 BentoML & Ray Serve FastAPI is a great starting point. Past a certain scale you want automatic batching, multi-model hosting, versioned model storage, and autoscaling…
- 14 Batch vs real-time inference Most predictions don't need to be real-time. Choosing the serving pattern — batch, real-time, async, streaming — by latency SLA and volume, and the…
- 15 Deployment Strategies A new model can pass every offline test and still break in production. Deployment strategies control the blast radius when it does — canary, blue-g…
- 16 A/B testing & experimentation Deploying a model gets it live; A/B testing proves it's actually better. Hypothesis testing, primary vs guardrail metrics, sample size, and varianc…
- 17 Training-Serving Skew Why a model that scores beautifully offline dies the day it goes live. The two mechanisms — online-offline skew and point-in-time leakage — why you…
- 18 Drift & monitoring Your model isn't broken. Your data changed. Here's the difference between data drift and concept drift, how to detect each, and when 'retrain' is a…
- 19 Retraining & continual learning Drift detection is useless if nothing acts on it. Scheduled vs trigger-based retraining, the champion-challenger pattern, and how to retrain safely…
- 20 Incident response A model is misbehaving in production. Customers are noticing. Here's the playbook — rollback first, debug later — and the postmortem template that…
- 21 LLMOps — operating LLMs MLOps assumed you trained the model. With LLMs you usually didn't — so the artifact you version is the prompt, evals replace the accuracy number, a…
- Chapter 04
Platform & Infrastructure
7 lessons - 22 The cloud: AWS, Azure & GCP Three providers, three hundred service names, one mental model. What 'the cloud' actually is, the four primitives you'll touch, a Rosetta stone acr…
- 23 Kubeflow Pipelines KFP v2 turns a Python function into a containerised pipeline step with typed inputs, output artifacts, and metadata tracking. It's powerful — and i…
- 24 Kubernetes for ML Pods, Deployments, Services, GPU scheduling, and the HPA — the four primitives that explain 90% of what 'we deploy on K8s' actually means. Plus an…
- 25 Feature stores (Feast, Tecton) The online/offline skew problem in one sentence, then a runnable Feast-shaped feature pipeline. Plus the honest answer to 'do we need a feature sto…
- 26 Cost & FinOps for ML/GPUs GPU spend is now a board-level number, and MLOps owns it. Tracking cost-per-run and cost-per-inference, raising utilization, and the spot/reserved/…
- 27 Responsible-AI ops Fairness and governance aren't a one-time report — they're a pipeline. Operationalizing bias audits, model cards as living evidence, and the EU AI…
- 28 ML security (MLSecOps) ML systems have an attack surface software doesn't: poisoned data, stolen models, malicious model files, and a fragile supply chain. The threats an…
- End of section 0 / 28 complete
Make it stick — pass every quiz.
Each lesson has a short quiz at the bottom. Passing the quiz is what marks the lesson complete and counts toward your certificate.
MLOps — frequently asked questions
Straight answers to the questions people ask most about mlops.
What is MLOps, in one sentence?
MLOps is the practice of reliably deploying, monitoring, and maintaining machine-learning models in production — applying DevOps discipline (version control, CI/CD, automation, monitoring) to the messier reality of data and models that drift over time.
Why do models that work in a notebook fail in production?
Common causes are training/serving skew (production data or preprocessing differs from training), data drift over time, environment and dependency differences, and no monitoring to catch the decline. Reproducible pipelines and Docker containers close most of these gaps.
What is model drift and how do I detect it?
Drift is when the live data (data drift) or the input–target relationship (concept drift) changes from what the model trained on, quietly degrading accuracy. Detect it by monitoring input distributions and prediction quality over time, and retrain or alert when they shift beyond a threshold.
Why use Docker for machine learning?
Docker packages your code, libraries, and system dependencies into one image that runs identically on your laptop, in CI, and in production. That eliminates 'it works on my machine' failures, which are especially common in ML because of heavy, version-sensitive dependencies.
What does MLflow do?
MLflow tracks experiments — logging parameters, metrics, and artifacts so you can compare runs — and provides a model registry to version and stage models for deployment. It's the system of record that keeps ML work reproducible instead of scattered across notebooks.