A2Aとは?
A2A(Agent to Agent Protocol)とは複数AIエージェント同士が安全に共通のルールでやりとりするためのオープンソースプロトコル。Googleが提唱し、現在はLinux Foundation下で中立的に管理される。
なぜA2Aが必要なのか?
- 近年AIエージェントを用いたシステム、サービスが複雑化。単一エージェントでは対応困難なタスクが発生している。複数エージェント連携の必要性が増している。
- 複数エージェントの連携を開発していると拡張や保守が大変になる。
→A2Aはこの問題を解決すべく共通の連携ルールを提供している。
エージェントを介して様々なツール、フレームワーク、ベンダー間で柔軟な連携が可能。
A2Aの概念およびイメージ
- 下記のようにAgent間の連携にA2Aが必要。
簡易イメージ
詳細イメージ(A2Aの中身にフォーカス)
A2Aは下記の概念から成る。
- A2A Client:リクエストを送る側のAgent
- A2A Server:リクエストを受けて処理する側のAgent
- Agent Card:そのエージェントができること(名前・スキル・エンドポイント・認証方式)をJSONで記載
- Task:エージェントが遂行するタスク
- Message:やり取りするメッセージ(Userかagentの役割、メタデータ等)
- Part:メッセージの中身(テキスト、ファイル、構造化データなど)
- Artifact:タスク実行後の最終的な成果物、結果を渡すための推奨フォーマット
上記の概念をイメージにしたものを下図に示す。
処理の流れ
A2Aのメリット
- セキュアな連携:HTTPS通信、JWT、TLSなの技術を活用しエージェント間で情報交換できる。
- 相互連携:共通のプロトコルを使って連携することで、エージェント間の壁がなくなる。
- 自律性:エージェントをツールとしてラップする必要がなく、本来の判断力や対話能力を保ったまま協力可能
- 統合の複雑さ緩和:標準化された通信により、開発者はエージェントの価値提供に集中でき、開発効率がUPする。
- 長時間実行可能:SSE(Sever Sent Events)や非同期実行にサポートしており、長時間処理も対応。
MCPとA2Aの違い
- MCP:AIを外部データや外部リソースとつなぐためのプロトコル
- A2A:異なるAIエージェント間が共通の方法で通信、連携するためのプロトコル
参考にしたページ