论文
模型在预填充时做笔记:KV 缓存可以编辑和组合
Models Take Notes at Prefill: KV Cache Can Be Editable and Composable
摘要
前缀缓存仅在完全共享的前缀上重用预填充,因此一个更改的字段会使整个下游缓存失效。然而,覆盖字段自己的键/值向量并重用其余向量会使模型作用于旧值。原因是在四个模型系列中建立的因果关系:在预填充时,模型已经将场条件结论写入下游注释中;该领域自己的键/值对决策的影响不到 1%。作为记忆结论的笔记本来阅读,有两个功能。 (1) 可编辑。一个显着的勘误修改了注释;通过思路,仅编辑字段即可恢复决策(8B 时为 1.00,约 1% 计算),而如果没有 CoT,它将被忽略。 (2)它是可组合的。这些注释是位置可移植的,因此预编译技能可以通过 RoPE 重新定位并拼接到任何上下文中,与完全重新计算(logits 余弦 0.90-0.999,十二个模型)在 O(L) 而不是 O(L^2) 首次标记时间上没有区别。统一的编辑+撰写代理保持决策相同,重新计算的延迟最多可降低 14.9 倍。该方法适用于任何每个词元注意力 KV 缓存,跨规模、量化、专家混合和多模式缓存进行验证,并通过小型适配器扩展到多个注意力变体。因为勘误表是仅追加的,所以它与生产前缀缓存组合在一起:在在线 vLLM 基准测试中,它保持前缀缓存对齐(98.5% 命中率),将 p90 首次标记时间缩短 53-398 倍。