複数の AI Agent が LangGraph オーケストレーション層で MCP ツールと A2A 通信を介して協調するアーキテクチャ図

2026年 マルチエージェント AI アーキテクチャ:設計パターンから本番オーケストレーション完全ガイド

2026 年、単一 LLM Agent だけでは複合業務フローを安定して回せないケースが増えています。Google の Agent Bake-Off ではマルチ Agent 構成が単体比最大 6 倍の成功率を示し、AdaptOrch 研究では適応型オーケストレーションが 12〜23% の品質向上を報告しています。本稿では MAS(Multi-Agent System)の核心概念、6 大設計パターン、LangGraph/CrewAI/AutoGen の選型、MCP+A2A 通信、本番可観測性、踩坑回避、選型決定木、2026 トレンドまでを比較表と 7 手順で整理します。

1. なぜ単一 Agent では足りないのか

PoC 段階の単一 Agent は impress しますが、本番ワークロードに載せると次の 4 つの構造的限界が表面化します。

  1. コンテキストボトルネック: 長い会話履歴・大量ツール出力が 1 つのコンテキスト窓を圧迫し、重要情報が埋もれます。128K トークンでも、10 段階の調査タスクでは中間結果の喪失が頻発します。
  2. 専門能力の希薄化: 1 つの System Prompt に「コードレビュー」「法務チェック」「データ分析」を詰め込むと、どの領域も浅くなります。役割分離が品質の鍵です。
  3. 直列処理の非効率: 独立した 3 タスクを 1 Agent が順番に処理すると、並列可能な部分まで待ち時間が発生します。扇出扇入パターンで 40〜60% のレイテンシ短縮が可能です。
  4. 単点故障: 1 Agent の hallucination や tool call 失敗が全体を止めます。Supervisor-Worker 構成では Worker 単位でリトライ・置換できます。

参考数値として、Google Agent Bake-Off(2025)ではマルチ Agent チームが複合タスクで単体比最大 6 倍の成功率を示しました。AdaptOrch(2025)では動的トポロジー切替で品質が 12〜23% 向上しています。これらは「Agent を増やせば良い」ではなく、適切な分割とオーケストレーションが前提です。

2. MAS 核心概念と 3 つの制御モード

MAS(Multi-Agent System)とは、複数の自律 Agent が共有状態・通信プロトコル・オーケストレーション層の下で協調し、単体では達成困難な目標を達成するシステムです。設計時に守るべき 4 原則は次のとおりです。

  • 役割专一(Role Specialization): 各 Agent は 1 つの明確な責務を持ち、System Prompt とツールセットもそれに限定します。
  • ツール分離(Tool Isolation): Agent A は DB 読み取りのみ、Agent B は書き込みのみ、のように権限を分けます。
  • 状態分離(State Isolation): セッションキー・Checkpointer ID・MCP 接続を Agent 単位で分離し、コンテキスト汚染を防ぎます。
  • 可替換性(Replaceability): Worker Agent はモデル・プロバイダを差し替え可能に設計し、Supervisor のルーティング契約は不変に保ちます。

制御モードは大きく 3 種類に分類できます。

制御モード 特徴 適用シーン
集中式(Centralized) 1 つの Orchestrator が全タスクを分配・集約 監査要件が厳しい金融・医療フロー
分散式(Decentralized) Agent 同士が直接交渉・委譲 創造的ブレインストーム、探索的研究
階層式(Hierarchical) Supervisor → Worker → Sub-worker の多層構造 大規模コード生成、多段調査パイプライン

3. 6 大オーケストレーション設計パターン

本番 MAS 設計で最も参照される 6 パターンを、実装フレームワークの観点から整理します。

3.1 順次パイプライン(Sequential Pipeline)

Agent A → B → C と固定順序で処理します。各段階の出力が次段の入力となり、LangGraph では add_edge("researcher", "writer") で表現します。適用例:調査 → 下書き → 校閲。

3.2 並列扇出扇入(Parallel Fan-out / Fan-in)

Supervisor が 3 つの Worker に同時タスクを分配し、結果を集約します。LangGraph の Send API または AutoGen の GroupChat で実装可能です。Web 検索・DB 照会・コード解析を並列実行する際に有効です。

3.3 階層型 Supervisor-Worker

Supervisor Agent がタスク分解・Worker 選定・品質検査を担当します。CrewAI の Process.hierarchical または LangGraph の conditional edge でルーティングします。

from langgraph.graph import StateGraph, END

def supervisor_node(state):
    if state["needs_code"]:
        return "coder"
    return "researcher"

graph = StateGraph(AgentState)
graph.add_node("supervisor", supervisor_node)
graph.add_node("coder", coder_agent)
graph.add_node("researcher", researcher_agent)
graph.add_conditional_edges("supervisor", supervisor_node)

