支持缓存的 44 个模型:怎么用才真的省钱
站内 44 个模型支持上下文缓存:命中缓存的部分按缓存读价格计费(明显低于输入价),写入按缓存写价格计费;命中前提是提示词前缀完全一致。
更新于 2026-11-14 · SageLib 团队 · 标签:cache、cost、prompt
结论要点
- 缓存按「前缀」匹配,中间改一个字就失效
- 把稳定内容放前面(系统提示、代码库、文档),可变内容放最后
- 缓存写入有最小长度要求,太短的提示词不会命中
缓存的收益来自「同一段前缀被反复读取」,所以关键不是开不开,而是怎么组织提示词。
命中规则
- 缓存按前缀匹配:从头开始逐字比对,中途改一个字,后面的全部失效;
- 命中部分按缓存读价格计费,未命中部分按输入价计费;
- 缓存写入按写入价格计费,部分模型区分 5 分钟 / 1 小时两档(价目表里写作
ttl_5m/ttl_1h); - 提示词太短时不会写入缓存(各厂商都有最小长度要求)。
怎么把缓存用出效果
- 稳定内容放前面:系统提示、规则、代码库、参考文档;
- 可变内容放最后:用户问题、时间戳、随机 ID;
- 不要在开头插时间:
当前时间:…这种写法会让前缀每次都变,缓存永远不命中; - 同一模型复用:缓存是按模型隔离的,换模型等于重新开始。
哪些场景收益最大
| 场景 | 为什么有效 |
|---|---|
| 固定角色的客服/助手 | 系统提示很长且完全不变 |
| 代码问答 | 代码库作为前缀反复被读 |
| 长文档多轮追问 | 文档不变、问题在变 |
支持缓存的模型清单可以在模型广场按「上下文缓存」能力筛出来,具体单价见 模型价格表 的「缓存读 / 缓存写」两行。
参考来源
常见问题
为什么缓存一直没命中?
常见原因是前缀不稳定:时间戳、随机 ID、每轮变化的问候语放在最前面,会让前缀每次都不同。
缓存写入本身收费吗?
收费,但写一次、读多次就划算。只读一次的长提示不必刻意开缓存。