SageMaker lops 项目演练 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

SageMaker lops 项目演练

本演练演示了如何使用 MLOPS 项目创建 CI/CD 系统以生成、训练和部署模型。

先决条件

要完成此演练,需要:

第 1 步:创建 项目

在此步骤中,您可以使用 SageMaker 提供的项目模板来构建、训练和部署模型,从而创建 SageMaker MLOPS 项目。

创建 SageMaker lops 项目的步骤

  1. 登录到 Studio。有关更多信息,请参阅登上 Amazon SageMaker Studio

  2. 选择组成部分和登记册,然后选择项目从下拉列表中选择。

  3. 选择 Create project (创建项目)

    这些区域有:创建项目选项卡显示。

  4. 适用于SageMaker 项目模板中,选择组织模板,然后选择用于模型构建、培训和部署的 MLOP 模板.

  5. 适用于项目详细信息中,为您的项目输入名称和描述。

当项目出现在项目列表中的状态已创建,请继续执行下一步。

第 2 步:克隆代码存储库

在创建项目后,将在项目中创建两个 CodeCommit 存储库。其中一个存储库包含用于构建和训练模型的代码,另一个存储库包含用于部署模型的代码。在此步骤中,您将存储库克隆到本地SageMaker,其中包含用于在本地 Studio 环境中构建和训练模型的代码,以便您可以使用代码。

克隆代码存储库

  1. 选择组成部分和登记册,然后选择项目从下拉列表中选择。

  2. 找到您在上一步中创建的项目的名称,然后双击该名称以打开项目的项目选项卡。

  3. 在项目选项卡上,选择存储库,并在本地路径列结尾的存储库模型构建中,选择克隆存储库....

  4. 在显示的对话框中,接受默认设置并选择克隆存储库.

    当存储库的克隆完成后,本地路径将显示在本地路径column. 选择在 Studio 中打开包含存储库代码的本地文件夹的路径。

第 3 步:在代码中进行更改

现在对构建模型的管道代码进行更改,并检入更改以启动新的管道运行。管道运行会注册一个新的模型版本。

进行代码更改

  1. 在 Studio 中,选择文件浏览器图标 ( ),然后导航到pipelines/abalonefolder。双击pipeline.py打开代码文件。

  2. pipeline.py文件中,找到设置训练实例类型的行。

    training_instance_type = ParameterString( name="TrainingInstanceType", default_value="ml.m5.xlarge"

    变更ml.m5.xlargeml.m5.large,然后键入Ctrl+S以保存更改。

  3. 选择Git图标( )。阶段、提交和推送pipeline.py. 有关在 Studio 中使用 Git 的信息,请参阅在 SageMaker 工作室中克隆一个 Git 存储库.

推送代码更改后,MPLOPS 系统启动管道运行,创建新模型版本。在下一步中,您将批准新的模型版本以将其部署到生产中。

第 4 步:批准模型

现在,您可以批准在上一步中创建的新模型版本,以启动模型版本部署到 SageMaker 终端节点。

批准模型版本

  1. 选择组成部分和登记册,然后选择项目从下拉列表中选择。

  2. 找到您在第一步中创建的项目的名称,然后双击该名称以打开项目的项目选项卡。

  3. 在项目选项卡上,选择模型组,然后双击出现的模型组的名称。

    此时显示模型组选项卡。

  4. 在模型组选项卡中,双击版本 2. 这些区域有:版本 2选项卡将打开。选择更新状态

  5. 在模型中更新模型版本状态对话框中的状态下拉列表中,选择审批,然后选择更新状态.

    批准模型版本会导致 MPLOPS 系统将模型部署到暂存。要查看终端节点,请在终端节点选项卡上的选项卡。

(可选)步骤 5:将模型版本部署到生产环境

现在,您可以将模型版本部署到生产环境。

注意

要完成此步骤,您需要是 Studio 域中的管理员。如果您不是管理员,请跳过此步骤。

将模型版本部署到生产环境

  1. 登录 CodePipeline 控制台(网址为:https://console.aws.amazon.com/codepipeline/

  2. 选择管道,然后选择名为sagemaker-maker-...ProjectName-ProjectId-模型部署其中,ProjectName是您的项目的名称,而ProjectId是您的项目的 ID。

  3. 部署转移阶段,选择审核.

  4. 审核对话框中,选择审批.

    正在审批部署转移阶段会导致 MPLOPS 系统将模型部署到生产环境中。要查看终端节点,请在终端节点选项卡上的工作室。

第 6 步:清理资源

要停止产生费用,请清理本演练中创建的资源。为此,请完成以下步骤。

注意

删除Amazon CloudFormation堆栈和 Amazon S3 存储桶,您需要成为 Studio 中的管理员。如果您不是管理员,请要求您的管理员完成这些步骤。

  1. 从 Studio 菜单中,依次选择File (文件)中,选择New,然后选择笔记本.

  2. 选择内核对话框中,选择Python 3(数据科学),然后选择Select.

  3. 在笔记本中,在一个单元格中输入以下代码,然后运行该单元格。ReplaceMyProject替换为您的项目名称。

    import boto3 sm_client=boto3.client("sagemaker") sm_client.delete_project(ProjectName="MyProject")

    这将删除Amazon Service Catalog项目创建的预配置产品。这包括为项目创建的 CodeCommit、代码表行和 CodeBuild 资源。

  4. 删除存储在设备上的Amazon CloudFormation项目创建的堆栈。有两个堆栈,一个用于暂存,另一个用于生产。堆栈的名称是sagemaker-maker-...ProjectName-Project-id-部署暂存sagemaker-maker-...ProjectName-项目 ID-部署-产品其中,ProjectName是您的项目的名称,而项目 ID是您的项目的 ID。

    有关如何删除Amazon CloudFormation堆栈,请参阅删除Amazon CloudFormation控制台中的Amazon CloudFormation用户指南.

  5. 删除项目创建的 Amazon S3 存储桶。存储桶的名称是Sagemaker-项目-Project-id其中,Project-id是您的项目的 ID。