部署模型用于推理 - Amazon SageMaker

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

部署模型用于推理

借助 Amazon SageMaker,您可以开始从经过训练的机器学习模型中获得预测或推论。 SageMaker 提供多种机器学习基础架构和模型部署选项,以帮助满足您的所有机器学习推理需求。借助 SageMaker Inference,您可以扩展模型部署,在生产环境中更有效地管理模型,并减轻运营负担。 SageMaker 为您提供各种推理选项,例如用于获取低延迟推理的实时端点、用于完全托管基础设施和自动缩放的无服务器端点,以及用于批量请求的异步端点。通过利用适合您的用例的推理选项,您可以确保高效的模型部署和推理。

选择一项功能

使用部署机器学习模型有多种用例 SageMaker。本节介绍这些用例,以及我们为每个用例推荐的 SageMaker 功能。

使用案例

以下是使用部署机器学习模型的主要用例 SageMaker。

  • 用例 1:在低代码或无代码环境中部署机器学习模型。对于初学者或新手 SageMaker,您可以 SageMaker JumpStart 通过 Amazon SageMaker Studio 界面使用 Amazon 部署经过预训练的模型,而无需进行复杂的配置。

  • 用例 2:使用代码部署具有更大灵活性和控制力的机器学习模型。经验丰富的机器学习从业者可以使用 SageMaker Python 中的ModelBuilder类部署自己的模型,其中包含针对其应用程序需求的自定义设置SDK,该类提供了对各种设置的精细控制,例如实例类型、网络隔离和资源分配。

  • 用例 3:大规模部署机器学习模型。对于想要在生产中大规模管理模型的高级用户和组织,请使用 AWS SDK for Python (Boto3) 和 AWS CloudFormation 以及所需的基础设施即代码 (IaC) 和 CI/CD 工具来配置资源并实现资源管理自动化。

下表描述了与每个用例相对应的 SageMaker 功能的关键注意事项和权衡取舍。

应用场景 1 应用场景 2 使用案例 3
SageMaker 功能 JumpStart 在 Studio 中使用可加快基础模型的部署。 使用来ModelBuilder 自 SageMaker Python 的模型进行部署SDK。 使用@@ 大规模部署和管理模型 AWS CloudFormation
描述 使用 Studio UI 将目录中的预训练模型部署到预配置的推理端点。此选项非常适合公民数据科学家,或者任何想要在不配置复杂设置的情况下部署模型的人。 使用 Amaz SageMaker on Python 中的ModelBuilder类SDK来部署您自己的模型并配置部署设置。此选项非常适合经验丰富的数据科学家,或者任何需要部署自己的模型并需要精细控制的人。 使用 AWS CloudFormation 和基础设施即代码 (IaC) 进行编程控制,并实现部署和管理 SageMaker模型的自动化。此选项非常适合需要一致且可重复部署的高级用户。
经过优化 快速简化常用开源模型的部署 部署自己的模型 对生产中的模型进行持续管理
注意事项 缺乏对容器设置和特定应用程序需求的自定义 没有用户界面,需要你能熟练地开发和维护 Python 代码 需要基础架构管理和组织资源,还需要熟悉 AWS SDK for Python (Boto3) 或熟悉 AWS CloudFormation 模板。
推荐的环境 一个 SageMaker 域名 使用您的 AWS 凭据配置的 Python 开发环境并SDK安装了 SageMaker Python,或者 SageMaker IDE类似的环境 SageMaker JupyterLab AWS CLI、本地开发环境、基础设施即代码 (IaC) 和 CI/CD 工具

其他选项

SageMaker 为您的推理用例提供了不同的选项,让您可以选择部署的技术广度和深度:

  • 将模型部署到端点。部署模型时,请考虑以下选项:

    • 实时推理。 实时推理非常适合需要交互式、低延迟的推理工作负载。

    • 使用 Amazon SageMaker 无服务器推理部署模型。 使用无服务器推理部署模型,无需配置或管理任何底层基础架构。此选项非常适合在流量激增之间有空闲时间并且可以容忍冷启动的工作负载。

    • 异步推理. 对传入的请求进行排队并异步处理。此选项非常适合负载大小大(最大 1GB)、处理时间长( toAsynchronous 推理上升一小时)且延迟要求接近实时的请求

  • 成本优化。要优化推理成本,请考虑以下选项:

    • 使用 SageMaker Neo 优化模型性能。 使用 SageMaker Neo 以更好的性能和效率优化和运行您的机器学习模型,通过自动优化模型使其在 AWS Inferentia 芯片等环境中运行,帮助您最大限度地降低计算成本。

    • 自动缩放 Amazon SageMaker 机型。 使用自动扩缩功能根据传入流量模式动态调整终端节点的计算资源,这样只需为给定时间使用的资源付费,即可帮助您优化成本。