💫

Agent2Agent Protocol (A2A)発表

に公開

はじめに

ラスベガスで行われているGoogle Cloud Next 2025でA2Aと呼ばれるAgent同士を連携させる新たなプロトコルの発表がありました。

この記事では今回発表されたA2Aについての内容を簡単にまとめます。
https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/

AIエージェント連携の新時代

AIエージェントは日常業務や複雑なタスクを自律的に処理し、生産性向上に貢献しています。企業ではこうしたエージェントを活用して、注文処理から顧客サービス支援、サプライチェーン計画まで様々なプロセスを自動化しています。しかし、真の価値を引き出すには、異なるベンダーやフレームワークで構築されたエージェント同士が、サイロ化されたシステムを超えて連携できることが不可欠です。この相互運用性により、自律性と生産性が向上し、長期的コストも削減されます。

Agent2Agent(A2A)プロトコルの発表

今回、新しいオープンプロトコル「Agent2Agent(A2A)」が発表されました。このプロトコルは、Atlassian、Box、Cohere、Intuit、Langchain、MongoDB、PayPal、Salesforce、SAP、ServiceNow、UKG、Workdayなどの50以上のテクノロジーパートナーと、Accenture、BCG、Capgemini、Cognizant、Deloitte、HCLTech、Infosys、KPMG、McKinsey、PwC、TCS、Wiproなどの主要サービスプロバイダーからの支援と貢献を受けています。

A2Aプロトコルにより、AIエージェントは相互に通信し、情報を安全に交換し、さまざまな企業プラットフォームやアプリケーション上でアクションを調整することができるようになります。
A2Aフレームワークは、AIエージェントが企業アプリケーション全体にわたって連携できるようになるため、ユーザに大きな価値をもたらすと考えられています。

A2Aプロトコルの設計原則

A2Aは、フレームワークやベンダーに関係なく、エージェントが相互に協力するための標準的な方法を提供するオープンプロトコルです。
パートナーとプロトコルを設計する際、以下の5つの主要原則が採用されました

  1. エージェントの能力を活用する:A2Aは、メモリ、ツール、コンテキストを共有していなくても、エージェントが自然な非構造化モダリティで協力できるようにすることに焦点を当てています。エージェントを「ツール」に限定することなく、真のマルチエージェントシナリオを実現します。

  2. 既存の標準に基づく:プロトコルはHTTP、SSE、JSON-RPCなどの既存の一般的な標準の上に構築されており、企業が日常的に使用している既存のITスタックとの統合が容易になります。

  3. デフォルトで安全:A2Aは、エンタープライズグレードの認証と承認をサポートするように設計されており、リリース時にはOpenAPIの認証スキームと同等の機能を持っています。

  4. 長時間実行タスクのサポート:A2Aは柔軟性があり、迅速なタスクから、人間がループに入っている場合に数時間または数日かかる可能性のある深い調査まで、あらゆるシナリオを完了するのに優れています。このプロセス全体を通じて、A2Aはユーザーにリアルタイムのフィードバック、通知、状態更新を提供できます。

  5. モダリティに依存しない:エージェントの世界はテキストだけに限定されていないため、A2Aは音声やビデオストリーミングなどのさまざまなモダリティをサポートするように設計されています。

技術的なドキュメントもすでに用意されています。
https://google.github.io/A2A/#/documentation

A2Aの仕組み

A2Aは「クライアント」エージェントと「リモート」エージェントの間の通信を容易にします。
クライアントエージェントはタスクの策定と伝達を担当し、リモートエージェントはそれらのタスクに基づいて行動し、正確な情報を提供するか正しいアクションを取ることを試みます。この相互作用にはいくつかの重要な機能が含まれています:

  1. 機能の発見:エージェントはJSON形式の「エージェントカード」を使用して自分の機能を通知でき、クライアントエージェントはタスクを実行できる最適なエージェントを特定し、A2Aを活用してリモートエージェントと通信できます。

  2. タスク管理:クライアントとリモートエージェント間のコミュニケーションはタスクの完了を目的としており、エージェントはエンドユーザーの要求を満たすために作業します。この「タスク」オブジェクトはプロトコルによって定義され、ライフサイクルを持っています。タスクは即座に完了することも、長時間実行タスクの場合は、各エージェントが通信してタスク完了の最新状況を互いに同期させることもできます。タスクの出力は「アーティファクト」と呼ばれます。

  3. コラボレーション:エージェントは互いにメッセージを送信して、コンテキスト、返信、アーティファクト、またはユーザーの指示を伝達できます。

  4. ユーザーエクスペリエンスのネゴシエーション:各メッセージには「パーツ」が含まれており、これは生成された画像などの完全に形成されたコンテンツの一部です。各パーツには指定されたコンテンツタイプがあり、クライアントとリモートエージェントが必要な正しい形式をネゴシエーションし、ユーザーのUIの機能(iframes、ビデオ、Webフォームなど)のネゴシエーションを明示的に含めることができます。

実用例

発表された記事の中でA2Aプロトコルの活用例として、採用プロセスが挙げられています。
採用マネージャーのエージェントが候補者検索エージェントに連携し、さらに面接スケジューリングエージェントやバックグラウンドチェックエージェントと連携することで、採用業務全体を効率化できます。このように複数のシステムをまたぐ業務プロセスが、A2Aによって簡素化される可能性があります。

エージェントの相互運用性の今後

A2Aプロトコルは、異なるシステム間でのエージェントの連携を標準化することで、企業のワークフロー自動化に実用的な進展をもたらす可能性があります。
このプロトコルにより、異なるベンダーやフレームワークで開発されたエージェントが連携して、複数のシステムにまたがる業務プロセスを効率化できるようになることが期待されています。
現在、このプロトコルはオープンソースとして公開されており、パートナー企業やコミュニティからの意見を取り入れながら開発が進められています。開発者は仕様ドラフトの確認、コードサンプルの試行、A2Aウェブサイトでの実装例の閲覧などができます。
開発チームは複数のパートナー企業と協力しながら、今年後半に本プロトコルの製品版を公開する計画を進めています。

以下のgithubリポジトリにA2Aが公開されています。
https://github.com/google/A2A

デモ用のマルチエージェントwebアプリケーションも用意されています。

This demo application showcases agents talking to other agents over A2A.

demoを指定の手順にしたがって起動してみたのですが...
これだけでは何ができるのかわからないのでソースコードを読む必要があるかもしれません。

まとめ

A2Aプロトコルは、企業が既に導入している異なるAIエージェントを連携させるための実用的な標準です。多くの企業が参加するこの取り組みにより、例えば、顧客からの問い合わせ対応や社内手続きなど、複数のシステムを横断する業務の効率化が進むことが見込まれます。今後の開発状況や実装事例に注目していきたいですね。

Discussion