概览
MLOps 工作负载编排工具可帮助您简化和实施机器学习(ML)模型产品化的架构最佳实践。此 AWS 解决方案是一个可扩展的框架,为管理 AWS 机器学习(ML)服务和第三方服务的机器学习(ML)管道提供了一个标准接口。
此解决方案的模板可用于训练模型、上传经过训练的模型(也称为自带模型 [BYOM]),配置管道编排以及监控管道操作。团队可以通过此解决方案大规模重复成功流程,从而提高其敏捷性和效率。
优势
使用 Amazon SageMaker 模型控制面板查看您的解决方案创建的 Amazon SageMaker 资源(例如模型、端点、模型卡和批量转换作业)。
技术详情
您可以使用实施指南和随附的 AWS CloudFormation 模板自动部署该架构。为支持多种使用案例和业务需求,此解决方案提供了两种 AWS CloudFormation 模板:
- 使用单账户模板在同一个 AWS 账户中部署所有解决方案的管道。此选项适合实验、开发和/或小规模生产工作负载。
- 使用多账户模板在不同 AWS 账户中预置多个环境(例如,开发、暂存和生产),这样可以改善治理并增强机器学习管道部署的安全性和控制,产生安全的实验和更快地创新,使生产数据和工作负载安全且可帮助确保业务连续性。
-
选项 1 - 单账户部署
-
选项 2 - 多账户部署
-
选项 1 - 单账户部署
-
第 1 步
编排工具(解决方案拥有者或 DevOps 工程师)在 AWS 账户中启动解决方案并选择所需的选项(例如,使用 Amazon SageMaker 模型注册表,或提供现有的Amazon Simple Storage Service [Amazon S3] 存储桶)。第 2 步
编排工具将目标管道所需的资产(例如,模型构件、培训数据或自定义算法 zip 文件)上传到 S3 资产存储桶中。如果使用 Amazon SageMaker 模型注册表,则编排工具(或自动化管道)必须通过模型注册表注册该模型。步骤 3a
该解决方案通过将 API 调用发送到 Amazon API Gateway 或将 mlops-config.json 文件提交到 Git 存储库预置单账户 AWS CodePipeline。
步骤 3b
根据管道类型,编排工具 AWS Lambda 函数使用 API 调用或 mlops-config.json 文件的主体打包目标 AWS CloudFormation 模板及其参数和配置,然后将其用作 CodePipeline 实例的源阶段。第 4 步
DeployPipeline 阶段获取打包的 CloudFormation 模板及其参数和配置,并将目标管道部署到相同账户中。第 5 步
预置了目标管道之后,用户即可使用其功能。Amazon Simple Notification Service(Amazon SNS)通知发送到解决方案的启动参数中提供的电子邮件。 -
选项 2 - 多账户部署
-
步骤 1
编排工具(拥有编排工具账户管理访问权限的解决方案拥有者或 DevOps 工程师)提供 AWS Organizations 信息(例如,开发、暂存和生产企业单元 ID 和账号)。
它们还指定所需的选项(例如,使用 SageMaker 模型注册表,或提供现有的 S3 存储桶),然后在其 AWS 账户中启动解决方案。
第 2 步
编排工具将目标管道所需的资产(例如,模型构件、培训数据或自定义算法 zip 文件)上传到 AWS 编排工具账户内的 S3 资产存储桶中。如果使用 SageMaker 模型注册表,则编排工具(或自动化管道)必须通过模型注册表注册该模型。
步骤 3a
该解决方案通过将 API 调用发送到 API Gateway 或将 mlops-config.json 文件提交到 Git 存储库来预置多账户 CodePipeline 实例。
步骤 3b
根据管道类型,编排工具 Lambda 函数使用 API 调用或 mlops-config.json 文件的主体打包每个阶段的目标 CloudFormation 模板及其参数和配置,然后将其用作 CodePipeline 实例的源阶段。第 4 步
DeployDev 阶段获取打包的 CloudFormation 模板及其参数和配置,并将目标管道部署到开发账户中。第 5 步
在将目标管道预置到开发账户中之后,开发人员可以在该管道上迭代。步骤 6
完成开发后,编排工具(或另一个授权账户)手动批准 DeployStaging 操作移动到 DeployStaging 阶段。步骤 7
DeployStaging 阶段将目标管道使用暂存配置部署到暂存账户中。步骤 8
测试人员在部署的管道上执行不同的测试。步骤 9
管道通过了质量测试后,编排工具就可以批准 DeployProd 操作。步骤 10
DeployProd 阶段将目标管道(使用生产配置)部署到生产账户中。第 11 步
目标管道驻留在生产中。SNS 通知发送到解决方案的启动参数中提供的电子邮件。
相关内容
Cognizant 与 AWS 合作伙伴解决方案架构师和 AWS 解决方案库团队合作,在 MLOps 工作负载编排工具解决方案的基础上构建了其 MLOps 模型生命周期编排工具解决方案。