[Paper] PrefillShare:在多 LLM 分离式服务中实现 KV 重用的共享 Prefill 模块

发布: (2026年2月12日 GMT+8 22:59)
8 分钟阅读
原文: arXiv

Source: arXiv - 2602.12029v1

请提供您希望翻译的具体文本内容(例如摘要、章节或段落),我将为您翻译成简体中文并保持原有的格式和技术术语不变。

Source:

概述

本文介绍了 PrefillShare 系统,该系统在多个大型语言模型(LLM)使用相同的提示前缀时,能够共享相同的 “prefill” 计算和键值(KV)缓存。通过将每个模型拆分为共享的 prefill 模块和模型特定的解码模块,作者在分布式服务环境中显著减少了冗余工作,降低了尾部延迟,并提升了多代理工作负载的吞吐量。

关键贡献

  • 共享预填充模块:提出一种将大型语言模型因式分解为冻结的预填充组件(许多模型共享)和微调的解码组件(任务特定)的新方法。
  • 跨模型 KV 缓存复用:使多个模型能够复用共享预填充生成的 KV 缓存,消除重复的内存和计算开销。
  • 异构模型路由机制:设计轻量级路由器,将传入的提示匹配到合适的共享预填充实例,即使模型在规模或架构上不同。
  • 与分布式服务的集成:在 vLLM 的分布式架构之上实现 PrefillShare,将预填充和解码分布到不同的 GPU 上,以进一步降低干扰。
  • 实证收益:证明 PrefillShare 在保持完整微调精度的同时,在真实的多模型代理场景中实现约 4.5 倍的 95 百分位延迟降低和约 3.9 倍的吞吐量提升。

方法论

  1. 模型因式分解

    • 每个 LLM 在预定义的层边界处进行拆分。
    • prefill 部分(拆分之前的层)在大语料上进行短暂的联合预训练后冻结。
    • decode 部分(剩余层)针对下游任务或代理进行微调。
  2. KV 缓存生成与共享

    • 当提示到达时,共享的 prefill 模块一次性处理公共前缀,生成 KV 缓存(attention keys/values)。
    • 所有需要从该前缀继续的 decode 模块读取相同的 KV 缓存,避免重复计算。
  3. 路由逻辑

    • 轻量级路由器对提示前缀进行哈希并选择相应的共享 prefill 实例。
    • 若请求的模型其 decode 模块兼容(相同的拆分点、相似的隐藏维度),路由器直接转发 KV 缓存;否则回退到私有 prefill。
  4. 解耦部署

    • prefill 在一组 “prefill GPU” 上运行,而每个 decode 模块在其独立的 “decode GPU” 上运行。
    • 这种分离降低了传统单体服务堆栈中预填充矩阵乘法的重负载与轻量解码步骤之间的争用。
  5. 评估设置

    • 基准覆盖多个开源 LLM 系列(如 LLaMA‑7B、Falcon‑40B)以及下游任务(问答、摘要、工具调用代理)。
    • 指标包括准确率(相对于完整微调)、95 百分位延迟(p95)和吞吐量(每秒查询数)。

结果与发现

指标基线(完整微调)PrefillShare
任务准确率100 %(参考)≈ 100 %(无可测量下降)
p95 延迟1.2 s(多模型工作负载)0.27 s(≈ 4.5× 更快)
吞吐量120 qps470 qps(≈ 3.9× 增长)
KV 内存节省每模型 1×~0.2× 每模型(共享)

关键要点

  • 无精度惩罚 – 冻结前置填充模块,仅对解码进行微调,能够在广泛任务套件上保持与完整微调模型相同的性能。
  • 延迟降低 主要来源于消除重复的前置填充过程,以及通过去耦合减少的前置填充‑解码干扰。
  • 吞吐量提升 在以代理为中心的工作负载中更为显著,此类工作负载会使用相同的用户提示调用多个模型(例如,多工具编排)。

实际意义

  • 成本节约:云服务提供商可以在预填阶段运行更少的 GPU 实例,从而降低为大量启动的专用 LLM 服务的硬件支出。
  • 可扩展的代理架构:构建链式任务特定模型(检索、规划、代码生成)的 AI 代理的开发者,现在可以共享昂贵的提示编码步骤,使实时多代理流水线成为可能。
  • 部署简化:通过将预填与解码解耦,运维团队可以分配专用的“预填节点”,为多个下游模型提供服务,降低编排复杂度。
  • 内存效率:共享 KV 缓存显著降低每个模型的内存占用,使得每块 GPU 上的模型密度更高,并打开在同一硬件上服务更大模型集合的大门。
  • 兼容现有堆栈:PrefillShare 可插入 vLLM 风格的服务框架,这意味着团队可以在不重写推理流水线的情况下采用它。

限制与未来工作

  • 模型兼容性约束:预填共享要求模型在分割点之前拥有相同的架构(例如,隐藏层大小相同)。具有不同分词器或层维度的异构模型仍需单独的预填阶段。
  • 路由开销:基于哈希的路由器会增加少量延迟;在扩展到成千上万的并发代理时,可能需要更复杂的负载均衡策略。
  • 微调范围:仅对解码部分进行微调;高度依赖早期层表示的任务可能会出现轻微的准确率下降,而当前评估并未充分探讨此问题。
  • 安全性与隔离:在多租户环境中跨模型共享 KV 缓存会引发跨模型数据泄漏的担忧;未来工作可以加入加密或沙箱机制。
  • 扩展到多模态模型:本文聚焦于仅文本的 LLM;将 PrefillShare 应用于视觉‑语言或音频‑语言模型需要处理更丰富的 token 流和更大的 KV 结构。

作者

  • Sunghyeon Woo
  • Hoseung Kim
  • Sunghwan Shim
  • Minjung Jo
  • Hyunjoon Jeong
  • Jeongtae Lee
  • Joonghoon Kim
  • Sungjae Lee
  • Baeseong Park
  • Se Jung Kwon
  • Dongsoo Lee

论文信息

  • arXiv ID: 2602.12029v1
  • 分类: cs.LG, cs.DC
  • 出版日期: 2026年2月12日
  • PDF: 下载 PDF
0 浏览
Back to Blog

相关文章

阅读更多 »