Anthropic Claude Code 质量报告更新:回归问题与修复的事后分析

在过去一个月中,Anthropic 调查了关于 Claude 响应性能下降的报告,将问题追溯到影响 Claude Code、Claude Agent SDK 和 Claude Cowork 的三项不同变更。所有三个问题已于 4 月 20 日(v2.1.116)解决,并确认核心 API 和推理层未受影响。

本文详细说明了这些回归问题的根本原因、已实施的修复措施,以及 Anthropic 为防止未来出现类似质量问题而采用的新程序性保障措施。

质量下降问题概述

汇总报告中不一致的性能下降是由三项在不同时间部署的独立且互不相关的变更引起的。最初的调查颇具挑战性,因为内部使用和评估均未立即复现所识别的问题,且这些变更影响了不同的流量片段。最终通过用户反馈解决了这些问题,使 Anthropic 能够识别并确认根本原因。

回归 1:Claude Code 默认推理强度的变更

Anthropic 撤销了 3 月 4 日做出的一项变更,该变更将 Claude Code 的默认推理强度从 high 调整为 medium。最初的变更旨在减少不成比例的延迟,并防止界面在高强度模式下看起来像冻结一样,但这种权衡导致用户报告称 Claude Code 感觉不够智能。

当 Opus 4.6 于 2 月发布时,默认推理强度设置为 high。在收到用户关于偶尔出现长尾延迟的反馈后,默认值被降低为 medium。内部测试显示,中等强度在大多数任务中智能性略低,但延迟显著减少。然而,在推出后,大多数用户保留了中等默认值,导致智能性下降的报告。因此,Anthropic 于 4 月 7 日撤销了这一决定,将 Opus 4.7 的默认强度设置为 xhigh,所有其他模型设置为 high。

回归 2:缓存优化错误导致先前推理丢失

3 月 26 日部署的一项旨在降低恢复空闲会话成本的效率改进引入了一个严重错误,导致 Claude 显得健忘和重复。设计意图是在会话空闲超过一小时后,仅清除一次旧的思考部分。然而,一个错误导致该清除操作在会话剩余时间内每一轮都会执行。

这种对思考历史的持续清除意味着后续请求仅保留最近的推理块,从而加剧了问题。这种记忆丢失表现为健忘、重复和奇怪的工具选择。此外,持续丢弃思考块导致缓存未命中,这导致了关于使用限制消耗快于预期的单独报告。该错误已于 4 月 10 日在 v2.1.101 中修复。

回归 3:为减少冗长而更改系统提示

Anthropic 撤销了 4 月 16 日添加的一项系统提示指令,该指令旨在减少 Claude Opus 4.7 的冗长性,因为该模型天生倾向于冗长。添加到系统提示中的具体指令是:

“长度限制:工具调用之间的文本保持在 ≤25 词以内。最终回复保持在 ≤100 词以内,除非任务需要更多细节。”

虽然此更改随 Opus 4.7 一起发布,但后续消融实验(从系统提示中移除行以测试影响)显示 Opus 4.6 和 4.7 的智能性均下降了 3%。该提示已在 4 月 20 日发布中立即回滚。

未来的质量保证和预防措施

为确保类似问题不太可能再次发生,Anthropic 正在其开发生命周期中实施多项结构性和程序性变更:

  • 提高内部保真度: 现在将有更大比例的内部员工使用与公共版本完全相同的 Claude Code 构建版本,而不是内部测试版本。
  • 增强代码审查: Anthropic 正在改进其内部代码审查工具,并将改进版本提供给客户。回测显示,Opus 4.7 在提供完整代码仓库时能够发现缓存错误,这表明需要更好的上下文处理。正在添加对更多仓库作为代码审查上下文的支持。
  • 更严格的提示控制: 已构建新工具,使系统提示的更改更易于审查和审计。Anthropic 将对每次系统提示更改运行广泛的逐模型评估套件,继续进行消融实验以了解每一行的影响。
  • 渐进式推出: 对于任何可能影响智能性的变更,Anthropic 将实施浸泡期、更广泛的评估套件和渐进式推出,以便更早发现问题。

SUMMARY: Anthropic 解决了 Claude Code 中三个独立的技术回归问题——涉及推理强度、会话缓存和冗长提示——并正在实施新的严格测试协议,以确保模型质量保持一致。

TITLE: Anthropic Claude Code 质量报告更新:回归问题与修复的事后分析

Sources