本文详细介绍了 vivo 团队自研的 VAPD AgentKit,一个基于统一消息模型、Runtime Adapter 和前端编排的可组合 Agent 前端通用库,旨在为笔记、知识库、项目管理等业务提供统一的对话式 AI 能力底座。
📝 详细摘要
文章围绕 vivo 互联网项目团队自研的 VAPD AgentKit 展开,旨在解决笔记、知识库、项目管理三大业务场景对对话式 AI 能力的重复建设问题。核心设计原则是「消息即协议、运行时可插拔、前端可编排、渐进增强」。架构上,它通过统一消息模型(覆盖 User、Assistant、Thinking、ActionExecution、Result 等消息类型)将后端差异屏蔽;通过 Runtime Adapter 接口(支持 SSE、GraphQL、WebSocket 等任意流式协议)实现后端无关性;通过前端编排层(AgentKit Provider、useAgentChat、useChat 等 Hook)管理上下文、工具调用和 Agent 回合循环。文章详细阐述了事件流与消息模型的转换机制、Agent 回合循环与工具调用(useAgentAction)的实现、UI 交互与建议(Suggestions)的设计,并提供了最小上手示例(3 步接入 Chat)。最后,文章展望了面向知识库问答(RAG)和集成流程智能的演进方向,并指出了下一步需要完善的历史记录、检查点和 Human-in-the-Loop 能力。
💡 主要观点
- VAPD AgentKit 通过「统一消息模型 + Runtime Adapter + 前端编排」三段式架构,实现了 Agent 前端能力的可组合与后端无关性。 该架构将后端流式事件统一转换为标准前端消息模型,通过 Adapter 屏蔽 SSE、WebSocket 等协议差异,前端编排层则负责管理上下文、工具调用和 Agent 循环,使 UI 组件只关心消息渲染,不关心数据来源。
💬 文章金句
- 把后端回传的事件统一解码为前端消息模型,UI 只消费消息,不关心来源细节。
- 只要后端能以「流」的形式输出(SSE、GraphQL、WebSocket、Fetch ReadableStream 等均可),Adapter 都会转为相同的 AgentStreamEvent,前端逻辑零差异。
- 用「消息模型 + Runtime Adapter + 前端编排」的方式,我们把 Chat 模式做成了可以「拼」的底座。
📊 文章信息
AI 初评:87
来源:vivo互联网技术
作者:vivo互联网技术
分类:人工智能
语言:中文
阅读时间:12 分钟
字数:2935
标签: Agent, 前端架构, 可组合, Runtime Adapter, 消息模型