techdiagrams.net
← All templates

MLOps: training to serving

The full ML loop: one feature store feeding both training and serving, a model registry with lineage, champion-challenger shadow serving and drift-triggered retraining.

Open in editor — free, no login Download JSON
TRAINING WORLD — OFFLINE, POINT-IN-TIME CORRECTSERVING WORLD — ONLINE, MILLISECONDSbackfill featurespoint-in-time training setscandidate v13 + lineagepromote championdeploy challengersame definitions, syncedonline features <10mspredictmirror requestsprediction statsdrift → retrainRaw eventsclicks · transactions · labelsFeature store — offlinepoint-in-time correctTraining pipelinescheduled + drift-triggeredModel registryversions · lineage · approvalsFeature store — onlinesame definitions · <10msDrift monitorinputs + predictions watchedServing — champion v12100% of answersChallenger v13 — shadowmirrored traffic · answers discardedProductasks for predictionstraining-serving skew is THE silent killer:one feature definition, materialized twice,beats two teams' “identical” implementationsevery single time.

What this design does

Most ML failures aren't modeling failures — they're plumbing failures, and the worst one is training-serving skew: features computed one way offline and another way online. Here one feature store materializes the SAME definitions to both an offline store for training and an online store for sub-10ms serving. Models graduate through a registry with full lineage, new challengers serve in shadow against the champion on mirrored traffic, and a drift monitor watches live distributions — when the world changes, retraining triggers itself.

The patterns it composes

Import it, attach your own numbers, and verify the design against failures — or read the engineering notes.