3.4 群体協調 Swarm

OpenAI Swarm や AutoGen の dynamic group chat モデルに近いパターンです。Agent が peer-to-peer でメッセージを交換し、合意形成まで反復します。創造タスク向きですが、本番では停止条件と最大ラウンド数の設定が必須です。

3.5 黑板アーキテクチャ(Blackboard)

共有メモリ(Redis、PostgreSQL JSONB)に中間結果を書き込み、複数 Agent が非同期に読み書きします。長時間バッチ処理や overnight 分析パイプラインに適しています。

3.6 混合モード(Hybrid)

実際の本番システムの 80% は混合です。例:Supervisor が並列 Worker を扇出し、結果をパイプライン後段の Writer Agent に渡す。LangGraph の Subgraph 機能で各サブフローをモジュール化できます。

4. LangGraph vs CrewAI vs AutoGen 選型マトリックス

評価軸 LangGraph CrewAI AutoGen
状態管理 Checkpointer による永続化が標準 Task 単位、カスタム Memory Conversation 履歴ベース
分岐・ループ StateGraph で明示的制御 Process 種別で制限 GroupChat 動的参加
学習曲線 中〜高(グラフ思考が必要) 低(YAML + Role 定義) 中(会話モデル理解)
本番向き度 ★★★★★ ★★★☆☆ ★★★★☆
PoC 速度 ★★★☆☆ ★★★★★ ★★★★☆
MCP 統合 公式 adapter あり カスタム Tool ラッパー Function calling 経由

選型の目安: 状態遷移が複雑で本番 SLA がある場合は LangGraph。役割ベースの迅速 PoC は CrewAI。人間参加型の対話・コード実行ループは AutoGen v0.4+ を検討してください。

5. MCP + A2A:垂直ツール接続と水平 Agent 協調

2026 年の標準構成は「MCP で下(ツール)、A2A で横(Agent)」の 2 層です。混同しないことが重要です。

  • MCP(Model Context Protocol): Agent → 外部ツール・DB・API への垂直接続。JSON-RPC 2.0 で tools/listtools/call を統一。詳細は当サイトの MCP プロトコル選型ガイド を参照してください。
  • A2A(Agent-to-Agent Protocol): Agent 同士の水平協調。Google が 2025 年に公開した Agent Card(能力・エンドポイント記述)と JSON-RPC 委譲で、Orchestrator から Worker へタスクを渡します。

Agent Card の最小構成例:

{
  "name": "code-reviewer-agent",
  "description": "PR diff のセキュリティ・品質レビュー",
  "url": "https://agent.internal/a2a/v1",
  "capabilities": ["streaming", "pushNotifications"],
  "skills": [{ "id": "security-scan", "name": "Security Scan" }]
}

MCP だけでは複数 Agent 間のタスク委譲は表現できません。A2A だけでは DB 接続はできません。両方を併用するのが正しいアーキテクチャです。

6. 本番級エンジニアリング:状態・HITL・熔断・Token 予算

Demo が動いても本番で止まる原因の多くは、オーケストレーション層の運用設計不足です。以下 7 手順で落地してください。

  1. ユースケース分解: 業務フローを 3〜8 個の専門 Agent に分割し、各 Agent の入力・出力スキーマを JSON Schema で固定します。
  2. パターン選定: 上記 §3 から Sequential / Fan-out / Hierarchical のいずれかを選び、LangGraph StateGraph で状態遷移をコード化します。
  3. MCP 接続: 各 Agent に必要最小限の MCP Server を stdio または HTTP で接続します。権限は Agent 単位で分離してください。
  4. A2A 委譲契約: Agent Card を公開し、タスク ID・タイムアウト・リトライポリシーを JSON-RPC ペイロードに含めます。
  5. 状態永続化: LangGraph の SqliteSaver または Redis Checkpointer でグラフ状態を保存し、プロセス再起動後も再開できるようにします。
  6. Human-in-the-Loop: 本番 DB 書き込み・外部 API 課金・メール送信の前に interrupt_before ノードで承認ゲートを挿入します。
  7. 熔断・Token 予算: Worker あたり最大 3 回リトライ、セッションあたり Token 上限(例:50K input / 20K output)を middleware で強制します。

参考コスト目安(2026 年 6 月):GPT-4.1 系で 5 Agent × 10 ラウンドの調査タスクは $0.80〜$2.40/回、DeepSeek V3 系なら $0.05〜$0.20/回 です。Token 予算なしでは月次請求が予測不能になります。

7. 可観測性:MAST 故障分布と分散トレース

MAST フレームワーク(2024, CMU)による本番故障分析では、マルチ Agent システムの失敗原因は次の分布が報告されています。

  • 仕様・指示の曖昧さ: 約 42%
  • Tool/API 呼び出しエラー: 約 28%
  • Agent 間協調の失敗: 約 18%
  • その他(モデル品質等): 約 12%

