概要
https://developers.googleblog.com/introducing-a2ui-an-open-project-for-agent-driven-interfaces/
詳細内容
## エージェント駆動型UIのためのオープンプロジェクト「A2UI」の発表
https://developers.googleblog.com/introducing-a2ui-an-open-project-for-agent-driven-interfaces/
**Original Title**: Introducing A2UI: An open project for agent-driven interfaces
エージェントが文脈に応じた最適なUIを動的に生成し、マルチプラットフォームでネイティブレンダリングするための宣言型オープン規格「A2UI」を提案する。
**Content Type**: 📰 News & Announcements
**Language**: en
**Scores**: Signal:5/5 | Depth:4/5 | Unique:4/5 | Practical:4/5 | Anti-Hype:4/5
**Main Journal**: 86/100 | **Annex Potential**: 84/100 | **Overall**: 84/100
**Topics**: [[Generative UI, AI Agents, A2UI, A2A Protocol, Flutter]]
Googleは、エージェント駆動型インターフェースのための新しいオープンプロジェクト「A2UI (Agent-to-User Interaction)」を発表した。生成AI、特にLLMがテキストやコードだけでなく、状況に応じた最適なUIを動的に生成し、それを多様なプラットフォーム(Web、Flutter、モバイルなど)で一貫したエクスペリエンスとして提供するための仕様とツール群である。
著者は、現在のエージェントとのやり取りがテキストベースのチャットに依存しすぎている点、およびリモートで動作するエージェントがUIを構築する際のセキュリティと相互運用の課題を指摘している。従来、リモートエージェントがUIを表示するには、HTMLやJavaScriptを送信してiframeでサンドボックス化する方法が一般的だったが、これは動作が重く、ホストアプリのデザインとの整合性が取れず、セキュリティ境界の管理も複雑になるという欠点があった。
これに対し、A2UIは「UI仕様をメッセージのシーケンスとして扱う」というアプローチをとる。実行可能なコードではなく、宣言的なデータフォーマット(JSON)としてUI構成を記述し、クライアント側(ホストアプリ)が持つ信頼済みのネイティブコンポーネントカタログ(ボタン、テキストフィールドなど)を用いてレンダリングを行う。これにより、以下の3つの利点が生まれると著者は主張している。
1. セキュリティ:LLMが生成した任意のコードを実行せず、あらかじめ承認されたコンポーネントのみを呼び出すため、UIインジェクションのリスクを低減できる。
2. ネイティブ統合:クライアントがレンダリングを制御するため、ホストアプリのブランディングやアクセシビリティ機能を完全に継承できる。
3. 相互運用性:単一のJSONペイロードから、Lit、Angular、Flutterといった異なるフレームワークで同様のUIを構築可能である。
本プロジェクトは、Googleが他社と共同で策定した「Agent-to-Agent (A2A) プロトコル」を補完するものであり、マルチエージェントが協調する世界において、リモートエージェントがユーザーに直感的なUIを提供するための標準となることを目指している。現在、Flutter用のGenUI SDKやCopilotKit(AG UI)との互換性が確保されており、開発者はGitHub上のサンプルを通じて実装を開始できる。著者は、この規格をv0.8として公開し、コミュニティと共にエコシステムを拡大していく意欲を示している。