AI関連の最新ニュースをピックアップ
米Anthropicは自社技術ブログにおいて、AIコーディングエージェントの本格運用に伴い、CI(継続的インテグレーション)環境のジョブ実行量が半年間で25倍に急増した実態と、そのボトルネックとなった「テスト影響度分析(変更差分に関連するテストのみを過去の履歴に基づいて動的に選定・実行する仕組み)(Test Impact Analysis: TIA)」の全面刷新プロセスを公開しました。
エンジニアがコードを書く時間的制約が解消された結果、負荷はコード生成からテスト・検証インフラへと完全に移行しました。Anthropicは3度の対症療法的な修正(マシンスペック増強、パッケージ単位のシャーディング、日次再起動)がいずれも短期間で破綻した経験を経て、インメモリストアを活用したステートレスな水平分散アーキテクチャへと移行しました。同社は「最初から10〜20倍のAI指数関数的スケールを見越して設計すべき」とする実践的な教訓をソフトウェア業界に向けて提示しています。

Anthropicが直面した開発環境の急変と、その対応経緯として以下の事実が公表されています。
Anthropicでは、全PRに対して全テストを実行する無駄を避けるため、過去の実行履歴に基づいて実行すべきテストを決定するTIAサービスを運用していました。このサービスは「テスト結果を記録するリスナー」と「PRごとに実行対象を決定するセレクター」で構成されていましたが、単一プロセスで状態を保持していたため、結果の書き込み遅延(ラグ)が頻発しました。リスナーが20分遅れるだけで数万件のテスト結果がセレクターに反映されず、マージ済みバグの検出遅れやflakyテスト(不安定なテスト)によるマージ停止が多発しました。
開発チームはこの負荷増大に対し、段階的な修正を試みましたが、いずれも持続しませんでした。

最終的にAnthropicは、単一インスタンス前提のアーキテクチャを完全に撤廃しました。
Anthropicが試みた各アプローチの延命期間と根本的課題の整理は以下の通りです。
| アプローチ | 施策内容 | 延命期間 | 破綻原因・トレードオフ |
|---|---|---|---|
| パッチ1(垂直スケール) | マシンのCPUコア数を倍増 | 70日間 | ジョブ増加ペースがハードウェア増強の上限を即座に突破 |
| パッチ2(静的分割) | パッケージ単位でワーカーをシャーディング | 29日間 | パッケージ間の負荷偏りと全体ジョブの指数関数的増加に対応不能 |
| パッチ3(運用回避) | 平日午後の定期再起動・GC調整 | 1日未満 | メモリリーク調査不能、キュー未処理によるデータ欠落が発生 |
| 抜本再設計(水平分散) | インメモリストア導入によるステートレス化 | 恒久安定 | 運用コストは増加するが、負荷に応じた無制限の水平スケールが可能 |
今回のAnthropicの事例は、AIコーディングが開発組織に浸透した際に真っ先に直面するインフラの壁を如実に示しています。
人間がコードを書く時代は「コード生成速度」が律速段階であったため、CIは単一サーバーや単純なキューイングで十分耐えられました。しかし、AIエージェントが24時間体制で小規模PRを乱発する時代においては、「コード検証・テスト速度」こそが最大のボトルネックとなります。
Anthropicが指摘するように、初期設計(v0)の段階から「想定負荷の10〜20倍」を見越し、プロセス内ステートを排除した水平分散構造を採用することが、これからのAIネイティブなソフトウェア開発において不可欠な設計標準になると考えられます。
引用元:Claude