论文

排练一切,不记住任何内容:Attic-KV 排练将要阅读的内容

Rehearse Everything, Remember Nothing: Attic-KV Rehearses What Will Be Read

模型推理KV Cache

摘要

许多键值 (KV) 缓存在人们知道将要请求什么之前就被压缩了:缓存用于检索的文档、跨请求共享的提示前缀、长对话的内存。流行的方法通过演练对 KV 条目进行评分:模型重新读取上下文并保留它所关注的条目,假设缓存演练其上下文越完整,它记住的就越好。我们证明,在预算紧张的情况下,这种假设会适得其反:排练一切,什么都不记得。在 3% 的保留率下,重读整个上下文在 RULER 上保持了 96.5 分中的 31.5 分,而在 LongBench 的自然文本任务上,它低于完全不排练的方法。原因是缓存保留了它排练的内容:重读会将预算分散到整个上下文中,因此答案自己的条目幸存下来只是偶然。就像考试前的学生一样,缓存通过自我测试比重读记住更多。遵循两个原则:排练将要阅读的内容,并尽可能多地排练。我们将它们实例化为Attic-KV(简称Attic),一个 免训练的排练,其中模型使用引用上下文的问答对以及内容自适应数量的锚标记来自我测验。仅更改排练就可以提升以三种不同方式评分的三台主机:在我们在 RULER 和 LongBench 的自然文本任务上测试的所有八种设置中,单独使用 Attic 是最好的免训练方法,并将其插入基于梯度的 KVgrad 和经过训练的 RestoreKV+ 中,它将它们分别提高了 17.1 和 28.1 分。它的优势随着预算的缩减而增长,在 3% 的保留率下,比完全重读高出了 41.9 个百分点,而且它比重读整个上下文的压缩速度更快。