前缀缓存

Prefix cache

模型提供商一侧的存储机制,让连续的模型请求跳过对共享前缀的重复处理。当一次请求的开头和最近某次请求匹配——相同的 System Prompt、到某一点为止相同的历史——提供商就会复用之前的计算结果,并把这部分 Token 计为价格更低的缓存 Token。

缓存之所以划算,是因为 Session 是只追加增长的。每次请求都要把完整历史作为输入 Token 重发(原因见“输入 Token”词条),而在正常 Session 中,历史只在末尾变化——每次请求就是前一次请求加上几条新消息。提供商把长长的共同开头处理一次,保存结果,然后从前缀结束的地方继续。没有缓存,一个 50 轮的 Session 就要为第一轮重复付费 50 次。

缓存还会过期。每个条目保持“热”状态的时长因模型提供商而异——通常以分钟计,不是小时。如果 Session 空闲超过这个窗口,下一次请求就要先按全价重建一次前缀,缓存才会重新生效。这主要是 Harness 开发者关心的事;作为用户,直观感受就是:长时间暂停后的请求比暂停前更贵。

用法:

“为什么 Session 进行到一半账单突然飙升?”

“Harness 开始在每一轮把当前时间注入 System Prompt。前缀缓存在第一个变化的 Token 处就失效了,所以之后的每次请求都按全价计费。”