なぜマルチエージェントアーキテクチャなのか?
従来のモノリシックなサービスやルールエンジンでは解決が難しい問題があります。それは「組み合わせ的複雑さ(Combinatorial Complexity)」です。広告キャンペーンの企画は、目標定義、ターゲティング、予算配分、スケジューリングなど、無数の変数が絡み合う多段階の意思決定プロセスです。各段階は相互に依存しており、チャネル(ダイレクト、セルフサービス)やプラットフォーム(Web、モバイル、内部ツール)ごとに微妙に異なるルールが適用されます。
このような環境で、すべてのロジックを単一のAIモデルに詰め込むことは、保守性と拡張性の悪夢です。代わりに、専門性を持つエージェントが協力する「エージェントベースのアプローチ(Agentic Approach)」は、複雑な問題をモジュール化し、並列実行を可能にし、最終的には一貫した意思決定をすべてのチャネルに投影できる解決策を提供します。本記事では、実際のサービスに適用されたマルチエージェントシステムの設計思想と実装の詳細を考察します。詳細な根拠資料はSpotify Engineering Blogでご確認いただけます。
![]()
コア設計:エージェントの役割と境界の定義
エージェントアーキテクチャの成否は、エージェント間の「境界(Boundary)」をどのように設定するかにかかっています。細分化しすぎるとオーケストレーションのオーバーヘッドが増大し、少なすぎるとモノリスになってしまいます。実務で適用した重要な原則は、「1エージェント、1つの明確な責任」でした。
エージェント分解構造
- RouterAgent(トラフィックコントローラー): ユーザーの自然言語入力を分析し、どの情報が含まれているかを迅速に判断します。『予算』と『期間』だけが言及されている場合、目標やターゲティング関連のエージェントを呼び出さないため、不必要なLLM呼び出しとコストを削減します。
- 専門解決エージェント群:
GoalResolverAgent: 『ブランド認知度を高めたい』といった漠然とした意図を、REACH、CLICKSといった定量化可能なキャンペーン目標にマッピングします。- `AudienceResolverAgent**: 『20代の音楽愛好家』を、人口統計情報と関心タクソノミーに変換します。
- `BudgetAgent**: 『$5k』、『€10,000』といった様々な形式の予算を、システム内部単位に正規化します。
- `ScheduleAgent**: 『来月』、『30日間』といった相対的な日付表現を、具体的な日付範囲にパースします。
- MediaPlannerAgent(最適化エンジン): すべての解決済み情報を統合するコアエージェントです。ヒューリスティックベースの最適化エンジンと、数千に及ぶ過去のキャンペーンパフォーマンスデータを活用し、最適な広告セットを推薦します。
![]()
実装の核心:ツールとプロンプトエンジニアリング
エージェントが現実世界のデータに基づいて意思決定を行うようにすることが最も重要でした。これを実現するため、Google ADKのFunctionToolを活用し、既存の広告サービスとデータベースを「ツール」として提供しました。
ツールベースアプローチの利点
- 幻覚(Hallucination)防止: エージェントは実際のデータ(地理的ターゲットリスト、広告カテゴリ、過去のパフォーマンス)にアクセスして推薦を生成します。
- 既存システム統合: 新しいバックエンドを構築する代わりに、既に検証済みのAPIをツールとして活用することで、迅速な実装と安定性を確保しました。
プロンプトをコードのように管理する
プロンプトエンジニアリングはソフトウェアエンジニアリングの一部となりました。小さな言葉の変更が出力の一貫性に大きな影響を与える可能性があるためです。私たちが学んだ教訓は以下の通りです:
- 出力形式を明示的に指定: エージェントがJSONや特定のテンプレートなど、決められた形式でのみ応答するように強制します。
- 具体的な例を提供: プロンプト内に「良い応答」と「悪い応答」の例を含め、モデルの理解を助けます。
- 多層防御を構築: プロンプト内でのガイダンスに加えて、出力解析段階で検証とフォールバックロジックを実装します。

結論:エージェントアーキテクチャがもたらした変化
このマルチエージェントシステムにより、メディアプラン作成時間を15〜30分から5〜10秒に短縮し、ユーザー入力フィールドを20以上から1〜3つの自然言語メッセージに削減することができました。さらに重要なのは、データ駆動型意思決定文化が定着したことです。現在、すべての推薦は人間の直感ではなく、数千の歴史的パフォーマンスデータに基づいています。
このアプローチの真の価値は、「複雑性の集中化」にあります。新しい最適化ロジックやビジネスルールが生まれたとき、複数のチャネルのワークフローを一つ一つ修正する代わりに、中央のエージェントプラットフォームのみを更新すれば、すべてのチャネルに一貫して適用されます。これは、技術的負債を減らし、製品の進化速度を高める持続可能なアーキテクチャの核心です。今後の計画としては、ストリーミング応答、マルチターン改良、A/Bテスト統合など、システムをさらに進化させていく予定です。