更多示例#

本节提供快速示例,以帮助您开始使用 LMCache 的关键功能。

KV Cache 卸载#

KV Cache 卸载允许您将 KV 缓存从显存移动到 CPU 内存或其他存储设备。此功能在以下情况下特别有用:

  • 存在共享相同前缀的请求(例如,长系统提示、在聊天应用中重用聊天历史或缓存离线处理的数据)。

  • 显存有限,无法保存所有的 KV Cache。

通过卸载 KV 缓存,LMCache 可以减少首次令牌时间 (TTFT) 和显存周期。

有关更多详细信息,请参见 示例:将 KV Cache 卸载到 CPU

KV Cache 共享#

KV Cache 共享允许在不同的 LLM 实例之间共享 KV Cache。当满足以下条件时,此功能非常有用:

  • 在同一系统中运行多个 LLM 实例。

  • 具有相同前缀的请求可能会发送到不同的 LLM 实例。

共享 KV Cache 还通过消除不同 LLM 实例之间的冗余计算来减少 TTFT 和 GPU 计算。

有关更多详细信息,请参阅 示例:在多个 LLM 之间共享 KV Cache

分离式 Prefill#

分离式 Prefill 将预填充和解码阶段分开,使用不同的计算资源。此方法:

  • 允许为推理的每个阶段分配专用硬件

  • 在分布式环境中实现更高效的资源利用。

  • 通过优化 Prefill 和解码的不同计算模式,提高整体系统吞吐量。

这种架构在大规模部署场景中尤其有价值,在这些场景中,最大化资源效率和保持稳定的生成速度都很重要。

有关更多详细信息,请参见 示例:分离式 Prefill

独立启动器#

LMCache 独立启动器允许您将 LMCacheEngine 作为独立服务运行,而无需 vLLM 或 GPU 依赖。这在以下情况下特别有用:

  • 测试和开发环境

  • 仅 CPU 部署

  • 分布式缓存场景

  • 与自定义应用程序集成

有关更多详细信息,请参阅 独立启动器

详细示例#