View a markdown version of this page

内容领域 3: ML 工作流的部署和编排 - AWS Certified Machine Learning Engineerr - Associate

内容领域 3: ML 工作流的部署和编排

任务 3.1: 根据现有架构和要求选择部署基础设施

掌握以下知识:

  • 部署最佳实践(例如:版本控制、回滚策略)

  • AWS 部署服务(例如:Amazon SageMaker AI)

  • 实时和批量提供 ML 模型的方法

  • 如何在生产环境和测试环境中预置计算资源(例如:CPU、GPU)

  • 部署终端节点的模型和终端节点要求(例如:无服务器终端节点、实时终端节点、异步终端节点、批量推理)

  • 如何选择合适的容器(例如:已提供容器或自定义容器)

  • 在边缘设备上优化模型的方法(例如:SageMaker Neo)

具备以下技能:

  • 评估性能、成本和延迟权衡

  • 根据需求(例如:GPU 或 CPU 规格、处理器系列、联网带宽),选择合适的计算环境用于训练和推理

  • 选择合适的部署编排程序(例如:Apache Airflow、SageMaker Pipelines)

  • 选择多模型或多容器部署

  • 选择正确的部署目标(例如:SageMaker AI 端点、Kubernetes、Amazon ECS、Amazon Elastic Kubernetes Service [Amazon EKS]、AWS Lambda)

  • 选择模型部署策略(例如:实时、批量)

任务 3.2: 根据现有架构和要求创建基础设施并编写脚本

掌握以下知识:

  • 按需资源和预置资源之间的区别

  • 如何比较扩缩策略

  • 基础设施即代码 (IaC) 选项的权衡和用例(例如:AWS CloudFormation、AWS CDK)

  • 容器化概念和 AWS 容器服务

  • 如何使用 SageMaker AI 终端节点弹性伸缩策略来满足可扩展性要求(例如:基于需求、时间)

具备以下技能:

  • 应用最佳实践来打造可维护、可扩展且经济实惠的 ML 解决方案(例如:在 SageMaker AI 终端节点上弹性伸缩、动态添加竞价型实例、使用 Amazon EC2 实例、在终端节点后面使用 Lambda)

  • 自动预置计算资源,包括堆栈之间的通信(例如:使用 CloudFormation、AWS CDK)

  • 构建与维护容器(例如: Amazon ECR、Amazon EKS、Amazon ECS,以及带有 SageMaker AI 的自备容器 [BYOC])

  • 在 VPC 网络中配置 SageMaker AI 终端节点

  • 使用 SageMaker AI SDK 部署和托管模型

  • 为自动扩缩选择特定的指标(例如:模型延迟、CPU 利用率、每个实例的调用数)

任务 3.3: 使用自动编排工具来设置持续集成和持续交付 (CI/CD) 管道

掌握以下知识:

  • AWS CodePipeline、AWS CodeBuild 和 AWS CodeDeploy 的功能和配额

  • 使用编排服务的数据摄取自动化和集成

  • 版本控制系统和基本用法(例如:Git)

  • CI/CD 原则以及如何将这些原则融入 ML 工作流

  • 部署策略和回滚操作(例如:蓝/绿、金丝雀、线性)

  • 代码存储库和管道如何协同工作

具备以下技能:

  • CodeBuild、CodeDeploy 和 CodePipeline(包括各阶段)的配置和故障排除

  • 应用持续部署流程结构来调用管道(例如:Gitflow、GitHub Flow)

  • 使用 AWS 服务来自动进行编排(例如:部署 ML 模型、自动模型构建)

  • 配置训练和推理作业(例如:使用 Amazon EventBridge 规则、SageMaker Pipelines、CodePipeline)

  • 在 CI/CD 管道中创建自动化测试(例如:集成测试、单元测试、端到端测试)

  • 构建并集成用于重新训练模型的机制