编译模型(Amazon SageMaker 控制台) - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

编译模型(Amazon SageMaker 控制台)

您可以在亚马逊 SageMaker 控制台中创建 Amazon SageMaker Neo 编译任务。

  1. Amazon SageMaker 控制台中,选择编译任务,然后选择创建编译任务

    创建编译作业。
  2. 创建编译作业页面的作业名称中,输入名称。然后选择 IAM 角色

    IAM 角色。
  3. 如果您没有 IAM 角色,请选择 Create a new role (创建新角色)

    IAM 角色。
  4. Create an IAM role (创建 IAM 角色) 页面上,选择 Any S3 bucket (任意 S3 存储桶),然后选择 Create role (创建角色)

    创建 IAM 角色。
  5. Non PyTorch Frameworks

    输入配置部分,在模型构件的位置中输入包含模型构件的 S3 存储桶 URI 的完整路径。模型构件必须使用压缩的 tarball 文件格式 (.tar.gz)。

    对于数据输入配置字段中,输入用于指定输入数据形状的 JSON 字符串。

    对于机器学习框架,选择您已选中的框架。

    输入配置。

    要根据框架查找输入数据形状的 JSON 字符串示例,请参阅 Neo 期望的输入数据形状

    PyTorch Framework

    类似的说明也适用于编译 PyTorch 模型。但是,如果您使用目标训练 PyTorch 并尝试编译模型ml_*(除外ml_inf),则可以选择指定所使用的版本。 PyTorch

    要根据框架查找输入数据形状的 JSON 字符串示例,请参阅 Neo 期望的输入数据形状

    注意
    • 如果您使用 PyTorch 版本 2.0 或更高版本保存模型,则数据输入配置字段为可选字段。 SageMaker Neo 从您创建的模型定义文件中获取输入配置 PyTorch。有关如何创建定义文件的更多信息,请参阅为 SageMaker Neo 保存模型下的PyTorch部分。

    • 使用 PyTorch 框架编ml_*实例时,请使用输出配置中的编译器选项字段提供模型输入的正确数据类型 (dtype)。默认被设置为 "float32"

    警告

    如果您指定指向 .pth 文件的 Amazon S3 存储桶 URI 路径,开始编译后将收到以下错误:ClientError: InputConfiguration: Unable to untar input model.Please confirm the model is a tar.gz file

  6. 转到输出配置部分。选择要部署模型的位置。您可以将模型部署到目标设备或者目标平台。目标设备包括云和边缘设备。目标平台是指您希望模型在其上运行的特定操作系统、架构和加速器。

    对于 S3 输出位置,请输入要在其中存储模型的 S3 存储桶的路径。您可以选择在编译器选项部分使用 JSON 格式添加编译器选项。

    创建作业。
  7. 在启动时检查编译作业的状态。该作业状态可以在编译作业页面的顶部找到,如以下屏幕截图所示。您也可以在状态列中查看其状态。

    编译作业状态。
  8. 在完成时检查编译作业的状态。您可以在状态列中查看状态,如以下屏幕截图所示。

    编译作业状态。