コンテキスト分離の効果
対象読者: サブエージェントがなぜ品質改善につながるのか理由から理解したい方
前提知識: サブエージェントとは の基礎
サブエージェントの効果は、処理の並列化ではなくコンテキスト分離にあります。ここを理解すると、どこまで情報を渡すべきかが決まります。
指示が薄まるという問題
1つのエージェントで長い作業を進めると、履歴が積み上がります。
セッション開始時のコンテキスト
→ 指示(100%の比重)
50ステップ後のコンテキスト
→ 指示 + 大量の中間結果・試行錯誤の履歴(指示の比重が下がる)モデルは渡されたすべてを判断材料にするため、無関係な情報が増えるほど、当初の指示は相対的に埋もれます。サブエージェントは、この蓄積をリセットした状態で作業させる仕組みです。
分離で得られるもの
| 効果 | 内容 |
|---|---|
| 指示の明確さ | 無関係な履歴が混ざらず、その作業の指示だけが効く |
| 判断の独立性 | メイン側の仮説に引きずられない |
| 結果の凝縮 | 途中経過ではなく結論だけがメインへ戻る |
3つめが特に重要です。調査に100件のファイルを読んでも、メインへ返るのは結論だけで済みます。
分離で失われるもの
一方で、メイン側が持っていた文脈は届きません。
- これまでにどんな判断をして、何を却下したか
- ユーザーが途中で追加した制約
- すでに試して失敗した方法
これを補わないと、サブエージェントは却下済みの案を再び提案します。
補い方は「要約して渡す」
対処は、全履歴を渡すことではありません。それでは分離の意味が消えます。その作業に必要な前提だけを要約して渡すのが正解です。
# サブエージェントへ渡す前提の例
- 対象は src/content/docs/ja 配下のみ
- 既存のURL構造は変更しない(前回の検討で決定済み)
- 案Aは、既存リンクが壊れるため却下済み返し方も絞る
戻す側も同じです。作業ログをすべて返すと、メインのコンテキストが再び膨らみます。結論と、判断に必要な根拠だけを返します。
まとめ
- サブエージェントの本質的な効果は、並列化ではなくコンテキスト分離
- 履歴が積み上がると当初の指示が相対的に埋もれる
- 分離するとメイン側の文脈は届かないため、必要な前提だけ要約して渡す
- 返す側も、結論と必要な根拠に絞る
関連リンク
クイズ