DoPR: Reusable Compressed Document Prefixes for Efficient LLM Reranking
Beiya Dai, Yifan Wei, Guang Yang, Xing Shi, Xinbing Wang, Zhouhan Lin
cs.IR
2026-09-03
DoPR 把文档侧计算离线压成少量前缀 KV 态,在线只处理查询,文档内存省 8 倍、延迟最高快 8 倍,NDCG@10 保留 97-99.5%。
pointwise 重排是检索管线里最常用的范式:每个查询-文档对独立打分,好并行好批处理,但同一个文档会被不同查询反复检索到,而标准做法每次都把全文重新编码一遍。文档侧的重复计算是在线延迟和显存的主要瓶颈。已有两条省钱的路,提示压缩和 token 剪枝压的是单次推理成本,换一个查询还得重算;ColBERT 式预计算文档表示用在检索匹配阶段,没进 LLM 重排器的内部状态。空档就在这:pointwise LLM 重排内部的文档计算能不能复用?
DoPR 的思路是把文档侧计算整体搬离线,在线只算查询:
推理前缀预算可以和训练预算解耦,部署时按需调质量-成本。压缩比固定 8 倍(保留 12.5% 文档 token)。
Qwen3 0.6B/4B/8B 三个规模,TREC DL+BEIR+BRIGHT:
| 设置 | 质量保留 | 文档内存 | 延迟 |
| DL/BEIR 0.6B | 97.1% | 8.0×↓ | 1.21×↑ |
| DL/BEIR 8B | 99.5% | 8.0×↓ | 1.84×↑ |
| Covid 8B(长文档) | 100.1% | 8.0×↓ | 8.04×↑ |
| BRIGHT 0.6B | 98.6% | 8.0×↓ | 平均 4.89×↑ |
规律很清晰:模型越大对前缀瓶颈越耐受,文档越长加速越猛(短文本文档只有 256 token,压缩后瓶颈转移到了查询侧,只快 1.2 倍)。0.6B 在 Touche、Signal 这类难集上掉得多,4B 以上基本打平,个别数据集还反超全文档基线。换到 Llama-3.2-1B 保留 97.5%,不挑架构。选择策略消融里注意力 top-K 胜过取前 K、均匀 K、随机 K。
对 RAG 和检索系统,这把「同一文档服务多查询」的复用从检索层推到了重排器内部,KV 状态成了可索引的资产。8 倍文档内存减免对高吞吐在线服务是实打实的成本数字。方法和 KV cache 机制正交于具体骨干,0.6B 到 8B 都吃这套。前缀预算可离线调整不重训,部署灵活性高。
收益依赖文档被反复检索:快速变化的语料或一次性文档只剩压缩收益,没有复用收益,论文在 Limitations 里自己说了。离线构造和前缀存储是新增的索引成本,换架构或换重排器就要全量重算,存储量随目录线性涨。0.6B 规模在分布外数据上掉 3-9%,小模型对信息损失更敏感。更根本的问题论文没碰:8 倍压缩是全局经验值,不同域的最优压缩比、以及「压缩丢掉的到底是什么信息」,只有 Ktrain 扫描的间接证据。跨查询复用的摊销分析是构造性负载,真实检索流量的复用分布没测。