当AI"变笨"时,底层模型其实根本没变:Anthropic Claude Code 47天降智事故硬核复盘
格帕文士 · 技术深度解读 事件:Claude Code 2026年3月~4月性能退化事故 来源:Anthropic 官方博客 "An update on recent Claude Code quality reports" (2026-04-23) 影响范围:Claude Code CLI、Claude Agent SDK、Claude Cowork 修复版本:v2.1.116 (2026-04-20)
一句话总结
**Claude Code 的"降智"不是模型退化了,而是三个产品层改动把"最强大脑"绑住了手脚。**底层权重没变,API正常,推理层完好——问题出在 Harness 里:推理强度被悄悄调低、缓存清理 Bug 让模型持续失忆、一句"少说两句"的系统提示把代码质量砍了3%。47天里,开发者骂的是模型,错的却是人。
序:"Claude 变笨了"——这次不是错觉
2026年3月中旬开始,全球开发者社区突然炸了锅。
Hacker News 有人发帖吐槽,Reddit 编程板块天天有人骂,X 上更是怨声载道。"Claude Code 没以前聪明了"成了高频词。AMD 的 AI 负责人 Stella Laurenzo 甚至做了硬核分析:6852 个 Claude Code 会话文件、234760 次工具调用、17871 个 thinking block——结论是"Claude 退化了,不能再被信任完成复杂工程任务"。
第三方评测机构 BridgeMind 报告:Claude Opus 4.6 准确率从 83.3% 暴跌到 68.3%,排名从第2掉到第10。
阴谋论开始蔓延:Anthropic 是不是为了省成本故意"降智"?是不是在偷偷换模型?
4月23日,Anthropic 的回应震惊所有人:**底层模型权重没变,API正常,推理层完好。**问题出在三个看似"为用户好"的产品层改动上。
事故全景:三刀叠加的47天
| 时间 | 改动 | 影响范围 | 修复时间 | 持续天数 |
|---|---|---|---|---|
| 3月4日 | 推理强度默认从 high → medium | Sonnet 4.6, Opus 4.6 | 4月7日回滚 | 34天 |
| 3月26日 | 缓存清理优化(含 Bug) | Sonnet 4.6, Opus 4.6 | 4月10日修复 | 15天 |
| 4月16日 | 系统提示词增加长度限制 | Sonnet 4.6, Opus 4.6, Opus 4.7 | 4月20日回滚 | 4天 |
三个改动分别影响了不同的流量切片、不同的时间段。用户感受到的不是某个单一 Bug,而是不一致的、广泛的、持续的性能退化。
最关键的时间窗口:3月26日到4月7日——推理降级 + 缓存 Bug 同时生效,两把刀交叉。
4月16日到4月20日——三把刀叠加,最黑暗的四天。
第一刀:推理强度降级——"好心办了坏事"
时间:3月4日上线,4月7日回滚
发生了什么
Claude Code 2月发布 Opus 4.6 时,默认推理强度设为 high。这确实让模型很智能,但代价是:偶尔思考太久,UI 看起来像"卡死了"。
Anthropic 的解决方案:把默认强度从 high 调到 medium。
内部评估显示:medium 在"大多数任务"上智能略降,但延迟显著降低,也没有那种"界面冻结"的长尾延迟,还能帮用户省 usage limit。
听起来很合理,对吧?
问题在哪
但用户不这么想。开发者要的是智能,不是速度。你给我的默认设置是"中等聪明",那我当然觉得"Claude 变笨了"。
更坑的是:Anthropic 后面做了很多设计迭代来提醒用户"你可以调回 high"——启动时弹通知、内联强度选择器、恢复 ultrathink 模式——**但大多数用户根本没动默认设置。**人都有惰性,你设成什么,我就用什么。
这就是产品设计的经典陷阱:**默认设置即权力。**你把默认设成 medium,就等于替用户做了"我要速度不要智商"的决定。而开发者群体恰恰是一群"宁愿等也不想错"的人。
Anthropic 的承认
"This was the wrong tradeoff." (这是一个错误的权衡。)
4月7日回滚后,Opus 4.7 默认设为 xhigh,其他模型默认 high。
**教训:对 AI 编程工具来说,"聪明"比"快"更值钱。**延迟可以忍,蠢不能忍。
第二刀:缓存清理 Bug——最隐蔽、伤害最大的一刀
时间:3月26日上线,4月10日修复
原本想做什么
Claude Code 用 prompt caching 来降低成本、加快速度。用户做任务时,模型的推理过程(thinking blocks)会保留在对话历史中,这样后续轮次模型能"记得"自己之前为什么做了某个编辑。
当一个会话闲置超过1小时后,缓存会被驱逐(evict)。此时恢复会话会产生 cache miss,成本更高。Anthropic 想做一个优化:清理旧的 thinking 内容,减少 uncached token 的数量,降低用户恢复会话的成本。
设计很简单:用 clear_thinking_20251015 API header + keep:1,清理一次,然后恢复正常。
Bug 的致命之处
代码写错了一个条件。清理不是执行一次,而是在之后的每一轮对话中都持续触发。
一旦会话跨过了"闲置1小时"的阈值,后续每个 API 请求都会告诉模型:"只保留最近一块 reasoning,其他的全删掉。"
而且这还会叠加:如果你在 Claude 正在 tool use 中间发了新消息,会开启一个新的 turn,连当前 turn 的 reasoning 也会被丢弃。
用户感受到什么
Claude 像得了健忘症。它继续执行,但越来越不知道自己为什么在做这些事。表现就是:
- 重复:问你已经回答过的问题
- 前后矛盾:前面说这样改,后面又推翻
- 奇怪的工具选择:调用不相关的工具,因为忘了上下文
- Token 疯狂消耗:每轮都是 cache miss,大量 uncached token
一个用户形容得好:"就像一个每隔五分钟就失忆一次的同事,你每次都得从头跟他解释一遍项目背景。"
为什么拖了15天才发现?
Anthropic 的解释读起来让人哭笑不得:
"当时内部恰好有两个互不相关的实验在同时运行。一个是服务端的消息队列实验,另一个是思维链展示方式的改动。这两个实验的存在,恰好掩盖了这个缓存清理 Bug 的症状。"
就像病人同时吃了三种药,两种药的副作用恰好掩盖了第三种药的过敏反应。直到过敏严重到盖不住了,医生才发现。
最讽刺的细节
调查过程中,Anthropic 用最新的 Opus 4.7 去审查出问题的代码。Opus 4.7 成功发现了 Bug,而 Opus 4.6 没能发现。
某种意义上:"新版 Claude 修好了旧版 Claude 搞出来的烂摊子。"
这也引出了本文最后要讨论的话题:用 AI 审查 AI 代码,正在成为现实。
第三刀:一句"少说两句"的系统提示——蝴蝶效应的极致
时间:4月16日上线,4月20日回滚
发生了什么
Opus 4.7 相比上一代更冗长。这让它在难题上更聪明,但也产生了更多输出 token。Anthropic 在调优 Claude Code 适配 Opus 4.7 时,在系统提示词里加了一条指令:
"工具调用之间的文字保持在25个词以内,最终回复保持在100个词以内,除非任务本身需要更多细节。"
这句话的目的是:减少啰嗦。
结果
编码质量下降了3%。
事后做消融测试(逐行删除系统提示词,观察每行对输出的影响)才发现:就是这行指令,让 Opus 4.6 和 4.7 的代码评测结果下降了约3%。
更讽刺的是:这条指令经过了数周内部测试,评估集没发现退化——但上线后大范围对照实验立刻暴露问题。
深层问题
这件事暴露了 AI 产品的一个核心难题:**评估集永远覆盖不了真实使用场景的复杂度。**你在实验室测了1000道题都没问题,上线后100万个真实用户的第1001种用法就踩到了雷。
对大模型来说,系统提示词里的每一个字都可能产生蝴蝶效应。你以为只是"让它少说两句",实际上是在压缩模型的表达和推理空间。25词的约束下,模型没法充分解释自己的思考过程;100词的回复限制下,代码注释和文档被砍得支离破碎。
为什么四道测试防线都没拦住?
Anthropic 有完善的测试流程,但这次三个 Bug 都漏网了。为什么?
防线一:内部评估集——失效
内部测试显示 medium effort " slightly lower intelligence with significantly less latency"。但评估集覆盖的是"标准任务",不是"用户的第37轮对话中突然失忆"这种长尾场景。
防线二:内部 Dogfooding——失效
员工用的是内部版本,不是公开发布版。而且内部有两个实验同时在跑,恰好掩盖了缓存 Bug 的症状。
防线三:A/B 测试和灰度发布——部分失效
推理强度改动确实做了产品内通知,但用户没改默认设置。系统提示词改动虽然做了内部测试,但评估集不够广。
防线四:用户反馈监控——延迟生效
3月初就开始收到反馈,但"难以与正常的用户体验波动区分开"。直到社区大规模爆发(Stella Laurenzo 的硬核分析、BridgeMind 的评测数据、Hacker News 的千楼讨论),才确认这不是"正常波动"。
**根本问题:AI 产品的退化不是"崩了",而是"蔫了"。**它不会报错,不会500,不会红色警报。它只是"感觉没那么聪明了"——这种信号在传统监控体系里是盲区。
用 AI 审查 AI 代码:一个新范式的诞生
这次复盘中最值得关注的,不是 Bug 本身,而是修复 Bug 的方法。
Anthropic 用 Opus 4.7 回溯审查了引发缓存 Bug 的 Pull Request。给了完整代码库上下文后,Opus 4.7 成功定位到了 Bug——而 Opus 4.6 没能做到。
这意味着什么?
**AI 正在获得"审查自己代码"的能力,而且这个能力在快速进化。**4.6 看不到的 Bug,4.7 能看到了。再过一代,可能连设计层面的问题都能被发现。
这不是说人类工程师要失业了。恰恰相反,这意味着:
- AI 代码审查工具将成为标配——就像 CI/CD 一样
- 审查需要完整上下文——Opus 4.7 之所以能发现 Bug,是因为"提供了完整代码库上下文"。局部审查是不够的
- 模型迭代即审查能力迭代——每代新模型都在提升发现上一代模型错误的能力
Anthropic 已经在行动:为代码审查工具增加对额外仓库上下文的支持。这预示着未来每个代码提交前,AI 都会做一次深度审查——不是语法检查,而是逻辑和架构层面的审查。
Anthropic 的改进方案
改进一:强制 Dogfooding
更大比例的员工必须使用公开发布版 Claude Code,确保内部体验 = 用户体验。
我的看法: 方向对,但执行难。内部员工需要测试新功能,不可能百分百用公开版。关键是建立制度化的轮换机制——比如每月至少一周只用公开版,并要求写使用报告。
改进二:系统提示词消融测试
每次修改系统提示词,对每个模型跑完整评估集 + 消融测试(逐行删除观察影响)。
**这是最有价值的技术教训。**工作量巨大——一个复杂系统提示可能有几十上百行,每删一行跑一轮评测——但这个投入值得。因为这次事件证明了:对大模型来说,提示词里的每个字都可能是蝴蝶翅膀。
改进三:浸泡期和渐进式上线
任何可能牺牲智能的改动,都要经过"浸泡期"(soak period)+ 渐进式灰度。
浸泡期多长? Anthropic 没说。我觉得至少应该:
- 内部浸泡:2周
- 1% 灰度:1周
- 10% 灰度:1周
- 全量:视数据而定
对 AI 产品来说,灰度不只是技术问题,是信任问题。
改进四:AI 辅助代码审查
正如前面所说,Anthropic 正在让代码审查工具获得更多仓库上下文。这是防止同类 Bug 再次发生的关键。
Token 是怎么被偷走的?
这次事故还有一个受害者:用户的钱包。
缓存清理 Bug 导致持续 cache miss。正常情况下,相似对话上下文可以复用缓存,省时省钱。Bug 状态下每轮都是"全新"的,大量 uncached token 被疯狂消耗。
Boris Cherny(Claude Code 团队成员)在 Hacker News 上解释:极端情况下,如果用户上下文包含 90 万 token 且会话闲置一小时,发送下一条消息时会出现完全缓存未命中——这对 Pro 用户影响尤为明显。
Anthropic 的补偿:4月23日,重置所有订阅用户的使用额度。
但信任的损失不是重置额度就能弥补的。开发者花的不只是钱,是时间、是信心、是对"AI 不会突然变笨"的基本预期。
深层反思:AI 产品的"智能监控"难题
这起事故暴露了一个行业级问题:我们如何监控 AI 的"智能"?
传统软件监控看的是:
- 可用性:服务是不是 up?
- 延迟:响应快不快?
- 错误率:有没有报错?
- 吞吐量:QPS 多少?
AI 产品还需要监控:
- 推理深度:模型是不是在"认真想"?
- 上下文连贯性:多轮对话后记忆是否完整?
- 输出质量:代码/答案的质量有没有退化?
- 用户主观感受:"感觉变笨了"这种信号怎么量化?
这些问题没有现成答案。BridgeMind 的基准测试、Stella Laurenzo 的会话分析,都是社区自发填补的空白。
**Anthropic 应该建立一个"智能指数"——一组持续运行的、自动化的评估任务,每天跑一遍,监控模型在实际产品中的表现。**不是跑一次评估集就完事,是每天跑、每周对比、每月出报告。
一句话总结
**Claude Code 的47天"降智"事故,不是技术失败,是产品权衡的失败。**三个改动的出发点都是"为用户好"——加速、省钱、简洁——但叠加起来,把全球最聪明的编程 AI 之一变成了"健忘的实习生"。
核心教训:
- 默认设置即权力——不要把"中等智商"设为默认
- 缓存是双刃剑——清理记忆的优化,可能变成记忆黑洞
- 提示词无小事——一句"少说两句"能砍掉3%的代码质量
- 评估集永远不够——真实世界的复杂度,实验室测不完
- AI 审查 AI 是未来——Opus 4.7 发现 4.6 看不到的 Bug,这个趋势只会加速
对开发者来说,这起事故是一记警钟:**你感受到的"AI 变笨",可能真的不是模型退化了,而是 Harness 层有人在"好心办坏事"。**下次再觉得 AI 变笨,先别骂模型——问问产品团队最近改了什么。
参考来源:
- Anthropic 官方复盘:anthropic.com/engineering/april-23-postmortem
- VentureBeat 深度报道
- LeadDev 信任危机分析
- AMD Stella Laurenzo GitHub 会话分析
- BridgeMind 基准测试数据
- Hacker News Boris Cherny 技术解释
#ClaudeCode #Anthropic #AI降智 #AgentHarness #系统提示词工程 #缓存Bug #格帕文士 #技术深度解读
讨论回复
1 条回复推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。