介绍#
EvoFabric 的多智能体(Multi-Agent)模块提供用于构建“智能体协作图”的能力。该模块采用可扩展架构,当前包含 Swarm 组件(Swarm-style 的多智能体),后续将补充更多编排策略与组件。
什么是多智能体?#
多智能体系统通过一组各司其职的 Agent 协作完成复杂任务。每个 Agent 往往绑定特定能力(检索、规划、工具调用、代码执行、写作审校等),并在约定的拓扑与路由机制下进行“接力式”求解,以提升可控性、可观测性和鲁棒性。
为什么选择多智能体#
将复杂任务拆解为多个专职 Agent(规划、检索、计算、工具调用、写作等),提升可靠性与可维护性
基于“handoff(移交)”范式,让 Agent 在任务中动态协作与接力
利用图结构控制执行流、避免无谓循环,并在需要时约束拓扑
分而治之与可维护性:把复杂任务拆解为稳定的子角色,单个 Agent 的提示与工具更聚焦、更易测试与演进。
复用与扩展:不同团队可沉淀领域 Agent 并在更大工作流内复用,或按需增加/替换角色而不破坏主体流程。
典型使用场景#
检索增强与写作协作:检索 Agent、整合/评审 Agent、撰写 Agent 协作完成资料搜集与成稿。
面向工具的任务编排:由“调度/规划”Agent 触发检索、数据库、搜索、代码执行等工具并路由子任务。
客服/运营自动化:按照“分诊/路由 → 专家处理 → 质检/汇总”流程组织角色;在实时语音或多模态场景中可采用“顺序 handoff”接力。
研究与数据工作台:多 Agent 组聊协作完成信息搜集、对比、总结与可视化。
长流程与人审:在关键节点通过中断机制等待人审决定,再继续流程(批准/修改/拒绝)。
Swarm的优势#
快速落地与低心智负担:API 简洁、约定优于配置,适合以“规划 + 专家 Agent”的模式在较少回合内完成任务。
明确的接力语义:内置 handoff 工具使“把任务交给谁、携带什么信息”具备可见、可测与可控的接口。
拓扑可约束:通过
edges指定允许的移交边,既能 Star(集中调度)也能 All‑to‑All(探索验证)或 Pipeline(流水线)。易于集成:与 EvoFabric 的 AgentNode、ToolManager、ComponentFactory、Pydantic State 无缝衔接。
Swarm 的关键构件与术语#
以下术语既覆盖业界多智能体通用构件,也标注 Swarm 的特有点,便于迁移理解:
Agent(智能体) 绑定聊天模型、系统提示与工具集合的节点。Swarm 中使用
AgentNode表示。Tool/Function(工具调用) Agent 通过工具与外部世界交互,如检索、天气查询、时间查询、数据库操作等。
Handoff(移交,Swarm 特有重点) 由当前 Agent 主动“把任务接力给目标 Agent”,并携带上下文或需求说明。Swarm 会为每个 Agent 注入定制化的
handoff工具,其可选目标由edges或“全连接(默认)”自动生成。Router/Planner(路由/规划) 用于决定下一步交给谁。常见模式包括:集中式 Planner(Star)、条件路由(基于消息/工具调用)、以及有限状态机/层级调度。
Graph/Edges(图与边) 以“节点+有向边”控制可达路径与条件分支。Swarm 通过
edges生成允许的 handoff 目标集合,并在运行时打印路由日志以便调试。State/Memory(状态/记忆) Swarm 运行图需要 Pydantic 状态模型,至少包含
messages: List[StateMessage]Termination(终止条件) Swarm 默认在检测到回复中包含
"FINISHED"时终止;也可通过termination_pattern自定义为"END"等。