了解了下,编程中缓存命中率的知识。
了解到Deepseek的命中率高的原因与用法,必须把代码文件放在每次提问的绝对开头 ,且一字不差。标题、寒暄都不能有。有效期经人指正,可能几小时到几天不等。
而claude则是手动标记缓存,需要用 cache_control 明确圈定 那个长文档段落,告诉系统:“这一段帮我缓存下来”。不一定在开头部分。
百万上下文,有能力构建一个庞大到足以覆盖你绝大部分工作场景的“固定前缀”,从而减少token消耗量。
Rov (Hi) 2
ds的缓存时间老长了,有时候隔天都还有,A
才是五分钟
另外A的缓存标记也必须从头到尾不能中断,给你标记权是因为他的缓存要收钱,让你自己决定缓存权
sunhong9ai (sunhong9ai) 3
deepseek自己说是5分钟,我也不太清楚。
MGS_Crazy (MGS浪疯) 4
deepseek不止五分钟吧,ds的缓存时间挺长的,官网原文如下:
其它说明
- 缓存系统是“尽力而为”,不保证 100% 缓存命中
- 缓存构建耗时为秒级。缓存不再使用后会自动被清空,时间一般为几个小时到几天
官网链接:https://api-docs.deepseek.com/zh-cn/guides/kv_cache
Claude倒真是五分钟,他们官网也有写
默认情况下,缓存的生命周期为 5 分钟。每次使用缓存的内容时,缓存都会刷新,无需额外成本。
Eic (Eic) 5
DeepSeek缓存不是5分钟,claude也不光是手动标记缓存,那是api用法,claude也能1小时缓存
一般你用cc、codex、cursor这种,都会注意前缀缓存,不会出现后面的turn改变前面turn的情况的(除了cc前面那段时间的4个数字标记问题)
sunhong9ai (sunhong9ai) 6
你的回答应该更权威。最主要的是用法,从开头算起,不能修改,完全一致。
Timtrix (tim) 7
Claude之前不是5分钟,但是后面改成5分钟了,而且听说Claude的缓存命中率对比OPENAI会更逊色
只有 claude 才是坑爹的 5 分钟;deepseek 的描述部分基本可以说是完全错误,不修改历史对话的情况下,连续对话就可以命中前缀缓存
ds是几小时到几天不等,只要连续对话即可。你随便讲没事,但是你要说自己是讲知识的话至少得准确无误吧?
sunhong9ai (sunhong9ai) 10
欢迎指教,只是想分享一些东西,如果真有意见,我可以自己删了这条消息。
Chirp (啁啾) 11
大语言模型缓存是为了用 kv cache 省下计算成本,原理上只能缓存“前缀”。如果前缀发生了任何变化,变化字段往后的缓存都会失效
按理说不论是 claude deepseek 还是其他模型,缓存命中的原理都是一样的
claude 的 cache_control 只是为了说需要把缓存做到哪里为止吧,他们家的缓存写入要额外给钱的。deepseek 是免费自动缓存
spikeR (spikeR) 12
感觉ds的缓存命中率和缓存时长都挺不错的,这几天在hermes里面给我用爽了 ![]()
关于claude的的说法也是错的。现在还没有 AI 可以在更换前缀的情况下去缓存。所以这点上A÷的缓存被ds完爆,ds免费,几小时到几天,它收费创建,只有五分钟。
我觉得分享是很好的,这里是一个社区,大家都可以说。但是我觉得你不应该用分享知识来说它,因为这并不是知识,在你修改前关于deepseek和Claude的内容几乎是完全错误。
jcc 14
claude 也必须是前缀才能缓存
和ds的区别是,claude需要在前缀做了标记才能缓存,而且做标记的会按照缓存写入计费,比正常的输入要贵
目前没有技术能做到只缓存中间
至于前缀一字不差,这个其实就是典型的连续上下文场景,连续对话或者跑agent 基本上前面的前缀都是一字不差的
koast18 (量子咸鱼K) 15
没有用,全都是前缀缓存。
这么解释你可能就理解了 deepseek 的伟大,他们以 64 token 作为一个缓存单元,所以它命中特别高。
G 和 O 是没有明说怎么个事。
A 说我们只支持自动和最多 4 个标记,缓存创建要收费,缓存 5 分钟和 1 个小时还收费不一样, 属实是最抠门。






















