An ML system does not have to follow one release strategy from end to end. Decomposition lets components be deployed and managed separately: a model might receive a canary rollout, while an API layer follows a more traditional release process. The practical question is which parts need the same rollout controls and which do not. section 13.2
Start by sketching the system as a few clear blocks. Breaking a large problem into stages can make each stage easier to reason about: a search engine can quickly filter candidates, then apply a more sophisticated ranking step to the smaller set. That design breakdown helps identify components, but it does not by itself dictate how each one must be released. section 3.3 section 3.5
Choose a rollout for the component
Suppose a new model needs a cautious production rollout. A canary deployment sends a small portion of existing users to the new version while the old one continues running, making it easier to check the change and roll back. The API layer need not use that same approach. Do not mistake the canary for an A/B test: a canary checks whether a new version is ready for broader use; an A/B test compares versions’ performance. section 13.2









