はじめに
A2A(Agent2Agent)は、Googleが開発したオープンソースのプロトコルであり、異なるフレームワークやベンダーによって開発されたAIインテリジェンスが相互に通信し、コラボレーションすることを可能にする。A2Aが解決する中核的な問題は、エンタープライズAIにおいてインテリジェンスが相互運用できないという課題である。プロジェクトはGitHubでホストされており、コードは無料で公開されており、誰でもダウンロードして使用したり、開発に参加することができる。グーグルは、A2Aを通じてインテリジェンスの共通言語を確立し、マルチインテリジェンス・コラボレーションを地道に推進したいと考えている。
機能一覧
- 長時間のタスク処理のために、インテリジェントボディ間のタスク作成、割り当て、ステータス追跡をサポート。
- 提供
AgentCard
インテリジェンスの能力、アドレス、認証要件をJSON形式で記録する。 - テキスト、フォーム、双方向オーディオ、ビデオなど、複数のインタラクション形態に対応。
- 非同期タスク処理がサポートされ、インテリジェンスはバックグラウンドで実行できる。
- SSE(Server Push Events)によるストリーミング機能とリアルタイムのタスクステータス更新を提供します。
- プッシュ通知がサポートされており、インテリジェンスはタスクの進捗状況をクライアントに積極的に送信できる。
- 通信セキュリティを確保し、インテリジェンス間のデータ交換を保護する。
ヘルプの使用
A2Aはオープンソースのプロトコルであり、使用する前にプログラミングの知識が必要です。ここでは、すぐに使い始めるための詳しい手順を説明します。
取得と設置
- GitHubリポジトリへのアクセス
https://github.com/google/A2A を開いてください。これはA2Aの公式ページです。最初のページのREADMEには、プロジェクトの背景と基本的なガイドラインが書かれています。 - ダウンロードコード
コマンドラインで入力:
git clone https://github.com/google/A2A.git
カタログのダウンロードと入力
cd A2A
- 依存関係のインストール
A2AはPythonとJavaScriptの両方をサポートしています。Pythonの場合、Python 3.8+をインストールして実行する必要があります:
pip install -r requirements.txt
そうでなければrequirements.txt
入場samples/python/common
特定の依存関係を表示します。
- 実行例
リポジトリにはいくつかの例がある。Python の "Expense Reimbursement" スマートボディの例を見てみましょう:
- 入る
samples/python/agents/google_adk
. - 確立
.env
ファイルに、コンフィギュレーション(例:ポート番号、詳細はREADMEを参照)を記入する。 - 走っている:
python main.py
これでベースとなるA2Aサーバーが起動する。
主な機能
1.A2Aサーバーのセットアップ
A2Aの核心は、インテリジェンスにサーバーを運営させることだ。手順は以下の通り:
- インテリジェントなボディコードを書く
Python ではA2AServer
クラス。例えば、単純なエコー・インテリジェンス:
from common.server import A2AServer
class EchoAgent(A2AServer):
def handle_message(self, message):
return {"content": {"text": f"回声: {message.content.text}"}}
- サーバーの起動
実施する:agent = EchoAgent() agent.run(host="0.0.0.0", port=8080)
その他の知性は、次のようにして識別できる。
http://localhost:8080/a2a
アクセス
2.他の知性とのつながり
A2Aはクライアント・サーバー通信をサポートしています:
- クライアントの作成
利用するA2AClient
コネクションだ:from common.client import A2AClient client = A2AClient("http://localhost:8080/a2a")
- メッセージを送る
メッセージを送るmessage = {"content": {"text": "测试消息"}, "role": "user"} response = client.send_message(message) print(response["content"]["text"])
3.AgentCardディスカバリー機能の使用
すべての知的身体はAgentCard
その機能を文書化している:
- メソッドを取得する:
curl http://localhost:8080/a2a/card
- 返されるJSONには、スマートボディの名前、機能の説明、サポートされる操作が含まれる。
4.マンデートの取り扱い
A2Aはタスク管理をサポートしている:
- 委任状の提出
タスクリクエストを送信する:task = {"task_type": "analyze", "data": "示例数据"} task_id = client.submit_task(task)
- トラッキング状態
ミッションの進捗状況を問い合わせる:status = client.get_task_status(task_id) print(status) # 如:submitted, working, completed
5.ストリーミング
サポートstreaming
クライアントがサーバーの更新をリアルタイムで受け取ることができる:
- 利用する
tasks/sendSubscribe
タスクの提出 - サーバーは、例えばSSEを介してステータスや結果を返す:
event: TaskStatusUpdateEvent data: {"task_id": "123", "state": "working"}
6.プッシュ通知
アジュバントpushNotifications
のサーバーは、プロアクティブにクライアントに通知することができる:
- ウェブフックを設定する:
client.set_push_notification_webhook("https://your-webhook-url")
- タスクが更新されると、サーバーはメッセージをプッシュする。
ほら
- 依存関係の衝突を避けるため、仮想環境で実行することを推奨する。
- サンプルコードは
samples
CrewAI、LangGraphなど様々なフレームワークを網羅したカタログ。 - ヘルプについては、GitHubのDiscussionsで質問してください。
以上の手順で、A2Aインテリジェンスを構築・実行し、その通信機能を体験することができます。
JSON形式のプロトコルファイル
https://github.com/google/A2A/blob/main/specification/json/a2a.json
アプリケーションシナリオ
- エンタープライズ・ミッション・コラボレーション
あるファイナンシャル・インテリジェンスはクレームを収集し、別の承認インテリジェンスはそれをレビューし、A2Aはそれらをシームレスに連携させてプロセスの自動化を完成させる。 - クロスプラットフォームのカスタマーサービス
一方のインテリジェンスはテキストによる問い合わせに対応し、もう一方は音声によるリクエストに対応する。A2Aは、効率向上のために両者が情報を共有することを保証する。 - 開発テスト
開発者はA2Aを使用して、多知能体の環境をシミュレートし、プロトコルやフレームワークの互換性をテストする。
品質保証
- A2Aはどの言語に対応していますか?
公式の例はPythonとJavaScriptだが、プロトコルは言語に依存せず、他の言語でも実装可能だ。 - 無料ですか?
はい、A2Aは完全にオープンソースで、コードは無料ですが、それを実行するにはサーバー料金がかかる場合があります。 - プロトコルはどのように改善されるのか?
GitHubでIssuesを提出するか、Googleフォームからプライベートなフィードバックを提供してください。
A2Aプロトコル:グーグルはAIエージェントの相互接続の未来に賭けるか?
人工知能(AI)エージェントは、企業アプリケーションにおいてコンセプトから現実へと移行しつつあり、生産性を高めるために反復的または複雑なタスクを自律的に処理することが期待されている。ITサポートの自動化からサプライチェーン計画の最適化まで、AIエージェントが企業全体に導入されるケースが増えている。しかし、異なるベンダー、異なるフレームワークで構築されたこれらのエージェントを、どのように効果的に連携させるかということが、重要なボトルネックとなっている。
現在のAIエージェントは、システムやアプリケーションの境界を越えて対話することが難しい、情報のサイロのように振る舞う傾向がある。これは、より大きな価値を提供する可能性を大きく制限している。この状況に対処するため、Google Cloudは最近、Atlassian、Salesforce、SAP、ServiceNowなどを含む50以上のテクノロジーパートナーやサービスプロバイダーとともに、Agent2Agent(A2A)と呼ばれるオープンプロトコルを開始した。
障壁の打破:A2A協定の中核的目的
A2Aプロトコルは、AIエージェントが安全に通信し、基礎となる技術や開発者に関係なく情報を交換し、行動を調整するための標準的な方法を提供することを目的としている。これは、断片化しつつあるAIエージェントのエコシステムに対する共通の「言語」と「ルール」のように聞こえる。
A2Aは、単に別のツールとして呼び出されるのではなく、より自然で非構造的なエージェント間のコラボレーションを可能にしようとしている。これは、複数のAgentが数時間、あるいは数日にわたって連携して作業する必要がある複雑なタスクを処理する上で非常に重要です。採用担当者が個人エージェントに指示を与えるだけで、そのエージェントが履歴書のスクリーニング、面接の日程調整、身元調査などを専門とする他のエージェントと自動的に連携し、すべて異なるシステムに手動で介入する必要がないことを想像してみてください。
重要なことは、A2Aは何もないところから生まれたのではなく、HTTP、SSE、JSON-RPCなどの既存の成熟した標準の上に構築されたということです。そのため、企業が既存のITアーキテクチャに統合する際の障壁が低くなる。同時に、このプロトコルはセキュリティを重視し、企業レベルの認証・認可スキームをサポートしている。さらに、テキスト、オーディオ、ビデオなど複数のモダリティをサポートすることは、将来的な応用につながる。
Googleは、A2Aの設計はAgentシステムの大規模な社内導入の経験に基づくものであり、A2Aを補完するものであると述べている。 アンソロピック 導入済み Model Context Protocol (MCP)
MCPがエージェントに必要なツールとコンテキスト情報を提供することに重点を置いているとすれば、A2Aはエージェント間の直接的なコミュニケーションとコラボレーションプロセスに重点を置いている。MCPがエージェントに必要なツールとコンテキスト情報を提供することに重点を置いているのに対し、A2Aはエージェント間の直接的なコミュニケーションとコラボレーションプロセスに重点を置いている。
A2Aはどのように機能するのか?
公開されたドラフト仕様によると、A2Aインタラクションは、「クライアント・エージェント」(タスクの開始)と「リモート・エージェント」(タスクの実行)を中心に行われる。
その核となるメカニズムには以下のようなものがある:
- 能力の発見。 リモートエージェントは、JSONの "エージェントカード "でその能力を宣言し、クライアントエージェントが適切な協力者を見つけるのに役立ちます。これは、エージェントの「イエローページ」のようなものです。
- タスク管理。 インタラクションは "タスク "の完了を指向する。プロトコルはタスクオブジェクトとそのライフサイクルを定義し、即時完了と状態同期を必要とする長時間のタスクの両方をサポートする。タスクのアウトプットは "成果物 "と呼ばれる。
- コラボレーション メッセージは、コンテキスト、返信、成果物、またはユーザーの指示を伝えるためにエージェント間で送信されます。
- ユーザー・エクスペリエンス交渉。 メッセージは、エージェントがエンドユーザのインターフェイス機能に合わせて、希望するコンテンツフォーマット(iframe、ビデオ、ウェブフォームなど)をネゴシエートできるようにする、さまざまなタイプのコンテンツ「パート」を含んでいます。
具体的な例としては、前述のソフトウェアエンジニアの採用シナリオがあります。ユーザーのエージェント(クライアント)は、採用プラットフォームのデータを扱うエージェント(リモート)、面接カレンダーのスケジュールを立てるエージェント(リモート)、その後のバックグラウンドチェックを扱うエージェント(リモート)を発見し接続し、A2Aプロトコルを介してそれらを調整し、一緒に採用プロセスを完了させます。
エコロジーと課題:オープン・プロトコルの戦略的考察
グーグル・クラウドがA2Aをオープンな契約として立ち上げ、多くの業界パートナーを結びつけるという選択は戦略的だ。
まず第一に、これはAIエージェントの分野で標準を確立し、支配力を極めたいというグーグルの野心を反映している。オープンなプロトコルを通じて幅広い参加者を集めることは、クローズドなシステムを構築する可能性のある他の競合他社に対して、Google Cloudを中心としたエージェント・エコシステムの形成を加速させることができる。
第二に、統一されたオープンな相互運用性標準は、企業顧客にとって歓迎すべきものである。それは、異なるベンダーのベスト・オブ・ブリードのAgentを混在させてマッチさせる柔軟性が高まることを意味し、単一のプラットフォームへのロックインを回避し、長期的な統合コストを削減することが期待される。数多くのパートナー(Boxから コヒーレ SAPやWorkdayからAccentureやDeloitteのようなコンサルティング大手まで、幅広いパートナーからの初期のサポートは、市場の期待を裏付けている。これらのパートナーの積極的な参加は、技術的な検証を提供するだけでなく、より重要なこととして、それぞれのプラットフォームや顧客のプロジェクトでのプロトコルの実用化を推進する上で、A2Aの成功の重要な要因となっている。
しかし、協定の成功は当然の結論ではない。課題も残っている:
- 採用のスピードと幅。 このプロトコルの価値は、広く採用されることにある。十分な数の開発者や企業が、A2A標準を使って実際にエージェントを構築し、統合することに納得するかどうかは、まだわからない。
- 規格の進化と維持。 オープン・スタンダードは、急速に進化するAI技術に対応するために、コミュニティからの持続的なインプットと効果的なガバナンス・メカニズムを必要とする。
- 実績がある。 非常に複雑な実世界のコラボレーション・タスクを処理する上でのプロトコルの堅牢性、効率性、安全性は、本番環境で十分にテストされる必要がある。
A2Aのリリースは、AIエージェントの相互運用性の課題を解決するための業界の取り組みにおける重要な一歩となる。A2Aはまだ草案であり、今年後半には製品版がリリースされる予定だが、AIエージェントが境界を越えて連携できる未来の姿を描いており、Googleとそのパートナーがこのビジョンを実現できるかどうかは、企業の自動化とAI導入の未来に広範な影響を与えるだろう。