

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 7. 持续部署
<a name="continuous-deployment"></a>

要持续部署机器学习系统，它必须能够在实时模型之间转移流量。持续部署的系统至少有一种方法可以将模型提升到生产环境：canary、shadow、blue/green, or A/B。确认在 ML 系统中，您至少有一种方法可以回滚模型。


|  |  | 
| --- |--- |
| **7.1 模型切换** | 在暂存和生产中，系统可以在版本控制模型之间切换。它可以一次性或逐步将流量转移到新的生产变体。 | 
| **7.2 模型提升流程** | 模型提升已采用分阶段验证流程。该流程使用不影响生产系统的离线测试，例如在暂存环境中针对验证数据运行。制定了模型提升的运行手册和指标。提升遵循其中一种推出策略。 | 
| **7.3 回滚策略** | 存在回滚策略，以便在发生错误或模型偏离预期行为时，发生回滚、回退或滚动更新。回滚时，模型将恢复为之前的部署版本。回退时，模型将替换为一个强大的启发式算法。滚动更新会将下一代模型提升到生产，并逐步替换旧模型。所有这些策略都有相应的运行手册。 | 
| **7.4 金丝雀部署** | 系统可以使用金丝雀进行部署。最初有一小部分流量发送到新模型。随着时间的推移，所有流量都会转移到新模型。由于测试是在生产环境中进行的，因此这种转变受到密切监控。 | 
| **7.5 模型影子部署** | 系统可以运行影子部署，在此部署中，新模型与现有模型一起工作。两个模型都接收流量，但只有较早的模型输出推理。将新模型与现有模型进行比较评测，然后手动提升新模型。 | 
| **7.6 蓝绿部署** | 系统可以使用新模型（绿色，处于暂存状态）和较早的模型（蓝色，处于生产状态）进行部署，两者同时运行。测试完成后，流量从蓝色环境转移至绿色环境。此策略可防止停机，因为它可以建立完全相同的环境。 | 
| **7.7 支持 A/B 测试或更多** | 系统支持在已部署环境中使用模型版本对传入流量 A/B 进行测试。其中可能包括根据新模型在测试中获胜而自动提升的功能。更高级的设置将使用[多臂强盗](https://aws.amazon.com/blogs/machine-learning/dynamic-a-b-testing-for-machine-learning-models-with-amazon-sagemaker-mlops-projects/)流程。 | 