并非所有令牌都值得缓存:学习语义感知的LLM前缀缓存驱逐策略

arXiv cs.LG 论文

摘要

一种针对LLM前缀缓存的新型语义自适应驱逐策略,学习不同令牌类型间的令牌重用模式,相比现有策略实现了1.4倍至2.7倍的TTFT提升。

arXiv:2605.18825v1 公告类型:新 摘要:前缀缓存是大语言模型(LLM)服务中的一项关键优化,它通过重用具有共享提示前缀的请求中的注意力键值(KV)状态,来减少昂贵的预填充计算。然而,由于GPU内存稀缺,其效益严重依赖于驱逐策略,而现有的策略如LRU在很大程度上统一对待缓存块。这种观点忽略了LLM提示的一个基本属性:并非所有令牌都同样值得缓存。我们表明,提示中的不同令牌类型,包括系统提示、用户查询、工具输出、模型响应和思维链推理,其重用率差异高达756倍,但现有的驱逐策略均未利用这一信号。在本文中,我们提出了SAECache(前缀缓存的语义自适应驱逐),这是一种语义自适应的前缀缓存驱逐策略,通过三项创新解决了这一差距:(1)一种多队列架构,将KV块路由到具有定制优先级指标的任务特定队列,同时捕获多轮请求中的会话重用和模板化单轮请求中的结构重用;(2)一种语义感知的令牌加权机制,通过驱逐反馈在线学习不同令牌类型的重用价值;以及(3)一种全自适应的在线学习方案,用于所有参数更新,包括对数正态时间参数、位置衰减指数、队列权重和元参数,从而消除了手动调优,并实现了对部署特定工作负载特征的自动适应。通过对异构工作负载的广泛评估,我们证明SAECache相比生产级基线实现了1.4倍至2.7倍的TTFT提升,而固定参数替代方案在工作负载不匹配时可能性能下降高达2.7倍——我们的自适应方法完全避免了这种失败模式。
查看原文

相似文章

混合与循环大语言模型服务中的稀疏前缀缓存

arXiv cs.LG

本文针对混合和循环大语言模型提出了稀疏前缀缓存方法,该方法在有限的检查点位置存储循环状态,从而避免密集缓存,同时最小化重计算量。在真实数据上,该方法优于标准启发式方法,尤其是在请求共享大量但非完全相同的前缀时。

KV Packet: 免重计算的上下文无关KV缓存用于大语言模型

Hugging Face Daily Papers

KV Packet 提出了一种免重计算的缓存复用框架,用于大语言模型。该框架使用可训练的软标记适配器来弥合上下文不连续性,消除了开销,同时在 Llama-3.1 和 Qwen2.5 上的性能与完全重计算基线相当。