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

创建模型包资源

要创建可用于在 Amazon SageMaker 中创建可部署模型的模型包资源并在 Amazon Web Services Marketplace 上发布,请指定以下信息:

  • 包含推理代码或已用于训练模型的算法资源的 Docker 容器。

  • 模型构件的位置。模型构件既可以打包在与推理代码相同的 Docker 容器中,也可以存储在 Amazon S3 中。

  • 模型包支持的用于实时推理和批量转换作业的实例类型。

  • 验证配置文件,它们是 SageMaker 为测试模型包的推理代码而运行的批量转换作业。

    在 Amazon Web Services Marketplace 上列出模型包之前,您必须先对其进行验证。这确保买家和卖家可以确信产品适用于 Amazon SageMaker。您只有在验证成功后,才能在 Amazon Web Services Marketplace 上列出产品。

    验证过程使用您的验证配置文件和示例数据来运行以下验证任务:

    1. 使用模型包的推理映像和存储在 Amazon S3 中的可选模型构件,在您的账户中创建模型。

      注意

      模型包特定于创建它时所在的区域。存储模型构件的 S3 存储桶必须位于您创建模型包的区域内。

    2. 使用该模型在您的账户中创建一个转换作业,验证您的推理映像是否适用于 SageMaker。

    3. 创建验证配置文件。

    注意

    在验证配置文件中,仅提供您希望公开的数据。

    验证可能需要几个小时。要查看账户中作业的状态,请在 SageMaker 控制台中,查看转换作业页面。如果验证失败,您可以从 SageMaker 控制台访问扫描和验证报告。修复问题后,请重新创建算法。当算法的状态为 COMPLETED 时,在 SageMaker 控制台中找到它并启动列示过程

    注意

    要在 Amazon Web Services Marketplace 上发布您的模型包,至少需要一个验证配置文件。

您可以通过使用 SageMaker 控制台或 SageMaker API 创建模型包。

创建模型包资源(控制台)

要在 SageMaker 控制台中创建模型包,请执行以下操作:
  1. 通过 https://console.aws.amazon.com/sagemaker/ 打开 SageMaker 控制台。

  2. 从左侧菜单中,选择推理

  3. 选择 Marketplace 模型包,然后选择创建 Marketplace 模型包

  4. Inference specifications (推理规范) 页面上,提供以下信息:

    1. 对于 Model package name (模型包名称),键入您的模型包的名称。模型包名称在您的账户和 Amazon 区域中必须是唯一的。名称必须具有 1 到 64 个字符。有效字符为 a-z、A-Z、0-9 和 -(连字符)。

    2. 键入模型包的描述。此描述将显示在 SageMaker 控制台和 Amazon Web Services Marketplace 中。

    3. 对于 Inference specification options (推理规范选项),选择 Provide the location of the inference image and model artifacts (提供推理镜像和模型构件的位置) 以通过使用推理容器和模型构件来创建模型包。选择 Provide the algorithm used for training and its model artifacts (提供用于训练的算法及其模型构件) 以从您创建的或通过 Amazon Web Services Marketplace 订阅的算法资源创建模型包。

    4. 如果您为推理规范选项选择了提供推理映像和模型构建的位置,则为容器定义支持的资源提供以下信息:

      1. 对于 Location of inference image (推理镜像的位置),键入包含推理代码的镜像的路径。映像必须作为 Docker 容器存储在 Amazon ECR 中。

      2. 对于 Location of model data artifacts (模型数据构件的位置),键入 S3 中存储模型构件的位置。

      3. 对于 Container DNS host name (容器 DNS 主机名),键入要用于容器的 DNS 主机的名称。

      4. 对于实时推理所支持的实例类型,选择模型包支持的用于从 SageMaker 托管端点进行实时推理的实例类型。

      5. 对于 Supported instance types for batch transform jobs (支持的批量转换作业实例类型),选择模型包支持的用于批量转换作业的实例类型。

      6. 对于 Supported content types (支持的内容类型),键入模型包预期用于推理请求的内容类型。

      7. 对于 Supported response MIME types (支持的响应 MIME 类型),键入模型包用于提供推理的 MIME 类型。

    5. 如果您为推理规范选项选择了提供用于训练及其模型构件的算法,请提供以下信息:

      1. 对于 Algorithm ARN (算法 ARN),键入要用于创建模型包的算法资源的 Amazon 资源名称 (ARN)。

      2. 对于 Location of model data artifacts (模型数据构件的位置),键入 S3 中存储模型构件的位置。

    6. 选择下一步

  5. Validation and scanning (验证和扫描) 页面上,提供以下信息:

    1. 对于将此模型包发布在 Amazon Web Services Marketplace 上,选择以在 Amazon Web Services Marketplace 上发布模型包。

    2. 对于验证此资源,如果您希望 SageMaker 运行您指定的批量转换作业以测试模型包的推理代码,请选择

      注意

      要在 Amazon Web Services Marketplace 上发布您的模型包,必须对其进行验证。

    3. 对于 IAM 角色,选择具有在 SageMaker 中运行批量转换作业所需权限的 IAM 角色,或选择创建新角色以允许 SageMaker 创建附加了 AmazonSageMakerFullAccess 托管策略的角色。有关信息,请参阅 SageMaker 角色

    4. 对于 Validation profile (验证配置文件),请指定以下内容:

      • 验证配置文件的名称。

      • Transform job definition (转换作业定义)。这是一个描述批量转换作业的 JSON 数据块。其格式与 CreateAlgorithm API 的 TransformJobDefinition 输入参数的格式相同。

  6. 选择创建 Marketplace 模型包

创建模型包资源 (API)

要使用 SageMaker API 创建模型包,请调用 CreateModelPackage API。