模型AWS Machine Learning·原文 2026年9月11日

AWS为SageMaker HyperPod推出模型缓存,推理冷启动从30分钟缩短至秒级

该功能将模型权重和容器镜像预加载到集群节点的本地NVMe存储上,已在所有支持HyperPod的区域正式可用,但权重缓存按节点复制,NVMe容量需匹配模型大小。

AI解读:Amazon SageMaker HyperPod之前部署推理服务时,每个新Pod都要经历两次下载:先去Amazon ECR拉取多GB的推理容器镜像(约 5 至 7 分钟),再从S3、FSx for Lustre或HuggingFace Hub下载模型权重。145 GB的模型在S3上需要再等 20 多分钟;像DeepSeek-R1这种 600+ GB的模型,从请求Pod到能对外服务往往要 30 分钟以上。

新的模型缓存功能把这两步都提前做了:权重缓存会在推理部署创建之前,先把模型权重下载到每个目标节点的本地NVMe,全部节点就绪后才创建部署;镜像缓存则通过DaemonSet预拉取容器镜像,但不阻塞部署创建。Pod启动时直接读本地盘,典型速度约 7 GB/s,可以在秒级开始服务,而不是几十分钟。

对真正受影响的人是跑自动扩缩容的团队。过去HorizontalPodAutoscaler几秒内就能决定加 5 个Pod,但每个Pod都要独立走完下载流程,实际多扛流量的时间被存储后端网络带宽卡住 25 至 30 分钟以上;缓存命中后扩容响应不再被下载环节拖住。代价是权重缓存按节点各存一份,NVMe消耗随节点数线性增长,实例存储必须装得下模型——300 GB的模型配上只有 250 GB NVMe的实例就无法缓存。

需要注意的边界:首次启用缓存仍要付一次远程下载成本;同一S3路径下更新模型文件不会被自动感知,必须改动InferenceEndpointConfig规格(比如换路径或加版本后缀)才会触发新缓存和滚动更新;缓存采用偏好调度而非强制调度,如果扩缩容速度快过缓存节点数量,Pod落在冷节点上会回退为正常下载,不会失败。

官方基准显示,57 至 145 GB模型扩容速度约提升 60%,镜像缓存可省下两分钟以上拉取时间,相比每次从ECR新拉最高减少约 97%。

AWS为Amazon SageMaker HyperPod上的推理服务推出模型缓存(model caching)功能,将模型权重和推理服务器容器镜像预加载到集群节点的本地NVMe存储,Pod启动时可跳过网络下载,直接以约 7 GB/s的本地速度读取。

AWS称,启用缓存后Pod通常可在数秒内开始服务流量,而此前大型模型需要数十分钟。该功能现在所有支持Amazon SageMaker HyperPod的区域正式可用。

AWS描述的无缓存冷启动流程包含两次串行下载:Kubelet先从Amazon ECR拉取vLLM或LMI等推理服务器镜像,这类镜像包含GPU驱动、CUDA库和服务框架,体积达数GB,需 5 至 7 分钟;镜像就绪后,容器内的推理服务器再从配置的来源下载模型权重。

以 145 GB模型存放在Amazon S3为例,这一步还需 20 分钟以上,具体取决于网络状况和可用带宽;DeepSeek-R1这类 600+ GB模型则需要 30 分钟以上。每次扩容事件都会对每个新Pod重复同样的下载序列,因此自动扩缩容的实际响应时间受限于到存储后端的网络吞吐。

AWS表示,若流量高峰时HorizontalPodAutoscaler请求 5 个新Pod,扩缩容策略可能在数秒内做出反应,但真正开始分担流量需要 25 至 30 分钟以上。

模型缓存是Amazon SageMaker Inference on HyperPod的新功能,AWS建议通过向现有部署规格添加modelCacheConfig配置段来启用,无需额外基础设施搭建。

权重缓存与镜像缓存是两项可独立开启的能力

AWS将模型缓存拆分为权重缓存和镜像缓存两个独立能力,可同时开启或分别开启。

启用权重缓存后,用户向InferenceEndpointConfig或JumpStartModel资源添加modelCacheConfig并开启weightsCache,HyperPod Inference Operator会自动创建ModelDataCacheConfig资源,并把模型权重从配置的来源(Amazon S3、Amazon FSx for Lustre、HuggingFace Hub或JumpStart)下载到所有目标节点的本地NVMe。节点下载完成后被标记为cache-ready;Operator会等到所有目标节点都进入该状态后才创建推理部署,以保证Pod总能访问本地数据。同一节点上的缓存可跨Pod重启保留,扩容时若新Pod落在已有权重缓存的节点上会立即启动。

启用镜像缓存后,用户添加modelCacheConfig并开启imageCache,Operator会创建DaemonSet将容器镜像预拉到所有目标节点。与权重缓存不同,镜像缓存不阻塞部署创建:Pod启动时若镜像已缓存则完全跳过ECR拉取,省下 5 至 7 分钟;若该节点镜像缓存尚未完成,则照常从ECR拉取。多个使用同一容器镜像的部署共享一个镜像缓存资源,Operator跟踪引用计数,仅在没有部署引用时才清理缓存镜像。

  • 权重缓存:预下载权重到本地NVMe,全部目标节点cache-ready后才创建推理部署
  • 镜像缓存:通过DaemonSet预拉取容器镜像,不阻塞部署创建,多个部署共享同一镜像缓存
  • 缓存配置持久保留在同一节点上,Pod重启后仍可用
  • 两个CRD(ModelDataCacheConfig、ModelImageCache)由Operator自动创建和管理,用户无需直接创建

