提示缓存就是让模型把重复出现的那段提示只算一次,后面直接复用,少花钱也更快。
1. 它到底在说什么
你每次调用大模型,都要先把整段提示(系统提示、参考资料、工具定义、用户问题)读一遍、算出它内部的状态,这一步叫预填充(prefill,见 Day 056)。如果你的很多请求开头都是同一段长内容——比如一份固定的系统指令、一份每次都要带上的知识库文档——那这一步其实是在反复做同一件昂贵的事。提示缓存(Prompt Caching)干的事很朴素:模型第一次处理这段前缀时,把算好的中间结果存起来;之后凡是请求开头和这段一模一样的,就直接拿来用,不用再算一遍,并且只按折扣价收费。
打个比方:这像公司每天都要附上同一份几十页的规章制度,普通做法是每次重新排版打印;提示缓存是第一次把这份附件印好存进共享文件夹,之后每次只在后面附上当天那一页新内容,省下的是重复印几十页的纸和工时。它省的是“重复准备固定材料”的功夫,当天新写的那页还是得自己来。
2. 为什么现在这个词很热
这个想法底层并不新。早在 2023 年底,开源推理引擎 vLLM 与 SGLang 就引入了自动前缀缓存(prefix caching):SGLang 的 RadixAttention 论文于 2023 年 12 月挂出、2024 年 1 月公开,提出把请求的 KV 状