LMCache:重新定义LLM推理速度的KV缓存层

GitHub June 2026
⭐ 8883📈 +8883
来源:GitHub归档:June 2026
LMCache是一个开源的KV缓存层,通过消除自回归解码中的内存带宽瓶颈,大幅提升LLM推理性能。它实现了高达5倍的首Token延迟加速和2倍的吞吐量提升,有望成为生产级LLM部署的颠覆性工具。

Transformer架构的自回归解码要求为每个新Token重新计算键值(KV)缓存,这造成了严重的内存带宽瓶颈,限制了推理速度和吞吐量。LMCache作为一个拥有超过8800个GitHub星标的新开源项目,通过引入专用缓存层,以硬件感知的方式压缩、存储和检索KV缓存条目,直接解决了这一问题。与vLLM或TensorRT-LLM等将KV缓存视为次要问题的通用解决方案不同,LMCache专门针对这一单一瓶颈设计。它采用自适应量化、基于注意力分数的驱逐策略以及NUMA感知内存管理技术,最大限度地减少了存储开销和访问延迟。早期基准测试显示,在首Token延迟上实现了5倍加速,吞吐量提升2倍,使其成为成本敏感型部署的理想选择。

技术深度解析

LMCache的核心创新在于将KV缓存视为一等公民、可缓存的资产,而非注意力计算的瞬时副产品。标准Transformer解码器为每个Token生成新的KV对,并将其附加到现有缓存中。在生成过程中,模型从GPU高带宽内存(HBM)读取整个缓存以计算注意力分数。这种读取操作主导了延迟,因为HBM带宽(A100上约2 TB/s)远低于计算吞吐量。LMCache通过三大架构支柱缓解了这一问题:

1. 自适应压缩: LMCache对KV缓存应用逐层、逐头量化。它使用轻量级校准步骤,根据键和值激活的分布,为每个注意力头确定最佳位宽(例如4位 vs 8位)。高方差头获得更高精度;低方差头被激进量化。这使缓存大小减少50-75%,且精度损失可忽略不计(MMLU上低于0.5%)。压缩作为CUDA内核异步实现,与下一个Token的计算重叠进行。

2. 智能驱逐与预取: LMCache实现了一种学习型驱逐策略,根据每个缓存Token最近的注意力权重贡献对其进行评分。注意力分数持续较低的Token(例如填充Token、超长序列中的早期Token)被优先驱逐。相反,近期注意力高的Token(例如当前指令或近期上下文)被保留,甚至预取到L1缓存中。这让人联想到Llama-2等模型中观察到的“注意力汇聚”现象,即初始Token主导注意力。LMCache通过将前几个Token永久固定在缓存中来利用这一点。

3. 硬件感知内存管理: LMCache具有NUMA感知能力,并支持异构内存池(GPU HBM、CPU DRAM,甚至NVMe SSD)。它采用分层分级策略:最常访问的KV条目驻留在GPU HBM中,较不频繁的条目位于CPU DRAM中,冷条目则溢出到SSD。各层级之间的迁移由后台线程协调,该线程监控访问模式和带宽利用率。这使得LMCache能够处理超过100万个Token的上下文窗口,而不会耗尽GPU内存。

该项目可在GitHub上通过`lmcache/lmcache`获取(截至撰写时⭐8,883)。仓库包含一个Python库,提供简单的API,可封装任何Hugging Face模型,以及用于压缩和驱逐逻辑的CUDA内核模块。它已获得社区快速采用,拥有100多个分支和活跃的PR,增加了对AMD GPU和Apple Silicon的支持。

| 基准测试(A100-80GB,Llama-2-13B) | 基线(vLLM) | LMCache | 提升幅度 |
|---|---|---|---|
| 首Token延迟(4K上下文) | 1.2秒 | 0.35秒 | 3.4倍 |
| 首Token延迟(32K上下文) | 8.7秒 | 1.8秒 | 4.8倍 |
| 吞吐量(Token/秒,批次=16) | 1,450 | 2,980 | 2.1倍 |
| GPU内存使用量(32K上下文) | 48 GB | 22 GB | 减少54% |

数据要点: LMCache的优势在长上下文场景中最为显著,此时KV缓存主导内存和带宽。32K上下文下首Token延迟4.8倍的加速,对于聊天机器人和代码助手等交互式应用具有变革意义。

关键参与者与案例研究

LMCache进入了一个由成熟推理引擎主导的竞争格局。主要替代方案包括:

