Skip to content

MQTT上のA2A

MQTT上のA2Aは、Agent-to-Agent (A2A) プロトコルをMQTTに対応させるブローカーに依存しないトランスポートプロファイルです。標準化されたトピック規約、MQTT v5プロパティのマッピング、およびディスカバリ動作を定義しており、異なるフレームワークで構築されたAIエージェントが、相互にポイントツーポイントの統合を必要とせずにMQTTブローカーを介して登録、発見、協調できるようにします。

EMQXは、A2Aレジストリという組み込み機能を通じてMQTT上のA2Aを実装しています。これは、ディスカバリトピックにパブリッシュされたエージェントカードをインデックス化し、エージェントの生存状態を追跡し、運用者向けの管理インターフェースを提供します。

なぜMQTTをA2Aに使うのか

標準のA2AプロトコルはトランスポートにHTTPを使用しています。これはクラウド環境では有効ですが、エージェントがリソース制約のあるデバイス上やNATの背後、あるいは持続的なHTTP接続が困難な環境で動作する分散型、IoT、エッジの展開では制限となります。

MQTTはこれらの制約に直接対応しています:

  • 軽量かつ効率的:最小限のプロトコルオーバーヘッドで、低帯域幅かつ信頼性の低いネットワークに適しています。
  • ブローカーを介したルーティング:エージェント同士が互いのアドレスを知る必要がなく、ブローカーがルーティングを担当します。
  • ディスカバリのための保持メッセージ:エージェントはエージェントカードを保持メッセージとしてパブリッシュし、専用のレジストリサービスなしにサブスクライバーに即座に提供されます。
  • ネイティブなプレゼンス検出:MQTTのLast Will and Testament(LWT)により、エージェントが予期せず切断された際に自動的にオフライン状態が通知されます。
  • 集中管理された認証:EMQXの既存の認証および認可がすべてのエージェントトラフィックに一貫して適用されます。

主な機能

  • 標準化された$a2a/v1/discovery/トピック上の保持メッセージによるエージェントの登録とディスカバリ。
  • エージェントカードを対話的に閲覧、登録、管理できるダッシュボードUI。
  • emqx ctl a2a-registryコマンドによるCLI管理。
  • 登録時にA2Aエージェントカードスキーマの検証をオプションで強制。
  • ブローカー管理の生存監視:EMQXはエージェント接続状態を反映するa2a-status MQTTユーザープロパティを付与。
  • MQTT v5のリクエスト/リプライ:エージェント間のタスク委譲のための標準化されたResponse TopicおよびCorrelation Data規約。

詳細情報