设置 SageMaker 多模型终端节点模型缓存行为
默认情况下,多模型端点会将常用模型缓存在内存(CPU 或 GPU,取决于您拥有 CPU 还是 GPU 支持的实例)和磁盘上,以便在推理时降低延迟。只有在容器的内存或磁盘空间不足以容纳新的目标模型时,才会从磁盘上卸载和/或删除缓存的模型。
您可以更改多模型端点的缓存行为,并通过在调用 create_modelModelCacheSetting
来明确启用或禁用模型缓存。
对于不会通过模型缓存受益的使用案例,我们建议将 ModelCacheSetting
参数的值设置为 Disabled
。例如,当需要从端点提供大量模型,但每个模型只被调用一次(或很少被调用)时。对于此类使用案例,请将 ModelCacheSetting
参数的值设置为 Disabled
,允许为 invoke_endpoint
请求使用更高的每秒交易量 (TPS)(与默认缓存模式相比)。在这些使用案例中,提高 TPS 是因为 SageMaker 在 invoke_endpoint
请求后会执行以下操作:
-
从内存中异步卸载模型,并在调用模型后立即将其从磁盘中删除。
-
为在推理容器中下载和加载模型提供更高的并发度。对于 CPU 和 GPU 支持的端点,并发度是容器实例的 vCPU 数量的一个相关因素。
有关为多模型端点选择 SageMaker 机器学习实例类型的指南,请参阅多模型端点部署的实例建议。