本文深入探讨了在运用大模型时,如何通过缓存优化来提升效率。首先介绍了KV Cache在减少重复计算和首字等待时间中的作用,随后详细阐述了Prompt Cache的适用场景和限制。接着,提出了LMCache和CacheBlend等解决方案,以应对跨进程缓存复用和文档顺序变化的问题。最后,文章提供了一套实用的上线检查单,帮助读者评估是否适合引入缓存系统。对于想要提升大模型应用性能的新手程序员来说,本文提供了宝贵的优化策略和实战指导。
一个 Coding Agent 跑到第 20 轮,眼前只多了一条工具结果,发给模型的输入却可能已经塞满系统提示词、工具定义、代码文件和前 19 轮历史。
模型每次都要先把这些内容读一遍,首字越来越慢。你以为 GPU 在继续思考,其实相当一部分时间花在重复做 prefill。
Provider 的 Prompt Cache 已经能省掉稳定前缀。可一旦自己部署模型,流量跨多个推理进程、工作集装不进显存,或者 RAG 文档不断换顺序,进程内 Prefix Cache 就开始撞墙。
LMCache 想做的,是把 KV Cache 从推理进程里拆出来,变成一层能共享、能分级、能观察的基础设施。
API 用户先把 Prompt Cache 用对;自托管团队只有在“长输入、高复用、高并发、显存吃紧”同时出现时,才值得为独立 KV Cache 服务付出运维成本。
Agent 的账单,常常先花在 prefill
模型收到一段输入,先经过 prefill:每个 token 在每一层注意力里生成 Key 和 Value。它们会被留在显存里,后续每生成一个 token,直接读取此前的 K/V,不必把旧 token 全部重新算一遍。
这份中间结果就是 KV Cache。
同一个系统提示词、同一组工具定义、同一段对话前缀,它们对应的 K/V 也可以复用。命中缓存后,服务跳过那段重复 prefill,只处理新追加的输入,再进入 decode。
所以要先分清两笔账:KV Cache 省的是重复输入的计算和首字等待时间;新输入与输出 token 仍然要处理。把“缓存输入便宜 90%”写成“总成本下降 90%”,上线后一定会失望。
命中也不是免费。KV 留在 HBM,读取很快但容量小;下沉到 CPU、SSD 或远端后,容量变大,搬运和等待也跟着增加。最终比较的是两段时间:把旧 KV 取回来,还是把原输入重新 prefill,哪个更快。
短上下文、低并发、小工作集经常是后者。缓存系统越复杂,不代表延迟越低。
Prompt Cache 很划算,但它认前缀
以 Anthropic 当前公开价格为例,5 分钟缓存写入是普通输入价的 1.25 倍,命中读取是 0.1 倍。一次命中就足以覆盖那 0.25 倍的额外写入成本。
条件也很明确:可复用部分必须保持一致,并按tools → system → messages组成稳定前缀。前方改了一处,后面的缓存也会受影响。
这给 Agent 应用留下了几条很具体的优化:
- 系统提示词和工具定义放前面,别在每轮动态改写;
- 工具列表保持稳定顺序,不要随手遍历一个无序集合;
- 大段固定资料放在用户问题之前;
- 会话需要压缩时,避免频繁改动已经缓存的前段;
- 同一任务连续调用,别拖过缓存 TTL 才发下一轮。
如果你调用托管 API,先把这些做到位。没有必要一看见“缓存”两个字,就先搭一套新的分布式服务。
这里有个容易写错的细节:对话在尾部继续增长,不会自动毁掉前面的缓存。只要前缀保持一致,旧 K/V 仍能接上新一轮。麻烦来自前缀内容或顺序变化,以及多个独立片段重新组合。
比如 RAG 先取出文档 A、B、C,下一轮因为召回分数变化,顺序变成 C、A、B。三份材料都读过,拼起来却不再匹配旧前缀。又比如不同请求需要组合各自缓存过的文档,直接拼接各段 K/V 会漏掉文档之间的注意力关系。
对只在显存里维护缓存的推理服务,还有一层限制:多个数据并行进程各管一份缓存。相同上下文被路由到另一个进程,或者热数据被显存淘汰,复用机会就没了。
LMCache 把缓存做成独立服务
LMCache 的做法像给推理集群加一层专门的缓存系统。
推理引擎继续负责调度和生成;KV 可以分层留在 GPU、CPU 内存、本地 SSD 或远端存储。LMCache 的 MP 模式以独立服务运行,多个推理进程注册到同一个缓存池,于是跨进程也能找回相同上下文。
一次请求进来,推理进程先按 token 块查询缓存。命中就把 KV 拉回可用位置,只对缺失部分做 prefill;未命中则照常计算,并异步把结果写入后面的存储层。缓存服务超时也应退回正常 prefill,不能让“加速层”变成整条推理链路的单点故障。
这套设计解决了两个现实问题:
- 缓存不再和某个推理进程同生共死,重启或跨实例调度时仍有机会复用;
- 显存放不下的工作集可以下沉到更大的存储层,再异步预取回来。
代价也一并进来了:缓存键必须在不同进程间保持一致;淘汰策略要看工作集;CPU 内存、PCIe、网卡和 SSD 都可能成为新瓶颈;命中率高但取回太慢,指标看上去漂亮,用户依然在等。
LMCache 团队在 2026 年 5 月公开了一组 MI300X 测试。8 用户、32K 上下文的低负载下,工作集能放进 HBM,原生 Prefix Cache 完成 52 个请求,LMCache 只完成 25 个。多一层搬运,此时成了负担。
压力拉到 32 用户、100K 上下文后,显存开始顶不住,LMCache 的平均 TTFT 才从 HBM Prefix Cache 的 102.17 秒降到 34.59 秒,并完成 28 个请求,对方只有 12 个。
数字属于 2 张 MI300X、MiniMax-M2.5 和指定软件版本,不能抄成“部署就提速 3 倍”。它提供的工程判断更有用:工作集还在显存里时,搬缓存可能比重算更慢;工作集溢出后,分层缓存才开始还债。
文档换顺序,CacheBlend 怎么补
独立存储解决“缓存放哪儿”,还没有解决“不同文档的 KV 能不能直接拼”。
CacheBlend 处理的是后一个问题。它先复用各文档已有的 KV,再挑出受上下文影响较大的少量 token 重算,用这部分计算补回跨文档注意力。
EuroSys 2025 论文在 3 个开源模型和 3 组数据集上测试,相比完整重算与 Prefix Cache 基线,TTFT 改善 2.2–3.3 倍,吞吐提高 2.8–5 倍。作者的经验是,重算少于 15% 的 token 往往能接近完整重算质量。
“往往”两个字不能删。模型、文档相关性、任务类型变了,重算比例和质量也会变。对答案可验证的检索任务,可以先做离线评测;涉及合规、医疗、财务等高风险回答,别拿论文均值替代自己的质量门槛。
上线前,先抄这张检查单
我不会先问“要不要上 LMCache”,而会先拉出一周请求数据,看六项:
1. 每轮输入里,有多少 token 与前一轮重复;
2. Prefix Cache 的命中率和命中 token 数;
3. p50、p95、p99 TTFT,而不只看平均值;
4. 从缓存读取一段 KV 花多久,从头 prefill 又花多久;
5. 工作集是否频繁被 HBM 淘汰,CPU、SSD、网络是否还有余量;
6. 缓存服务超时或命中异常时,能否降级为正常 prefill。
API 用户如果连第 2 项都没拿到,先检查稳定前缀、TTL、工具顺序和缓存断点。
自托管团队如果发现长上下文重复率高、跨进程调度频繁、p95 TTFT 被 prefill 拉长,再做一次真实流量回放。固定模型、硬件、并发与请求集,只切换三组配置:无缓存、引擎自带 Prefix Cache、LMCache 分层缓存。
每组至少记录命中 token、缓存读取时间、prefill 时间、TTFT 分位数和完成请求数。别拿一条重复提示词的 warm hit,替代真实 Agent 工作集。
缓存不是越大越好,也不是层数越多越先进。它只在“取回旧计算”比“重新计算”更便宜时成立。
大模型的知识又多又杂,到底怎么学?
做这行久了,被问最多的问题就一个:大模型的知识又多又杂,我到底先学啥?翻了一堆资料,看啥都像重点,结果啥都没学进去。今天把我自己一路摸出来的顺序捋一遍,零基础、应届生、转行的都适用。跟着走,至少方向不乱、不瞎忙,学完拿得出手。
第一阶段(10天):初阶应用
这一阶段就一个目标:把大模型真正"玩明白",不是只会聊天那种,而是能调教它、能用代码把大模型和业务接起来。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
这阶段正式进实战,目标很实在:做出两个能拿出手的东西——一个私有知识库,一个 agent 对话机器人。
为什么要做 RAG
搭建一个简单的 ChatPDF
检索的基础概念
什么是向量表示(Embeddings)
向量数据库与向量检索
基于向量检索的 RAG
搭建 RAG 系统的扩展知识
混合检索与 RAG-Fusion 简介
向量模型本地部署
…
走完这 30 天,Python 或 JavaScript 背景的基本能独立做一套 RAG 应用,简历上也敢写"大模型应用开发"了。
第三阶段(约20天):动手微调
学到这,你已经开始 “造” 模型了 —— 通过微调,搞出垂直领域的专用小模型。
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你从 “只会用” 变成 “能造” 的 AI 小子。那么你还想往下探索吗?
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!
第四阶段(20天):商业闭环,部署落地
技术学完,落地才算数。这阶段带你搞明白大模型怎么真正跑起来、用起来。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
想要入坑大模型的朋友,给大家准备了一份2026 年最新 AI 大模型全套学习资料:
1、大模型系统化学习路线
2、大模型学习视频教程
3、大模型学习书籍&电子文档
4、AI大模型最新行业报告
5、大模型项目实战&配套源码
6、2026大模型大厂面试真题
7、为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。
8、适合谁学?
- 传统后端 / Java / 前端开发,想转型 AI 应用
- 大学生、应届生,想拿更好的 offer
- 产品经理、运营,想武装职业竞争力
- 技术负责人,想给团队落地提效
学习是反人性的,但回报是真金白银。技术会更新,赛道会切换,但只要你先动手,机会就永远站在你这边。
9、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!
好了,就写到这。路线是死的,人是活的,卡住了随时来问我。觉得有用就点个收藏,别让它进收藏夹吃灰——动起来比啥都强。