缓存未命中时回退为正常下载

AWS说明,两项缓存能力都采用偏好调度(preferred scheduling)而非强制调度。Pod会优先选择有缓存数据的节点,但永远不会因为缺少缓存而无法启动。当调度器把Pod放到没有热缓存的节点上——例如扩缩容速度超出了已缓存节点数量——它会从原始S3/FSx来源读取权重,并从ECR拉取镜像,行为与未启用缓存时相同。AWS强调这不会导致失败、无需人工干预,除正常下载时间外没有其他性能降级。

当模型来源发生变化(例如指向带有更新权重的S3新路径)时,Operator会创建新缓存、滚动更新部署,然后清理旧缓存;镜像变更同理,AWS称这保证了零停机切换且不残留过期数据。

  • 偏好调度:Pod优先落在缓存节点,但不会因无缓存而被阻塞
  • 缓存未命中时回退至原始S3/FSx权重来源和ECR镜像拉取
  • 来源变更时自动创建新缓存、滚动更新部署并清理旧缓存

基准数据与实例存储要求

AWS公布的基准测试覆盖 57 至 145 GB的模型:启用权重缓存后,扩容速度约提升 60%;镜像缓存可消除两分钟以上的镜像冷拉取时间,相比每次Pod启动都从ECR新拉通常可减少约 97%。AWS表示收益随模型规模增大而增加,因为原本需要通过网络下载的数据量成比例更多;对DeepSeek-R1这类 600+ GB模型,相当于省去原本 30 分钟以上的下载。

由于权重缓存把权重存放在本地NVMe,实例类型必须有足够容量容纳模型。AWS给出的参考:ml.g5.xlarge为 250 GB,ml.g5.12xlarge为 3,800 GB,ml.g5.48xlarge为 7,600 GB,ml.p4d.24xlarge为 8,000 GB,ml.p5.48xlarge为 30,000 GB。

  • 57–145 GB模型:权重缓存使扩容速度约提升 60%
  • 镜像缓存:相比每次从ECR新拉,通常最高减少约 97% 的冷拉取时间
  • 实例NVMe参考:ml.g5.xlarge 250 GB、ml.g5.12xlarge 3,800 GB、ml.g5.48xlarge 7,600 GB、ml.p4d.24xlarge 8,000 GB、ml.p5.48xlarge 30,000 GB

AWS列出的限制与清理行为

AWS提醒了几项使用限制。权重缓存是按节点存储的,每个节点保留自己的一份权重副本,这是本地访问的设计使然,但NVMe消耗会随节点数量增长。首次为某个模型启用缓存仍需从远程来源完成一次下载,之后这些节点上的Pod才从本地存储启动。NVMe容量有限,如果模型为 300 GB而实例只有 250 GB NVMe,缓存无法工作,需要根据模型大小选择实例类型。

来源更新不会被自动检测:如果用户在同一Amazon S3路径下更新了模型文件但没有改动InferenceEndpointConfig规格,Operator会继续使用缓存版本;要启用新权重,必须更新规格,例如更改模型路径或添加版本后缀。

清理方面,删除InferenceEndpointConfig或JumpStartModel资源时,Operator会自动移除集群中所有缓存数据、DaemonSet和节点标签,无需手动清理,NVMe存储会被释放给其他工作负载。

  • 权重缓存按节点复制,NVMe占用随节点数增加
  • 首次启用需支付一次性远程下载成本
  • 模型大小必须不超过实例NVMe容量,否则无法缓存
  • 同一S3路径下更新文件不会被感知,需修改规格触发新缓存
  • 删除父资源后Operator自动清理缓存、DaemonSet和节点标签

启用方式与模型来源支持

AWS给出的启用方式是在现有InferenceEndpointConfig或JumpStartModel资源中增加modelCacheConfig配置段并应用,无需额外基础设施。两项能力可独立启用:若只想缓存镜像,可省略weightsCache或将其设为false。权重缓存还支持可选的hostPath覆盖,用于指定非默认的NVMe挂载路径,默认路径为 /opt/dlami/nvme;若在Amazon SageMaker JumpStart上配置,该配置会随每次JumpStart部署沿用。

在模型来源支持上,Amazon S3、Amazon FSx for Lustre、HuggingFace Hub、Amazon SageMaker JumpStart(非门控)和Amazon SageMaker JumpStart(门控)均同时支持权重缓存和镜像缓存。

  • 启用方式:在部署规格中添加modelCacheConfig,Operator自动处理其余步骤
  • 可只开镜像缓存(省略weightsCache或设为false)
  • 权重缓存支持自定义NVMe挂载路径(默认为 /opt/dlami/nvme)
  • 支持的来源:S3、FSx for Lustre、HuggingFace Hub、JumpStart(门控与非门控)均支持权重和镜像缓存

信息来源