CacheBlend:一种用于RAG(检索-生成)的快速大型语言模型服务,结合了缓存知识融合技术

《ACM Transactions on Computer Systems》:CacheBlend: Fast Large Language Model Serving for RAG with Cached Knowledge Fusion

【字体: 大 中 小 】 时间:2026年03月28日 来源:ACM Transactions on Computer Systems

编辑推荐:

  大型语言模型(LLMs)常通过多文本块输入获取上下文。为加速长输入的预填充过程,可预计算KV缓存并在后续输入中复用。然而,被复用的文本块可能并非新输入的前缀,且原KV缓存未考虑跨文本块注意力,导致复用受限。本文提出CacheBlend方案,无论新旧文本块是否为前缀,均复用预计算的KV缓存,并选择性重算部分token的KV值以更新缓存。同时,将重算过程与KV缓存检索流水线化,允许在存储设备更慢但容量更大的设备中预存并快速检索缓存。实验表明,在六个开源LLM和五个基准数据集上,CacheBlend将首次生成token的时间(TTFT)缩短2.2-3.3倍,同时提升2.8-5倍推理吞吐量,且不影响生成质量。

  
要查看此由 AI 生成的摘要,您必须具有高级访问权限。

摘要

摘要

大型语言模型(LLMs)通常在其输入中整合多个文本片段以提供必要的上下文。为了加快长 LLM 输入的预填充速度,可以预先计算文本的键值(KV)缓存,并在某个上下文被重新用作另一个 LLM 输入的前缀时重用该 KV 缓存。然而,被重用的文本片段并不总是输入的前缀,这使得预先计算的 KV 缓存无法直接使用,因为它们忽略了文本与前面文本的“交叉注意力”关系。因此,重用 KV 缓存的好处在很大程度上未能得到实现。
本文仅解决了一个挑战:当 LLM 输入包含多个文本片段时,如何快速组合这些预先计算的 KV 缓存,以实现与完整预填充相同的质量(即,不重用 KV 缓存)?这一挑战在检索增强生成(RAG)中尤为突出,因为在 RAG 中,输入会通过多个检索到的文本来补充上下文。我们提出了 CacheBlend 算法,该算法可以重用预先计算的 KV 缓存(无论是否作为前缀),并选择性地重新计算一小部分令牌的 KV 值,以部分更新每个被重用的 KV 缓存。同时,重新计算某些令牌的少量额外延迟可以与同一任务中的 KV 缓存检索过程并行处理,从而使 CacheBlend 能够在存储容量较小的设备上存储 KV 缓存,而在检索过程中不增加推理延迟。通过将 CacheBlend 与六种不同大小的开源 LLM 和五个不同任务的流行基准数据集上的最先进 KV 缓存重用方案进行比较,我们发现 CacheBlend 将首次生成所需时间(TTFT)减少了 2.2–3.3 倍,并将推理吞吐量提高了 2.8–5 倍,且不会影响生成质量。代码可在 https://github.com/LMCache/LMCache 获取。

AI 摘要

AI 生成的摘要(实验性结果)

此摘要是使用自动化工具生成的,并非由文章作者撰写或审核。它旨在帮助读者发现相关内容、评估文章的相关性,并帮助来自相关研究领域的读者理解本文的工作。它旨在补充作者提供的摘要,后者仍是文章的官方总结。完整文章才是权威版本。点击此处了解更多。

点击此处对摘要的准确性、清晰度和实用性进行评论。您的反馈将有助于改进未来的版本。

要查看此由 AI 生成的简单语言摘要,您必须具有高级访问权限。

相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号