Efficient Serving for Dynamic Agent Workflows with Prediction-based KV-Cache Management
本文介绍了 PBKV,这是一种基于预测的系统,它动态预测大语言模型工作流中未来的智能体调用,以智能地管理和保留 GPU 内存中具有高潜力的 KV 缓存条目,从而在动态和静态工作流上均实现相对于现有基线的显著加速。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,你正在经营一家繁忙的高端餐厅厨房。在这间厨房里,大语言模型(LLMs) 是主厨,而 智能体(Agents) 则是协同工作以完成复杂订单的专用工作站(如烧烤台、沙拉吧或糕点师)。
当主厨准备一道菜时,他们会构建一个“思维上下文”(包括食材、食谱步骤和当前菜品状态)。在计算机术语中,这被称为 KV-Cache(键值缓存)。这就像主厨的备料台:如果下一步需要同样的切碎洋葱或同样的酱汁,主厨就不想重新切配和混合;他们只需取用现成的。这能节省大量时间。
然而,厨房的台面空间(GPU 显存)是有限的。你无法永远保留每一个备料台的设置。你必须决定丢弃什么,以便为新订单腾出空间。
问题:厨房的“猜谜游戏”
过去,厨房使用一条简单的规则,称为 LRU(最近最少使用):“如果某个工作站一段时间未被触碰,就将其清除。”
- 缺陷: 在动态的餐厅中,某个工作站可能会因为主厨在与顾客交谈或等待送货而暂时闲置,但随后又需要立即使用它。LRU 仅仅因为它暂时安静就将其丢弃,迫使主厨从头开始(即“重新预填充”),这既缓慢又昂贵。
另一种名为 KVFlow 的方法假设厨房经理能提前知道每个工作站的确切顺序(例如,“烧烤 -> 沙拉 -> 糕点”)。
- 缺陷: 现实生活是混乱的。有时,沙拉厨师发现生菜坏了,必须返回冰箱(即“重试循环”)。有时,糕点厨师会根据顾客的反应决定制作新甜点。顺序并非静态,而是随对话变化。当计划改变时,KVFlow 就会陷入混乱。
解决方案:PBKV(“算命”厨房经理)
作者构建了一个名为 PBKV(基于预测的 KV 缓存管理) 的新系统。PBKV 不再基于“谁最近最忙”或“昨天的计划是什么”来猜测,而是扮演一位能窥探近未来的超级聪明厨房经理。
以下是 PBKV 的工作原理,使用简单的类比说明:
1. 水晶球(预测器)
PBKV 拥有一个“水晶球”(机器学习模型),它观察当前订单和类似订单的历史记录,以预测:“主厨在接下来的 3 步中需要哪些工作站?”
- 工作原理: 它不仅仅猜测下一步(这可能会出错),而是同时猜测接下来的三步。它结合了“菜单结构”(餐厅的总体流程)与“具体订单细节”(顾客实际所说的话)。
- 类比: 如果顾客说:“我想要一个汉堡,但也许要加双倍芝士”,经理会预测:“先烧烤,然后是芝士台,如果他们改变主意,也许是面包台。”
2. “退休”工作站规则(生命周期感知的淘汰)
PBKV 有一条黄金法则:如果一道菜完成了,立即清除其工作站。
- 类比: 如果一桌客人已结账离开,你不会等待“最近最少使用”规则来清理他们的桌子。你会立即清理,以便为新客人腾出空间。PBKV 会自动识别“已完成”的工作流,并在查看其他任何内容之前回收其显存空间。这是一个巨大的胜利,因为 100% 确定这些工作站不再需要。
3. “记分牌”系统(前瞻评分)
对于仍在工作的工作站,PBKV 不只是猜测,而是计算一个分数。
- 类比: 想象每个备料台都会根据以下标准获得一个分数:“在未来几分钟内,厨房里的任何主厨需要它的概率有多大?”
- 如果预测“芝士台”很快会被 5 个不同的订单需要,它的分数就高,并保留在台面上。
- 如果“特制酱汁”仅被一个可能取消的订单需要,它的分数就低,并被移至后厨冰箱(主机内存)以节省台面空间。
4. “安全”预点单(保守预取)
有时,经理认为某个工作站很快会被需要,因此他们试图在厨师要求之前,将食材从冰箱搬到台面上。
- 类比: PBKV 在这里非常保守。只有满足以下条件时,它才会将食材搬出:
- 台面已有空闲空间。
- 不需要将任何有价值的东西踢出台面。
- 不会阻塞主送货卡车(PCIe 带宽)。
- 原因: 如果经理猜错了并搬出了错误的食材,他们可能不得不扔掉一个正确的食材以腾出空间。那将是一场灾难。PBKV 表示:“如果我们不确定,我们就不会拿有价值的东西去冒险。”
结果:更快的厨房
作者在三个不同的“厨房”(工作负载)中测试了 PBKV:
- 事实核查: 智能体验证信息的工作流。
- 代码编写: 智能体编写和修复代码的工作流(通常涉及循环/重试)。
- 财务分析: 静态工作流(用于对比)。
发现:
- 与旧的“最后使用”规则(LRU)相比,PBKV 使动态任务的厨房速度提高了 1.85 倍。
- 与 LRU 相比,它使“备料台”(缓存)保持就绪状态的频率提高了 2.55 倍。
- 即使在静态任务上与之前的最佳系统(KVFlow)相比,PBKV 的速度也快了 1.26 倍。
安全网
该论文还从数学上证明,即使“水晶球”(预测器)犯错,系统也不会崩溃。它会优雅降级。
- 类比: 如果经理的预测略有偏差,系统只会回退到一种安全的、标准的台面管理方式。它不会让情况变得比经理根本不尝试预测时更糟。
总结
PBKV 是 AI 工作流的智能厨房经理。它不再仅仅因为工具暂时安静就将其丢弃,也不再盲目猜测。相反,它向前看,立即清除已完成的工作,并且只在安全时才移动物品。其结果是,一个更快、更高效的 AI 系统,能够处理复杂且变化的任务而不会陷入停滞。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。