Anthropic Claude Code 品質ポストモーテム

Anthropicは、Claude Code、Claude Agent SDK、およびClaude Coworkにおいて、品質の低下を感じさせる原因となった3つの異なる技術的な問題を特定し、解決しました。すべての問題は4月20日(v2.1.116)までに解決されており、同社は4月23日をもって全サブスクライバーの利用制限をリセットしました。

品質低下の根本原因

Anthropicは、報告されたパフォーマンスの低下を、2026年3月から4月の間に実施された3つの個別の変更に遡って特定しました。これらの事象の間、APIおよび推論レイヤーは影響を受けていませんでした。

1. デフォルトの推論努力量の削減

3月4日、AnthropicはClaude Codeのデフォルトの推論努力量(reasoning effort)をhighからmediumに変更しました。これは、UIがフリーズしたように見える原因となるロングテールなレイテンシを削減し、ユーザーの利用制限を最大限に活用することを目的としていました。

内部評価では、medium effortがほとんどのタスクにおいて、大幅に低いレイテンシで十分な知能を提供できることが示唆されていましたが、ユーザーからのフィードバックは、知能の顕著な低下を示していました。Anthropicは4月7日にこの変更を元に戻しました。現在のデフォルト設定は、Opus 4.7ではxhigh effort、その他のすべてのモデルではhigh effortに設定されています。

2. セッションメモリとキャッシュのバグ

3月26日、1時間以上アイドル状態のセッションを再開する際のコストを削減するため、clear_thinking_20251015 APIヘッダーにkeep:1を指定して古い思考セクションをクリアする、キャッシュの最適化が導入されました。

実装におけるバグにより、再開時に一度だけ行うのではなく、セッションの残りの期間中、毎ターン思考履歴をクリアしてしまうという事象が発生しました。これにより、以下のような問題が生じました:

  • 忘却と繰り返し: Claudeは、なぜ以前の編集やツール呼び出しを行ったのかという記憶を失いました。
  • コストの増加: 思考ブロックが継続的に破棄されることで頻繁にキャッシュミスが発生し、ユーザーの利用制限を予想以上に早く消費させました。

この問題は4月10日(v2.1.101)に修正されました。Anthropicは、Opus 4.7がリポジトリの完全なコンテキストが提供された際のバックテスト中にこのバグを特定できた一方で、Opus 4..6はできなかったことを指摘しています。

3. システムプロンプトにおける冗長性の制約

4月16日、過剰な出力トークンを生成する傾向があったOpus 4.7の冗長性を抑えるために、システムプロンプトの指示が追加されました。具体的な指示内容は、より詳細な情報が必要でない限り、ツール呼び出し間のテキストを25語以下に、最終的な回答をレスポンスを100語以下に抑えるというものでした。

その後のアブレーション(ablation)調査により、この制約がOpus 4.6と4.7の両方において3%のパフォーマンス低下を引き起こしたことが判明しました。プロンプトは4月20日に元に戻されました。

今後の再発防止策

同様の退行(regression)を防ぐため、Anthropicは開発およびデプロイメントパイプラインに以下の変更を実施します:

  • 内部テスト: 内部スタッフのより多くの割合が、テスト環境をユーザー体験と一致させるため、Claude Codeのパブリックビルドと全く同じものを使用するようになります。
  • コードレビューツール: 内部のコードレビューツールの改善が進められており、改善版を顧客に提供する計画があります。
  • プロンプト・ガバナンス: Anthropicは、システムプロンプトの変更に対して、モデルごとの広範な評価、個々の行の影響を理解するための継続的なアブレーション、および新しい監査ツールを含む、より厳格なコントロールを導入します。
  • デプロイメント戦略: 知能に対するトレードオフを伴う変更は、今後、ソーク期間(soak periods)、より広範な評価スイート、および段階的なロールアウトを必要とします。
  • モデル固有のゲート設定: モデル固有の変更が対象となるモデルにのみ適用されることを確実にするため、CLAUDE.mdにガイダンスが追加されました。

Sources

関連

  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch