

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

# 设置 SageMaker AI 多模型端点模型缓存行为
<a name="multi-model-caching"></a>

默认情况下，多模型端点会将常用模型缓存在内存（CPU 或 GPU，取决于您拥有 CPU 还是 GPU 支持的实例）和磁盘上，以便在推理时降低延迟。只有当容器的内存或磁盘空间不足以容纳新的目标模型时，才会从磁盘上卸载 and/or 缓存的模型。

您可以更改多模型端点的缓存行为，并通过在调用 [create\$1model](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_model) 时设置参数 `ModelCacheSetting` 来明确启用或禁用模型缓存。

对于不会通过模型缓存受益的使用案例，我们建议将 `ModelCacheSetting` 参数的值设置为 `Disabled`。例如，当需要从端点提供大量模型，但每个模型只被调用一次（或很少被调用）时。对于此类使用案例，请将 `ModelCacheSetting` 参数的值设置为 `Disabled`，允许为 `invoke_endpoint` 请求使用更高的每秒交易量 (TPS)（与默认缓存模式相比）。在这些用例中，更高的 TPS 是因为 SageMaker AI 在`invoke_endpoint`请求后会执行以下操作：
+ 从内存中异步卸载模型，并在调用模型后立即将其从磁盘中删除。
+ 为在推理容器中下载和加载模型提供更高的并发度。对于 CPU 和 GPU 支持的端点，并发度是容器实例 v CPUs 数的一个系数。

有关为多模型终端节点选择 A SageMaker I ML 实例类型的指南，请参阅[多模型端点部署的实例建议](multi-model-endpoint-instance.md)。