Amazon SageMaker AI 和应用程序 Auto Scaling - Application Auto Scaling

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

Amazon SageMaker AI 和应用程序 Auto Scaling

您可以使用目标跟踪扩展策略、步进扩展策略和计划扩展来扩展 SageMaker AI 终端节点变体、无服务器终端节点的预配置并发以及推理组件。

使用以下信息来帮助你将 SageMaker AI 与 Application Auto Scaling 集成。

为 AI 创建的 SageMaker 服务相关角色

使用 Application Auto Scaling 将 SageMaker AI 资源注册为可扩展目标 AWS 账户 时,将在您的中自动创建以下服务相关角色。此角色允许 Application Auto Scaling 在您的账户中执行受支持的操作。有关更多信息,请参阅 Application Auto Scaling 的服务相关角色

  • AWSServiceRoleForApplicationAutoScaling_SageMakerEndpoint

服务相关角色使用的服务委托人

上一节中的服务相关角色只能由为角色定义的信任关系授权的服务委托人担任。Application Auto Scaling 使用的服务相关角色为以下服务委托人授予访问权限:

  • sagemaker.application-autoscaling.amazonaws.com

使用 Application Auto Scaling 将 SageMaker AI 端点变体注册为可扩展目标

Application Auto Scaling 需要一个可扩展的目标,然后才能为 SageMaker AI 模型(变体)创建扩展策略或计划操作。可扩展目标是 Application Auto Scaling 可以横向扩展或横向缩减的资源。可扩展目标由资源 ID、可扩展维度和命名空间的组合唯一标识。

如果您使用 SageMaker AI 控制台配置 auto Scaling,则 SageMaker AI 会自动为您注册可扩展目标。

如果要使用 AWS CLI 或其中一个来配置 auto Scaling AWS SDKs,则可以使用以下选项:

  • AWS CLI:

    调用register-scalable-target命令获取产品变体。以下示例为名为 my-variant 的产品变体(在 my-endpoint 端点上运行)注册所需的实例计数,最小容量为一个实例,最大容量为八个实例。

    aws application-autoscaling register-scalable-target \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredInstanceCount \ --resource-id endpoint/my-endpoint/variant/my-variant \ --min-capacity 1 \ --max-capacity 8

    如果成功,该命令会返回可扩展目标的 ARN。

    { "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123" }
  • AWS 软件开发工具包:

    调用 RegisterScalableTarget 操作并提供 ResourceIdScalableDimensionServiceNamespaceMinCapacityMaxCapacity 作为参数。

使用 Application Auto Scaling 将无服务器端点的预置并发注册为可扩展目标

Application Auto Scaling 也需要一个可扩展目标,然后才能为无服务器端点预置并发创建扩缩策略或计划的操作。

如果您使用 SageMaker AI 控制台配置 auto Scaling,则 SageMaker AI 会自动为您注册可扩展目标。

如果没有自动注册,请使用以下方法之一注册可扩展目标:

  • AWS CLI:

    调用register-scalable-target命令获取产品变体。以下示例为名为 my-variant 的产品变体(在 my-endpoint 端点上运行)注册预置并发,最小容量为一个实例,最大容量为十个实例。

    aws application-autoscaling register-scalable-target \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredProvisionedConcurrency \ --resource-id endpoint/my-endpoint/variant/my-variant \ --min-capacity 1 \ --max-capacity 10

    如果成功,该命令会返回可扩展目标的 ARN。

    { "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123" }
  • AWS 软件开发工具包:

    调用 RegisterScalableTarget 操作并提供 ResourceIdScalableDimensionServiceNamespaceMinCapacityMaxCapacity 作为参数。

使用 Application Auto Scaling 将推理组件注册为可扩展目标

Application Auto Scaling 也需要一个可扩展目标,然后才能为推理组件创建扩展策略或计划的操作。

  • AWS CLI:

    调用推理组件的register-scalable-target命令。以下示例为名为 my-inference-component 的推理组件注册所需的副本计数,最小容量为零个副本,最大容量为三个副本。

    aws application-autoscaling register-scalable-target \ --service-namespace sagemaker \ --scalable-dimension sagemaker:inference-component:DesiredCopyCount \ --resource-id inference-component/my-inference-component \ --min-capacity 0 \ --max-capacity 3

    如果成功,该命令会返回可扩展目标的 ARN。

    { "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123" }
  • AWS 软件开发工具包:

    调用 RegisterScalableTarget 操作并提供 ResourceIdScalableDimensionServiceNamespaceMinCapacityMaxCapacity 作为参数。

如果您刚刚开始使用 Application Auto Scaling,可以在亚马逊 SageMaker 人工智能开发者指南中找到有关扩展 A SageMaker I 资源的其他有用信息:

注意

2023 年, SageMaker AI 推出了基于实时推理端点的新推理功能。您可以使用终端节点配置创建 A SageMaker I 终端节点,该端点配置定义了终端节点的实例类型和初始实例数。然后,创建一个推理组件,它是一个 SageMaker AI 托管对象,可用于将模型部署到终端节点。有关扩展推理组件的信息,请参阅博客上的 Amazon SageMaker AI 添加了新的推理功能以帮助降低基础模型部署成本和延迟,以及使用 Amazon A SageMaker I 的最新功能将模型部署成本平均降低 50%。 AWS