Agency Swarm 多智能体编排框架

基于 OpenAI Agents SDK 的可信赖多智能体编排框架,用于构建和管理协作式 AI 智能体团队。

Star 数
★ 4.6k
最近更新
4 天前
License
MIT
主语言
Python

30 秒速览

运行形态
开发框架命令行工具网页应用
可在哪里用
兼容但需适配OpenAI API
费用
软件免费,模型调用费用自付
上手难度
低 · 几分钟可跑通
开始前需要
Python 3.12+OpenAI API 密钥Shell / 命令行网络访问本地文件系统
典型场景
使用预定义角色(如 CEO 和开发人员)构建一个多智能体系统,用于处理软件开发任务。
不适合
  • 仍在使用 Python 3.11 及以下版本的项目
  • 希望避免依赖 OpenAI 生态的团队

这个 Agent 能做什么,适合哪些场景?

Agency Swarm 是一个开源框架,用于构建多智能体应用,它扩展了 OpenAI Agents SDK,提供了专门的功能来创建、编排和管理协作式 AI 智能体群体。该框架由 VRSEN 开发,灵感来源于现实世界的组织结构,使用户能够以类似真实公司的角色(如 CEO 和开发人员)来定义智能体。它提供了诸如可自定义的智能体角色、对提示和指令的完全控制、基于 Pydantic 的类型安全工具、通过通信流实现的智能体间消息传递、会话历史持久化回调,以及面向生产环境的可靠性设计等功能。该框架支持通过 pip 安装,需要 Python 3.12+ 和 OpenAI API 密钥,并提供了 Web UI、终端和编程调用等多种交互接口。

Agency Swarm 提供了一个框架,用于定义具有特定角色(如 CEO、开发人员)的智能体,并通过方向性通信流编排它们之间的交互。它提供 @function_tool 装饰器和 BaseTool 类来创建类型安全的工具,并支持从 OpenAPI 模式通过 ToolFactory 转换工具。智能体通过 send_message 工具进行通信,并由 Agency 对象管理通信流。该框架包括用于持久化对话历史的回调,并提供 copilot_demo() 和 tui() 方法用于交互式演示,以及异步 get_response() 方法用于编程调用。它构建在 OpenAI Agents SDK 之上,使用 Responses API,并支持通过 LiteLLM 使用其他模型提供商。

  1. 使用预定义角色(如 CEO 和开发人员)构建一个多智能体系统,用于处理软件开发任务。
  2. 创建一个虚拟助理智能体,负责客户沟通,并将任务委派给其他专业智能体。
  3. 使用公共 API 的 OpenAPI 规范自动生成工具,实现与外部服务的无缝集成。
  4. 通过保存和加载线程回调,在会话之间持久化对话状态,实现长期交互。
  5. 使用 Web UI(copilot_demo)或终端界面(tui)演示和测试多智能体工作流。

如何安装或部署这个 Agent?

使用 pip install -U agency-swarm 安装。需要 Python 3.12+ 和 OpenAI API 密钥(通过环境变量 OPENAI_API_KEY 或 .env 文件设置)。

如何使用这个 Agent?

  1. 在 .env 文件中设置 OPENAI_API_KEY。2. 使用 @function_tool 装饰器或 BaseTool 子类定义工具。3. 创建 Agent 实例,指定名称、描述、指令、工具和模型。4. 创建 Agency,设置 CEO 作为入口点,并定义通信流(例如 ceo > dev)。5. 通过 agency.copilot_demo()、agency.tui() 或异步 await agency.get_response("...") 运行。

这个 Agent 有哪些优点和局限?

优点
  • 实现了与 OpenAI Agents SDK 和 Responses API 的紧密集成。
  • 通过 Pydantic 字段描述提供类型安全的工具,提升可靠性。
  • 通过通信流提供明确的方向性智能体通信控制。
  • 支持通过回调实现会话持久化,增强灵活性和可扩展性。
局限
  • 当前文档化的模型后端主要是 OpenAI,其他提供商需要额外配置。
  • 需要 Python 3.12+,这可能会限制旧环境的使用。
  • 主要依赖 OpenAI,为其他提供商提供适配需要额外付出努力。
  • 引入了一个额外的框架层,增加了相对于使用原生 OpenAI SDK 的复杂度。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Agency Swarm 多智能体编排框架 当前 45 · 缺口较多 开发框架免费 + 模型费 ★ 4.6k 4 天前 Python OpenAI API
