动态

Claude Code遥测影响缓存,Anthropic工程师回应解释技术细节

宝玉
开发者 Can Vardar 发现,Claude Code 里如果关闭遥测(telemetry,即向 Anthropic 回传使用数据),提示缓存时间会从 1 小时骤降到 5 分钟,他算了笔账说这相当于隐私换 12 倍性能,给 Anthropic 扣了个邪恶公司的帽子。

这条推文传开后,Anthropic 工程师 Boris Cherny 出来做了详细回应。

Claude Code 的缓存策略一直是个黑盒子,Boris 的这条推文把里面的细节讲的比较清楚了,推荐可以仔细看看。

他先澄清了一个误解:1 小时缓存并不是无条件更好。缓存写入成本更高、读取成本更低,划不划算取决于你怎么用。如果你只是跑了一次查询就走了,1 小时缓存反而浪费钱,因为你付了写入的高价却没享受到反复读取的便宜价。

实际上 Anthropic 一直在根据使用场景做精细化调整。比如子任务(subagent)很少被恢复,给它 1 小时缓存纯属白花钱,所以这类查询就保留 5 分钟。API 用户目前也没有默认开启 1 小时缓存,还在测试阶段。

关掉遥测导致缓存变短,Boris 说这其实是个连带效应:遥测关闭后,客户端的实验开关也跟着失效了,系统读到的就是默认值 5 分钟。换句话说,这不是故意惩罚,是技术实现上的耦合问题。

Boris 还透露了后续计划:很快会把部分查询的客户端默认值改成 1 小时,同时提供环境变量让用户自己强制切换 1 小时或 5 分钟。

至于12 倍性能差距,Boris 说远没有那么夸张,实际节省的 Token 量并不大。
Boris Cherny
实际上1小时提示缓存是有细微差别的。写入缓存成本更高,读取成本更低。你是否能从更便宜的缓存读取中受益取决于你的使用模式——上下文窗口大小、查询是主Agent还是子Agent等。我们一直在测试一种
动态宝玉2026-04-13原文

相关内容