Incident response for ML systems
Detection, rollback to a known-good model, and postmortems — what to actually do when a production model starts failing anyway.
Incident response for ML systems
The player loads from youtube-nocookie.com when you press play. Nothing reaches YouTube before that.
What you'll learn
- An ML incident response plan needs a model-specific rollback path — a previously validated model version kept ready to promote back immediately — because retraining or debugging under pressure takes far too long to be the first response to a live failure.
- Detection for ML incidents has to draw on the full monitoring stack built earlier in this group (infra metrics, drift signals, explainability tooling), because the cause of a bad model incident is rarely visible from any single one of those signals alone.
- A postmortem for an ML incident should produce a concrete process change, not just a narrative — new monitoring thresholds, a added governance check, or a retraining trigger — otherwise the same failure mode recurs with nothing in the system different.
Every system in this roadmap eventually fails anyway
Every discipline covered so far in this roadmap — versioned data, tracked experiments, reproducible packaging, tested CI/CD pipelines, solid infrastructure, careful deployment strategies, layered monitoring, real governance — reduces the rate of production ML failures. None of it reduces that rate to zero, and it never will: models are statistical systems making probabilistic bets about a world that keeps changing, which means some bet will eventually go bad in production no matter how carefully everything upstream was built. Incident response is the discipline for that moment — not preventing failure, but handling it well when prevention wasn’t enough.
Detection: noticing before the damage compounds
Detecting an ML incident draws on everything this group has already built. Sometimes the signal is operational — a spike in latency or errors that happens to be caused by a flood of malformed inputs the model handles badly. More often, and more dangerously, the signal is a model quality one with no infrastructure symptom at all: a drift alert on the input distribution, a shift in the model’s confidence distribution, a spike in how often SHAP attributions point to a feature that shouldn’t matter, or a sudden change in a downstream business metric like approval rate or conversion. The hard part of detection in practice is rarely noticing that something changed — monitoring usually fires on that. It’s correlating several of these signals fast enough to know what kind of incident this is before deciding what to do about it, which is exactly why the earlier lessons in this group building a layered picture rather than one dashboard matters here.
Rollback: the fast, boring, correct first move
Once a model incident is confirmed, the instinct to immediately start debugging and fixing the model is usually the wrong one to act on first. Diagnosing root cause and training a corrected model takes real time — often hours to days — and every one of those hours the broken model keeps making bad decisions. The right first move is almost always rollback: promoting a previously validated, known-good model version back into the serving slot the broken one occupied, which is only possible because of work done much earlier in this roadmap — a model registry that kept the prior version available, and a deployment strategy (blue-green, canary, shadow) that makes swapping the live version a fast, low-risk operation rather than a redeploy from scratch. Rollback doesn’t fix the underlying problem. It stops the bleeding immediately while the actual fix happens without the pressure of an active incident, which is precisely the point.
The postmortem: where the incident becomes a system improvement
Once the system is stable again, a postmortem asks what actually happened, why existing monitoring did or didn’t catch it in time, and what concretely changes as a result. A good ML postmortem resists ending at “we identified that the fraud ring changed tactics, causing concept drift” — that’s a diagnosis, not an improvement. It should end with something the system is now different about: a new drift threshold tuned to catch this pattern earlier, a governance check added so a future change like this one gets reviewed before shipping, a retraining trigger wired to fire automatically the next time this specific signal appears. Blameless postmortems matter here for the same reason they matter in general incident response — the goal is a better system, not a person to point at, and a team that fears blame hides the details a postmortem actually needs to be useful.
Closing the loop: the arc of MLOps
This is the last node in the roadmap, and it’s worth naming what the whole arc actually was. MLOps started with a basic claim: a model in a notebook isn’t a product, and the gap between training and a trustworthy production system is where almost all the real engineering work lives. Everything since has been closing that gap from a different angle — versioning the data and tracking the experiments so results are reproducible, packaging the model so it runs the same way everywhere, building CI/CD so changes ship safely and repeatably, standing up the infrastructure and serving patterns that make a model available at scale, and finally watching it, explaining it, governing it, and being ready for the moment it fails anyway. None of these disciplines is optional in a system anyone actually depends on, and none of them is sufficient alone — monitoring without rollback just tells you something is wrong with no way to act on it, governance without explainability is a form nobody can actually fill in honestly, CI/CD without monitoring ships failures quickly instead of catching them. Incident response is the discipline that accepts, honestly, that this whole chain will still break sometimes — and makes sure that when it does, the system recovers fast and comes back out the other side a little more resilient than it went in.
Check yourself
Why should rollback, not retraining, be the first response to a live model incident?
Because retraining and revalidating a new model takes meaningfully longer than promoting a known-good previous version back into production, and the priority during an active incident is stopping the harm, not immediately producing a better model.
What makes detecting an ML incident harder than detecting a typical service outage?
A model can keep responding quickly and without errors while producing quietly wrong predictions, so detection depends on model-quality signals like drift and confidence shifts in addition to standard infrastructure metrics, and the real cause is often only visible by correlating several of these signals together.
What should an ML postmortem produce besides a written account of what happened?
A specific, concrete change to the system — a new monitoring threshold, an added approval check, a retraining trigger, or a change to the rollback process — so the same failure mode is actually less likely to recur, not just better understood.
Go deeper
Notes
Notes are saved to your account.
Everything else on this page works without one — progress and bookmarks keep themselves in this browser and come with you when you sign in. Notes are the one thing worth not trusting to a browser you might clear.
Your notes could not be loaded.