MCP、A2A 後,AI 領域又新增 AG-UI 協議

什麼是 AG-UI

AG-UI(Agent User Interaction Protocol,智能體用戶交互協議) 是一個開放的、輕量的、基於事件的協議,由 CopilotKit 公司發佈,它通過標準 HTTP 或可選的二進制通道,以流式方式傳輸一系列 JSON 事件,主要用來對 AI agent 和前端應用程序的交互進行標準化。

CopilotKit 是一家成立於 2022 年的 AI 初創公司,聚焦在產品的 AI 助手打造上。官網的介紹是:AI Copilots for your product. Build fast, customize effortlessly. 官網地址爲:https://www.copilotkit.ai/。

AG-UI 主要解決什麼問題

CopilotKit 公司的人員解釋,當前大多數 agent 都屬於後端自動化工具,執行一些數據遷移、表單填寫、內容總結一類的任務,這些 agent 在後臺運行,對用戶不可見。但是交互式 agent(比如 Cursor、Windsurf、Devin 等)已經實現了與用戶的實時協同工作,它們也將帶來海量的應用場景。這種情況下,就需要這些 agent 能夠具備實時更新工具編排可共享的可變狀態安全邊界控制以及前端同步等能力。爲此他們構建併發布了 AG-UI 協議。

AG-UI 介紹

AG-UI 爲 AI agent 和前端應用程序之間搭建了一座橋樑,讓這兩者之間的交互更加友好,爲用戶帶來更好體驗。示意圖如下:

核心組件

AG-UI 的核心組件包括協議層(Protocol Layer)、標準化 HTTP 客戶端(Standard HTTP Client)、消息類型(Message Type)、運行智能體(Running Agent)、狀態管理(State Management)、工具交接(Tools and Handoff)以及事件(Events)

協議層(Protocol Layer)

AG-UI 協議層主要爲 agent 通信提供一個靈活的基礎。協議的核心讓應用程序能夠運行 agent 並且接受到事件流。

標準 HTTP 客戶端

AG-UI 提供了一個標準的 HTTP 客戶端 HttpAgent,可用於連接任何支持 POST 請求的端點。該端點接收 RunAgentInput 類型的請求體,並返回 BaseEvent 對象的數據流。

HttpAgent 支持 HTTP SSE (Server-Sent Events) 和 HTTP binary protocol 兩種模式。

消息類型

AG-UI 爲 agent 通信的不同方面定義了一些事件策略,主要包括:

運行 Agent

創建 agent 客戶端實例並啓用 agent。

狀態管理

AG-UI 通過專用事件對狀態進行管理,目前提供的事件有:

工具和交接

AG-UI 通過標準化事件來提供 agent 之間的任務移交的和工具的使用。

事件

AG-UI 中的所有通信都是基於類型事件。每一個事件都繼承自 BaseEvent,其接口如下:

interface BaseEvent {
  type: EventType
  timestamp?: number
  rawEvent?: any
}

目前官方已經提供 TypeScript 和 Python SDK 來對協議進行開發使用。

MCP vs A2A vs AG-UI

去年底 Anthropic 發佈了 MCP(Model Context Protocol),今年 Google 又發佈了 A2A(Agent to Agent),都是面向這一輪 AI 發展的協議。

相比於 MCP 和 A2A,AG-UI 主要聚焦在智能體和用戶(agent-user)的交互層上。它和 MCP 於 A2A 並不是競爭關係。這三者在 AI 生態中的作用不同:

這三者互爲補充。舉個簡單的例子:相同的 agent 可以通過 A2A 來跟其他的 agent 進行通信,同時又使用 AG-UI 來跟用戶進行交互,另外還能通過 MCP 來進行工具的調用(tool call)。這三個協議,完成用戶 - Agent-LLM 之間交互的標準化。

三個協議構成的 Agent 協議棧如下圖所示:

相關鏈接

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/7mjuil26LHDWPtQQei7-mg