在亚马逊上部署模型 SageMaker HyperPod - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在亚马逊上部署模型 SageMaker HyperPod

SageMaker HyperPod 现在,Amazon 不仅仅是培训,还提供了一个全面的推理平台,该平台将 Kubernetes 的灵活性与托管服务的卓越运营相结合。 Amazon 在整个模型生命周期中使用相同的 HyperPod 计算,以企业级可靠性部署、扩展和优化您的机器学习模型。

亚马逊 SageMaker HyperPod 提供灵活的部署接口,允许您通过多种方法部署模型,包括 kubectl、Python SDK、Amazon SageMaker Studio 用户界面或 CLI HyperPod 。该服务提供了先进的自动扩缩功能,并配备可根据需求自动调整的动态资源分配机制。此外,它还包括全面的可观察性和监控功能,可跟踪延迟和 GPU 利用率等 time-to-first-token关键指标,以帮助您优化性能。

注意

在支持 GPU 的实例上部署时,您可以使用 GPU 分区和多实例 GPU (MIG) 技术,在单个 GPU 上运行多个推理工作负载。这可以提高GPU利用率和成本优化。有关配置 GPU 分区的更多信息,请参阅在亚马逊中使用 GPU 分区 SageMaker HyperPod

用于训练和推理的统一基础设施

通过在训练工作负载和推理工作负载之间无缝过渡计算资源,最大限度地提高 GPU 利用率。这可降低总拥有成本,并保持运营连续性。

企业就绪部署选项

部署来自多个来源的模型,包括来自亚马逊的开放权重和门控模型,以及支持单节点 SageMaker JumpStart 和多节点推理架构的 Amazon FSx S3 和 Amazon 的自定义模型。

托管分层键值 (KV) 缓存和智能路由

KV 缓存会在处理之前的令牌后保存预先计算的键值向量。处理下一个标记时,不需要重新计算向量。通过双层缓存架构,您可以配置使用 CPU 内存实现低延迟本地重复使用的 L1 缓存,以及利用 Redis 实现可扩展的节点级缓存共享的 L2 缓存。

智能路由分析传入的请求,并将它们定向到最有可能包含相关缓存键值对的推理实例。系统会检查请求,然后根据以下路由策略之一对其进行路由:

  1. prefixaware— 具有相同提示前缀的后续请求将路由到同一个实例

  2. kvaware— 传入的请求将路由到 KV 缓存命中率最高的实例。

  3. session— 来自同一用户会话的请求被路由到同一个实例。

  4. roundrobin— 在不考虑 KV 缓存状态的情况下均匀分配请求。

有关如何启用此功能的更多信息,请参阅配置 KV 缓存和智能路由以提高性能

内置 L2 缓存分层存储支持 KV 缓存

在现有 KV 缓存基础架构的基础上, HyperPod 现在与 Redis 一起集成了分层存储,作为附加的 L2 后端选项。借助内置的 SageMaker托管分层存储,这可以提高性能。此增强功能为客户提供了更具可扩展性和更高效的缓存卸载选项,对于高吞吐量 LLM 推理工作负载尤其有利。该集成保持了与现有 vLLM 型号服务器和路由功能的兼容性,同时提供了更好的性能。

注意

数据加密:KV 缓存数据(注意键和值)以未加密方式存储,以优化推理延迟并提高性能。对于 encryption-at-rest要求严格的工作负载,可以考虑对提示和响应进行应用层加密,或者禁用缓存。

数据隔离:使用托管分层存储作为二级缓存后端时,集群内的多个推理部署共享缓存存储空间,没有隔离。来自不同部署的 L2 KV 缓存数据(注意键和值)没有分开。对于需要数据隔离的工作负载(多租户方案、不同的数据分类级别),请部署到不同的集群或使用专用 Redis 实例。

具有自动故障转移功能的多实例类型部署

HyperPod 推理支持多实例类型部署,以提高部署可靠性和资源利用率。在部署配置中指定按优先顺序排列的实例类型列表,当您的首选实例类型容量不足时,系统会自动从可用的备选实例中进行选择。Kubernetes 调度器使用preferredDuringSchedulingIgnoredDuringExecution节点关联性按优先级顺序评估实例类型,将工作负载放在优先级最高的可用实例类型上,同时即使首选资源不可用,也能确保部署。此功能可防止由于容量限制而导致部署失败,同时保持您的成本和性能偏好,即使在集群容量波动期间也能确保持续的服务可用性。

自定义节点亲和力,实现精细调度控制

HyperPod 推理支持自定义节点亲和性,以控制实例类型选择之外的工作负载放置。通过nodeAffinity字段指定节点选择标准,例如可用区分布、容量类型筛选(按需与现货)或自定义节点标签。该系统支持使用强制放置约束requiredDuringSchedulingIgnoredDuringExecution和可选首选项preferredDuringSchedulingIgnoredDuringExecution,从而在保持部署灵活性的同时完全控制吊舱调度决策。

注意

我们收集某些常规运营指标,以提供基本的服务可用性。这些指标的创建是完全自动化的,不涉及对底层模型推理工作负载的人工审查。这些指标与部署操作、资源管理和端点注册有关。