返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

MCP、A2A 后,AI 领域又新增 AG-UI 协议

[复制链接]
链载Ai 显示全部楼层 发表于 3 小时前 |阅读模式 打印 上一主题 下一主题

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;display: table;padding: 0px 0.2em;color: rgb(255, 255, 255);background: rgb(15, 76, 129);">什么是 AG-UI

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">AG-UI(Agent User Interaction Protocol,智能体用户交互协议)是一个开放的、轻量的、基于事件的协议,由 CopilotKit 公司发布,它通过标准 HTTP 或可选的二进制通道,以流式方式传输一系列 JSON 事件,主要用来对 AI agent 和前端应用程序的交互进行标准化。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;font-style: normal;padding: 1em;border-radius: 6px;color: rgba(0, 0, 0, 0.5);background: rgb(247, 247, 247);">

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1em;display: block;letter-spacing: 0.1em;color: rgb(63, 63, 63);">CopilotKit 是一家成立于 2022 年的 AI 初创公司,聚焦在产品的 AI 助手打造上。官网的介绍是:ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">AI Copilots for your product. Build fast, customize effortlessly.官网地址为:https://www.copilotkit.ai/。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;display: table;padding: 0px 0.2em;color: rgb(255, 255, 255);background: rgb(15, 76, 129);">AG-UI 主要解决什么问题

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">CopilotKit 公司的人员解释,当前大多数 agent 都属于后端自动化工具,执行一些数据迁移、表单填写、内容总结一类的任务,这些 agent 在后台运行,对用户不可见。但是交互式 agent(比如 Cursor、Windsurf、Devin 等)已经实现了与用户的实时协同工作,它们也将带来海量的应用场景。这种情况下,就需要这些 agent 能够具备ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">实时更新ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">工具编排可共享的可变状态安全边界控制以及前端同步等能力。为此他们构建并发布了 AG-UI 协议。

AG-UI 介绍

AG-UI 为 AI agent 和前端应用程序之间搭建了一座桥梁,让这两者之间的交互更加友好,为用户带来更好体验。示意图如下:

  • Application:用户交互用到的应用程序(比如 chat 或其他任何 AI 应用)
  • AG-UI 客户端:通用的通信客户端,诸如HttpAgent,或用于连接现有协议的专用客户端
  • Agent:后端用户处理用户请求并生成流式响应的 agent
  • Secure Proxy:能够提供额外能力或作为安全代理的后端服务

核心组件

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 通信的不同方面定义了一些事件策略,主要包括:

  • Lifecycle events:监控 Agent 的运行情况。Agent 的运行状态可能包含RunStartedStepStarted/StepFinishedRunFinished(成功)、RunError(失败)。
  • Text message events:用于处理文本流式内容的事件。这些事件遵循流模式,并以增量的方式交付内容。文本消息可能以TextMessageStart开始,然后用TextMessageContent事件来交付文本,最后以TextMessageEnd事件结束。
  • Tool call events:管理 Agent 对工具的执行。当 Agent 想要使用某个 tool 时,会触发一个ToolCallStart事件,随后会有ToolCallArgs事件,用于流式传输传递给工具的参数,最后以一个ToolCallEnd事件结束。
  • State management events:同步 Agent 和 UI 之间的状态。协议中的状态管理采用高效的“快照-增量”模式:初始或偶尔发送完整的状态快照,而持续的变更则通过增量更新(delta)来传递。快照能够确保前端有完整的状态上下文,而 delta 最小化了需要频繁更新的数据传输。两者的有效结合,可以使前端不进行不必要数据传输的情况下,保持对 Agent 状态的准确呈现。包括的事件有StateSnapshotStateDelta
  • Special events:支持自定义功能,比如和外部系统集成。包括的事件由RawCustom

运行 Agent

创建 agent 客户端实例并启用 agent。

状态管理

AG-UI 通过专用事件对状态进行管理,目前提供的事件有:

  • STATE_SNAPSHOT:某一时刻的完整状态表示;
  • STATE_DELTA:使用 JSON 补丁格式(RFC 6902)的增量状态变更;
  • MESSAGES_SNAPSHOT:表示完整的对话历史;

工具和交接

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 生态中的作用不同:

  • AG-UI:主要处理由用户(人)参与的交互以及流式更新用户界面;
  • A2A:主要促进智能体(agent-to-agent)之间的通信和协作;
  • MCP:主要解决跨不同模型之间工具调用的标准化和上下文处理问题;

这三者互为补充。举个简单的例子:相同的 agent 可以通过 A2A 来跟其他的 agent 进行通信,同时又使用 AG-UI 来跟用户进行交互,另外还能通过 MCP 来进行工具的调用(tool call)。这三个协议,完成用户-Agent-LLM之间交互的标准化。

三个协议构成的 Agent 协议栈如下图所示:

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