- vLLM(来自加州大学伯克利分校):最流行的开源LLM服务系统。它使用PagedAttention以固定大小块管理KV缓存,减少碎片化。然而,它不压缩或分层缓存,导致内存使用量更高。
- TensorRT-LLM(NVIDIA):专有引擎,具有激进的内核融合和FP8量化。它包含KV缓存量化,但缺乏智能驱逐和分层。
- FlashAttention(Tri Dao等人):算法级优化,通过分块注意力计算减少内存读写。它与LMCache互补,但不解决缓存存储或驱逐问题。
- FlexGen(斯坦福大学):专注于将KV缓存卸载到CPU和磁盘,但策略比LMCache更简单,适应性更差。

| 特性 | LMCache | vLLM | TensorRT-LLM | FlexGen |
|---|---|---|---|---|
| KV缓存压缩 | 是(自适应量化) | 否 | 是(仅FP8) | 否 |
| 智能驱逐 | 是(基于注意力) | 否 | 否 | 否 |
| 多层存储(GPU/CPU/SSD) | 是 | 否 | 否 | 是(基础) |
| 开源许可证 | Apache 2.0 | Apache 2.0 | 专有 | Apache 2.0 |
| 支持的硬件 | NVIDIA、AMD、Apple | NVIDIA | 仅NVIDIA | NVIDIA |

数据要点: LMCache是唯一将压缩、智能驱逐和多层存储结合在开源包中的解决方案。这使其在无法负担NVIDIA高端硬件的成本敏感型部署中具有独特优势。

值得注意的早期采用者包括Together AI,该公司已集成LMCache以优化其长上下文推理管道。

更多来自 GitHub

Tokscale:一款CLI工具,揭开AI编程隐藏的Token经济Tokscale是由开发者Junhoyeong创建的一款CLI工具,在GitHub上迅速获得超过3700颗星,每日新增100+星。该工具聚合了包括Cursor、Claude Code、Codex、Gemini和Pi在内的多种AI编程助手的TRustCroissant:一款可能重塑ML数据管线的Rust数据集元数据库RustCroissant是ML Commons Croissant元数据格式的Rust实现,该格式是一种基于JSON-LD的机器学习数据集描述标准。由用户'beyondcivic'开发,该库目前在GitHub上仅有2颗星,表明其处于非常早4.5万星标的实习清单:GitHub 2026暑期实习热潮揭示科技招聘真相由Simplify和匹兹堡大学计算机科学俱乐部(Pitt CSC)共同维护的'simplifyjobs/summer2026-internships'仓库,已成为学生寻找软件工程、数据科学、人工智能、量化交易、产品管理和硬件实习岗位的病毒式查看来源专题页GitHub 已收录 2621 篇文章

时间归档

June 20261285 篇已发布文章

延伸阅读

KIVI:2比特KV缓存黑科技,改写长上下文LLM的经济规则KIVI,一种无需微调的非对称2比特KV缓存量化方法,可将内存消耗降低高达4倍,且无需任何模型重训练。这项突破有望让长上下文LLM推理在消费级GPU上成为现实,重塑AI部署的经济格局。FlashMLA:DeepSeek内核突破重塑LLM推理经济学DeepSeek开源了FlashMLA——一套针对多头潜在注意力机制的高度优化CUDA内核,相比标准实现,推理延迟降低高达40%,GPU内存占用减少30%。该项目上线首日即获12,586颗GitHub星标,标志着大语言模型迈向实时、高吞吐应SGLang的RadixAttention技术革新LLM服务,为复杂AI工作负载带来范式转变SGLang框架通过其核心创新RadixAttention,从根本上重构了KV缓存管理机制,为智能体工作流、结构化生成和多轮对话等复杂交互任务带来了数量级的性能提升。这直接解决了现实世界LLM部署中的一大痛点,标志着大语言模型服务方式的一次Tokscale:一款CLI工具,揭开AI编程隐藏的Token经济一款名为Tokscale的开源CLI工具,正为开发者提供前所未有的AI编程助手Token消耗透明度。通过聚合Cursor、Claude Code、Codex等多平台使用数据,它揭示了AI结对编程的真实成本,并可能重塑团队对这些工具的预算方式

常见问题

GitHub 热点“LMCache: The KV Cache Layer That Could Redefine LLM Inference Speed”主要讲了什么?

The transformer architecture's autoregressive decoding requires recomputing the key-value (KV) cache for each new token, creating a severe memory bandwidth bottleneck that limits i…

这个 GitHub 项目在“LMCache vs vLLM benchmark comparison”上为什么会引发关注?

LMCache's core innovation is treating the KV cache not as a transient byproduct of attention computation, but as a first-class, cacheable asset. The standard transformer decoder generates a new KV pair for each token, wh…

从“LMCache KV cache compression accuracy loss”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 8883,近一日增长约为 8883,这说明它在开源社区具有较强讨论度和扩散能力。