目录

Base Agent 设计

今天我们将基于https://github.com/neutree-ai/agent-platform这个项目,学习如何设计实现一个生产级 Agent 平台。

1. Agent Platform 有哪些功能

Agent 的分类 里,我们聊到按照是否具备通用能力,Agent 分为两类:

  1. 具备通用能力的 Agent Core
  2. 不具备通用能力的 Agent Framework

Agent Core 通过三大件(system prompt、skills、mcp) 来定义业务行为。

Agent Platform 是基于 Agent Core 实现的。并且作为用户,我们希望是能跟模型厂商解耦。所以即便我们依赖Agent Core 去开发 agent,我们也希望做到灵活切换。

所以我们需要在业务和依赖的 Agent Core 之间做一层抽象:

  1. 将通用能力在平台和 Agent Core 之间做一个切分,只依赖 Agent Core 最基础最核心的能力
  2. 对依赖的最基础和最核心的能力做一层抽象,让 Agent Core 以插件的形式接入,实现对 Agent Core 的解耦。

所以 Agent Platform 划分为如下三层:

/images/aigc/agent_platform/platform.png

架构上我们将采用控制面和数据分离的实现:

  1. Control Plan: 管理 System Prompt、Skills、MCP,并提供平台通用能力包括记忆、Agent 编排、SubAgent 等能力
  2. Data Plan: 基于 Agent Core 提供具体业务 Agent 的实现。

从基于到进阶,我们将按照如下顺序实现 Agent Platform:

  1. 基于 ACP 和 Universal Event 抽象对 Agent Core 的依赖,进而实现多 Agent Core 支持
  2. Control Agent Proxy 提供从 Data Plan 到 UI 的 SSE 代理。实现 LLM Message 先落库再广播,从而实现消息的持久化可恢复
  3. UI 基于 Universal Event 实现消息渲染。UI 实现一套 Slot 和 Plugin 机制,通过将 Message 与 Plugin 关联渲染,实现更友好的人机交互
  4. 基于 Sidecar Fuse 和文件系统实现记忆库,支持记忆跨 Agent 共享
  5. 基于已有的 Chat 和 Session 管理实现 SubAgent 和 Teamwork 的 Multi-Agent 编排

业务上: 6. 通过 MCP 和 Plugin 集成 media_crawler,为 Agent 添加小红书的数据采集与内容查询能力 7. 实现视频素材管理平台,支持定义视频素材分类,并实现一套基于提示词链接的视频生成 Workflow,实现视频生成的自动化