论文

让线性状态忘记遥远的过去:混合 LLM 通过后缀重放进行前缀缓存

Just Let Linear States Forget the Distant Past: Prefix Caching via Suffix Replay for Hybrid LLMs

模型推理KV Cache

摘要

混合 LLM 将全注意力层与线性注意力层交织在一起,以减少长上下文推理成本,但这种结构使前缀缓存变得复杂。全注意力 KV 缓存是词元可寻址的,而线性注意力层则维持无法回滚到任意前缀边界的循环状态。现有系统实现了循环状态检查点,将前缀重用限制在检查点对齐的位置。我们引入了 SuffixReplay,这是第一个前缀缓存系统,它允许混合 LLM 在每个缓存支持的页面边界重用缓存的前缀,而无需实现循环状态检查点。我们的主要见解是让线性状态忘记遥远的过去。现代线性注意力机制使用循环衰减和门控来减弱旧输入的影响。因此,SuffixReplay 不是对每个前缀边界设置检查点,而是通过仅重放该层输入隐藏状态的最近后缀(我们将其保留为锚点)来近似匹配边界处的状态。在算法层面,SuffixReplay 将分层和标记式锚点稀疏性与有限的重播预算相结合,以控制存储、计算和质量。在系统级别,它使用独立管理的锚点边车和流水线重放路径,将锚点移动和状态重建与本机服务管道重叠。我们在三个混合 LLM 上评估 SuffixReplay:OLMo-Hybrid-7B、Qwen3.5-4B 和 Qwen3.6-27B-FP8。在这些模型中,SuffixReplay 在 LongBench 和 RULER 上平均保留 91.4-100% 的完全预填充质量,同时仅使用 SGLang 默认 8192 个词元检查点缓存的 0.36-0.51 倍的分摊每个词元存储。 SuffixReplay 集成到 SGLang 中,可将分支工作负载的中值 TTFT 降低 15-70%,在工作集超过 HBM 时维持 2.3-4.3 倍的 SGLang 吞吐量,并在高命中连续流量上与 SGLang 相匹配。