本番で必須の監視指標:

指標 アラート閾値(目安) ツール
End-to-end レイテンシ P95 > 60 秒 OpenTelemetry + Grafana
Tool call 失敗率 > 5% / 5 分 LangSmith / Langfuse
Token 消費 / タスク 予算の 120% 超 カスタム middleware
LLM-as-a-Judge 品質スコア < 3.5 / 5.0 定期バッチ評価
Agent ループ検出 同一状態 5 回以上 StateGraph サイクルカウンタ

各 Agent 呼び出しに trace_id を付与し、OpenTelemetry span で Supervisor → Worker → MCP tool call の因果関係を可視化してください。障害時は「どの Agent のどの tool call が失敗したか」を 30 秒以内に特定できる状態が本番の最低ラインです。

8. よくある踩坑:Demo から本番への溝

  1. コンテキスト汚染: 全 Agent が同一セッション ID を共有すると、Worker A の中間出力が Worker B の判断を歪めます。per-agent-channel-peer 相当の分離を徹底してください。
  2. 無限ループ: Swarm パターンで停止条件を設定しないと、Agent 同士が「了解しました」を永遠に交換します。最大ラウンド数(例:15)と同一状態検出を必須にします。
  3. 過度な Agent 増殖: 10 個以上の Agent はデバッグコストが指数関数的に増加します。3〜8 個を上限とし、不足能力は MCP ツールで補完してください。
  4. Demo → 本番の溝: ローカル Jupyter で動いたグラフは、Checkpointer なし・認証なし・レート制限なしでは本番 24 時間持ちません。§6 の 7 手順をすべて通過してからデプロイしてください。

9. 選型決定木

以下のフローでフレームワークとパターンを絞り込めます。

  1. タスクは直列か並列か? → 直列なら Sequential Pipeline、独立部分ありなら Fan-out/Fan-in。
  2. 動的ルーティングが必要か? → Yes なら LangGraph conditional edges または Hierarchical Supervisor。
  3. 人間承認が必要か? → Yes なら LangGraph interrupt + HITL UI。AutoGen の UserProxy も選択肢です。
  4. PoC 期限が 1 週間以内か? → Yes なら CrewAI で開始し、本番移行時に LangGraph へ移植。
  5. 外部ツール連携が主か? → MCP Server を先に構築(当サイトの MCP Server 開発ガイド 参照)。
  6. Agent 間委譲が必要か? → Yes なら A2A Agent Card を設計。No なら Supervisor 内部ルーティングで十分な場合もあります。
  7. 7×24 常時稼働が必要か? → Yes なら §10 のリモート Mac 構成へ。

2026 年後半に押さえるべき 4 トレンド:

  • 連邦型オーケストレーション(Federated Orchestration): 組織横断で Agent Card をレジストリ公開し、社内・社外 Agent を安全に委譲する構成が主流になりつつあります。
  • マルチモーダル Agent: 画像・音声・動画入力を Worker に分配する Fan-out パターンが CV・設計レビューで増加しています。
  • 適応型トポロジー(Adaptive Topology): AdaptOrch のように、実行中に Agent 数・ルーティングを動的変更する研究が実装段階に入っています。
  • EU AI Act コンプライアンス: 高リスク AI システムでは HITL ログ・説明可能性・データガバナンスの記録が 2026 年 8 月以降義務化されます。Checkpointer と監査ログは早めに設計してください。

マルチ Agent オーケストレーションは、LangGraph グラフ・MCP Server 群・ベクトル DB・OpenTelemetry Collector を同一ホストで 7×24 稼働させる前提で設計するのが現実的です。ノート PC やスポット VM では、Checkpointer 状態の喪失、MCP stdio プロセスの孤児化、夜間バッチの中断が頻発します。

本稿で整理した 6 パターン・3 フレームワーク・MCP+A2A 2 層構成は、ローカル Mac でも検証可能です。ただし本番 SLA(P95 < 60 秒、可用性 99.5%)を満たすには、launchd 常駐・統合メモリ 32GB 以上・SFTP 同期された設定管理が必要になります。

SFTPMAC のリモート Mac レンタルは、Apple Silicon の統合メモリで 5〜8 Agent + 複数 MCP Server を同一ノードに載せられ、macOS の権限モデルで allowedPaths によるツール sandbox を実現できます。OpenClaw ゲートウェイや CI 成果物と同一 Mac 上で MAS を運用すれば、設定変更から本番反映まで SFTP 一同期で完結します。マルチ Agent を「週末の Demo」ではなく、途切れない本番パイプラインとして運用するなら、7×24 リモート Mac が最もコスト対効果の高い選択肢です。