2026-08-11 発行(読了 5 分)
実プロダクトのアーキテクチャ・使用例から AI 開発の現在地を週 3 回・1 号 1 テーマで深掘り
長時間稼働するコーディングエージェントは、いずれ必ずコンテキストウィンドウの上限にぶつかる。この「古い会話をどう畳んで続きを走らせるか」という課題に対し、直近半年で Anthropic・OpenAI・Microsoft がほぼ同時に対処したが、実装した層がそれぞれ違う。API のオプション、モデルの訓練対象、ハーネスのランタイム機能——同じ問題への解が3層に分かれたのは、この機能がどこに置いても動くという裏返しでもある。
Anthropic の Context Compaction API は、入力トークン数が設定した閾値(デフォルト15万トークン、最小5万トークン)に達すると、API 側が会話を要約して compaction ブロックを生成する。以降のリクエストでは、このブロックより前の内容は自動的に破棄され、要約から会話が継続する。クライアント側で要約ロジックを書く必要はない。
この方式の要点は、モデルの重みには一切手を入れず、API 呼び出し時のオプション(ベータヘッダーと context_management パラメータ)として提供している点にある。要約に使うプロンプトも instructions で丸ごと差し替えられるため、圧縮の挙動をアプリ側で制御できる。AWS Bedrock・Google Cloud・Microsoft Foundry でも同一仕様が使えるのは、モデル非依存でAPIレイヤーに閉じているからだ。
OpenAI の GPT-5.1-Codex-Max は、複数のコンテキストウィンドウをまたいで動作するよう訓練段階で学習した初めてのモデルだとされる。Codex アプリケーション上でコンテキスト上限に近づくと、モデル自身が重要な情報を保持しながら履歴を刈り込み、新しいウィンドウで作業を継続する。この繰り返しにより、単一タスクを24時間以上続けられたという社内評価が報告されている。
Anthropic方式との違いは、要約が外付けのAPI機能ではなく、モデルの意思決定そのものに埋め込まれている点だ。どの情報が「タスクに効くか」の判断を、汎用的な要約プロンプトではなくモデルの学習済みポリシーに委ねている。引き換えに、この挙動はそのモデル専用であり、他モデルに持ち出せない。
Microsoft は2026年6月のBuildで、Agent Framework の Harness を GA にした。ここでは自動コンテキスト圧縮が独立機能ではなく、todoリストによるplan/execute管理、ツール承認エージェント、バックグラウンドエージェントへのタスク委譲などと同じランタイム層の一部として提供される。ツール呼び出しが連続する長いループの途中でトークン使用量を監視し、上限に達する前に会話履歴を圧縮する。
API層でもモデル層でもなく、その中間の「ハーネス」に置いたのは、実運用のエージェントがそもそも生のモデルAPIを直接叩くのではなく、独自のハーネスを介して動いていることが多いからだ。圧縮だけを個別実装させるより、他のランタイム機能とまとめて提供する方がチームの重複実装を減らせる。