前言
随着大语言模型(LLM)能力的快速迭代,将 LLM 集成到具体业务应用中已成为技术趋势。最佳实践是将 LLM 封装为智能体(Agent),使其具备感知、规划、行动和反思的能力。本系列文章旨在从零开始构建一个高性能、可扩展的 AI Agent 框架,帮助开发者灵活构造和运行复杂的 Agent 应用。
现有 Agent 编排框架探索
在动手开发之前,有必要分析当前市场上主流的 Agent 编排框架,明确其优缺点及局限性。
Coze
Coze 是字节跳动推出的平台,以 Bot(Agent)为核心主体,集成了 RAG(检索增强生成)、Workflow(工作流)等功能。它支持 Single(单智能体)和 Multi(多智能体)两种模式。
- 优点:上手简单,通过少量配置即可快速搭建应用;支持 Workflow 嵌套 Workflow,扩展性较强。
- 缺点:编排能力相对受限,特别是在处理复杂思维链(CoT)场景时不够灵活;Workflow 节点类型有限,不支持直接嵌入自定义 Bot 逻辑;多 Agent 协作模式较为简单,难以应对复杂操作。
Dify
Dify 可以被视为开源版的低配版 Coze,提供了类似的界面和基础功能,适合私有化部署,但在高级编排能力上仍有提升空间。
ComfyUI
Stable Diffusion 生态中的 ComfyUI 提供了一种另类的 Workflow 设计理念。它基于节点图的形式,非常开放,支持任意流转,且能够导入导出。这种不拘一格的设计思路值得借鉴,特别是对于需要高度自定义流程的场景。
其他相关工具还包括 FlowiseAI、Kuafu、Boxcars 等,各有侧重,但大多存在范式固化或封闭的问题。
框架设计目标
针对现有工具的不足,我们设计的 ai_agent 框架遵循以下核心目标:
- 开放式编排:不局限于单一范式,允许自由组合各种组件来编排 Agent。解决复杂问题时,固定范式往往会限制思路,开放架构能提供更灵活的解决方案。
- BaaS 解决方案:实现服务与编排分离。基于统一的中间层协议进行通信。应用发布后,只需调用服务的 API 即可,无需关心底层实现细节。
- 无限能力扩展:Workflow 和 Agent 本身都可以作为新的 Agent 的子节点。这意味着我们可以构建递归式的复杂任务结构,实现真正的能力叠加。
系统架构设计
整体架构划分为两个主要模块:Agent 服务(Agent Serve)和 Web UI。
- Web UI:用于编排 Agent 的可视化界面。用户通过拖拽节点定义逻辑,最终生成一个可执行的计划(Plan)。
- Agent Serve:负责加载各种 Service(如 LLM、Workflow、Tool 等),并根据 Plan 执行这些 Service。
- Python RT:Python 运行时环境。允许直接将 Python 代码作为 Service 执行,提供沙盒安全环境。未来还将支持 WASM RT 等其他运行时。
- Agent RT:Agent 运行时核心,负责调度 Plan 的执行流程。
![架构图示意]
模块详解
1. Web UI 层
Web UI 采用 WASM 技术构建编辑器,确保跨平台兼容性和高性能交互。用户在此界面定义插件视图和执行逻辑。编排后的结果是一个标准化的 JSON 格式的 Plan,包含节点定义、连接关系及参数配置。
2. Agent Serve 层
这是框架的核心后端服务。它负责解析 Plan,管理生命周期,并协调各个运行时环境。
- 服务注册:动态加载 LLM 适配器、工具函数、自定义脚本等。
- 状态管理:维护每个 Agent 实例的运行状态,支持断点续传和上下文持久化。
- 协议通信:定义内部 RPC 协议,确保各模块间的高效数据交换。