AgenticX 多智能体平台 64 · 存在缺口 命令行工具免费 + 模型费 ★ 506 1 天前 Python Claude Code · OpenAI API · Claude API
DevAll 多智能体编排平台 41 · 缺口较多 命令行工具免费 + 模型费 ★ 35k 2 天前 Python —
aiXplain SDK 29 · 缺口较多 代码库 / SDK免费版 + 付费版 ★ 59 9 天前 Python —

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
45/ 100 五分制 2.3 / 5
信任安全 7/29
可靠稳定 8/14
适用触发 10/18
规范维护 10/18
有效结果 7/13
证据核验 3/8
查看各维度的扣分理由
信任安全7 / 29 · 1.2/5

证据显示框架允许用户定义工具和通信流,但未提供权限最小化机制或用户确认步骤。数据流透明度有限,仅通过文档描述通信流。敏感数据处理未明确说明。依赖项有版本范围,但未提供安全审计。外部效果(如文件上传、API调用)未明确限制。未提供回滚机制。来源归属通过许可证和作者信息部分明确。扣分:缺少权限控制、用户确认、回滚机制。

可靠稳定8 / 14 · 2.9/5

框架内部一致性较好,文档与代码示例一致。依赖项有版本范围,但未验证可用性。错误消息未在文档中详细说明。扣分:错误处理文档不足。

适用触发10 / 18 · 2.8/5

面向开发者,提供多种使用场景(Web UI、终端、编程接口)。能力边界通过通信流定义,但触发精度未明确。环境兼容性(Python 3.12+,多OS)已说明。扣分:触发精度和边界说明不足。

规范维护10 / 18 · 2.8/5

信息架构清晰,有安装指南、示例和文档链接。命名稳定,版本号明确。已知限制未明确列出。许可证为MIT,版本控制有changelog但未提供。维护责任通过作者和贡献指南部分明确。扣分:缺少已知限制和changelog。

有效结果7 / 13 · 2.7/5

输出可用性高,提供多种运行方式。边际价值在于多智能体编排,但成本效益未量化。扣分:成本效益未说明。

证据核验3 / 8 · 1.9/5

文档中的声明(如覆盖率92%)未在提供的文件中验证。跨来源佐证有限。事实与推断未明确分离。扣分:声明缺乏证据支持。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 未提供权限最小化或用户确认机制,使用时应谨慎处理敏感操作。
  • 依赖项未进行安全审计,建议定期检查漏洞。
  • 文档中的覆盖率等声明未在提供的文件中验证,需独立核实。
证据充分度:低 评估于 2026年8月9日 审查版本 4d1c35a6dd5e 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v1.11.0
    发布说明摘录
    This release adds realtime voice calls, per-user OAuth for MCP servers, and first-class system reminders. It also changes the default model, corrects usage-cost accounting, and fixes a token-isolation bug found by driving the OAuth flow end to end. Voice agents Run an existing agency as a realtime voice service. Use run_realtime(agency=...) for a dedicated server, add /{agency}/realtime to an existing app with run_fastapi(enable_realtime=True), or call Agency.to_realtime() to build your own. Ships with OpenAI and xAI support, a packaged browser client, and a Twilio phone bridge ( …
    在 GitHub 查看 ↗
  2. v1.10.5
    发布说明摘录
    What's Changed * fix: keep runtime handoffs available across mid-run agent switches by @nicko-ai in https://github.com/VRSEN/agency-swarm/pull/727 Full Changelog: https://github.com/VRSEN/agency-swarm/compare/v1.10.4...v1.10.5
    在 GitHub 查看 ↗
  3. v1.10.4
    发布说明摘录
    What's Changed * fix(deps): constrain LiteLLM below 1.92 by @nicko-ai in https://github.com/VRSEN/agency-swarm/pull/726 Full Changelog: https://github.com/VRSEN/agency-swarm/compare/v1.10.3...v1.10.4
    在 GitHub 查看 ↗

常见问题

Agency Swarm 与直接使用 OpenAI Agents SDK 有何不同?
Agency Swarm 增加了基于现代 SDK 的架构,提供了如通信流和回调等更高层次的抽象,专注于多智能体应用开发。
该框架是否能与 OpenAI 之外的模型一起使用?
是的,通过 LiteLLM 路由器,但需要额外的配置,官方文档将 OpenAI 列为主要支持对象。
会话历史可以持久化吗?
是的,通过 Agency 的 load_threads_callback 和 save_threads_callback 可以实现会话状态的持久化。
该框架适用于生产环境吗?
该框架专注于生产环境,但确保可靠性仍需额外的测试,具体取决于您的使用场景。
对于从 v0.x 迁移,有迁移指南吗?
有,官方文档提供了迁移指南以帮助用户适应新的 SDK 版本。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents