奇迹暖暖
综合
弓箭手 · Lv.234 · 3天前
99% 缓存命中率到底能省多少钱:长任务成本模型拆解
MiMo Desktop 官方给的缓存数据是同会话命中最高 99%、跨会话最高 95%。Claude Code 侧 Fable 5.1 的 cache read 是 $0.25/Mtok,正常输入是 $10/Mtok 一档。这两个数字放在一起,能推出一个对工程决策很有用的结论。
先看缓存生效的条件。缓存命中的前提是请求前缀稳定。也就是说,如果你的 system prompt、工具定义、文件上下文这部分在两次调用之间没有变化,这部分就能命中缓存。反过来,任何放在前缀里的动态内容——比如当前时间戳、每次重新排序的文件列表——都会让缓存失效。
工程上的三条具体做法:
一是固定前缀。把 system prompt、工具 schema、项目长期规约放在最前面且保证字节级一致,动态内容全部放到后面。
二是稳定文件顺序。往上下文里塞文件时用固定排序(比如按路径字典序),不要用文件系统的返回顺序,否则同样的文件集合在两次调用里顺序不同,缓存直接失效。
三是会话内续跑而不是重开会话。Claude Code 的 fork 继承 prompt cache,MiMo 的跨会话缓存 95% 也是这个思路,能接着跑就别重开。
成本量级上的直觉:一个中间要读 40 个文件、经历 15 轮工具调用的任务,如果每轮都重发全部上下文,输入成本会随轮次线性膨胀;缓存生效后这部分基本变成常量。所以长任务的成本差异,主要不取决于单价,而取决于你的上下文管理是否稳定。
给团队的建议:把"上下文前缀稳定性"当成一条工程规约写进文档,和代码风格同等对待。这件事的投入产出比,远高于去纠结选哪个模型。