开发与工程 multi-agent-orchestrationaws-bedrockopenai-apianthropic-claudeswiftmcpstreaming-responses

Agent Squad 多智能体编排框架

将用户请求路由给合适的专用智能体,并持续维护跨轮对话上下文。

FollowAgents 评估 · FARS-2.1
不推荐
31/ 100 五分制 1.6 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全0 / 29 · 0.0/5

证据显示仓库未提供权限管理、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的说明。所有信任相关标准均得0分,因为没有任何相关文档或代码证据。

2可靠稳定5 / 14 · 1.8/5

自一致性得2分:README描述了多运行时(Python、TypeScript、Swift)和功能,但未提供详细代码或测试来验证一致性。依赖可用性得1分:README提到了npm和PyPI包,但未提供版本锁定或依赖清单。失败消息得0分:未提供错误处理或失败消息的文档。

3适用触发8 / 18 · 2.2/5

受众与场景得2分:README明确了目标受众(开发者)和多种使用场景(云、设备端)。能力边界得1分:描述了可扩展性,但未明确限制。触发精度得0分:未提供触发机制或精确条件。环境适配得2分:说明了支持的环境(Python 3.11+、Node.js、iOS 16+等)。

4规范维护8 / 18 · 2.2/5

信息架构得2分:README结构清晰,有目录和分节。安装说明得2分:提供了npm、pip和Swift包安装命令。命名稳定性得1分:提到项目更名和迁移,但未提供版本历史。示例与FAQ得2分:提供了多个示例和文章链接。已知限制得0分:未提及任何限制。许可证得2分:明确Apache-2.0。版本与变更日志得0分:未提供CHANGELOG或版本历史。维护责任得1分:列出了作者和贡献者,但未明确维护政策。

5有效结果7 / 13 · 2.7/5

输出可用性得2分:提供了API示例和输出格式。边际价值得2分:框架提供了多运行时和独特功能(如GroundedAgent)。成本效益得1分:未提供性能或成本数据。

6证据核验3 / 8 · 1.9/5

声明可追溯性得1分:README中的声明未链接到具体代码或测试。跨来源佐证得1分:有外部文章和播客,但未提供独立验证。事实与推断分离得1分:部分区分了功能描述和推断,但不够明确。

证据充分度: 评估于 2026年8月9日 审查版本 31eccfeb0d54
源码中未见的安全控制:最小权限约束、执行前用户确认、数据流向说明、敏感信息处理、依赖安全审查、外部影响披露、回滚或恢复路径、来源归属可核验
使用前请注意
  • 未提供安全相关文档,如权限管理、数据流透明、敏感数据处理等,使用前需自行评估。
  • 依赖安全未提及,建议检查依赖清单和已知漏洞。
  • 未提供已知限制和失败处理说明,可能影响生产环境使用。
评估证据 [1][2][3][4][5][6]
查看完整评分方法 →

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

Agent Squad 是一个用于多智能体编排的开源框架,提供 Python、TypeScript 和 Swift 三套运行时。其核心流程由 Classifier 根据用户输入、智能体描述和对话历史选择 Agent,再由 Orchestrator 保存交互并返回结果。框架提供 Bedrock、Anthropic、OpenAI、Lex 和 Lambda 等预构建智能体,也允许替换自定义智能体、分类器、存储和检索器。Python 与 TypeScript 可运行于 AWS Lambda、容器或本地环境;Swift 运行时面向 iOS 16+ 与 macOS 14+,支持设备端路由、MCP 工具、实时语音、追踪及本地聊天存储。它适合需要把多个专业能力整合进单一对话入口的开发团队,而不是提供现成业务机器人的托管服务。

应用通过 AgentSquad(Python/TypeScript)或 Swift 的 Orchestrator 接收用户文本和 userId、sessionId。Classifier 参考已注册 Agent 的 description 及会话历史进行路由,选中的 Agent 处理请求,并可在需要时调用工具;Orchestrator 随后保存本轮交互并输出流式或非流式响应。TypeScript 可调用 orchestrator.addAgent(...) 和 routeRequest(...);Python 使用 add_agent(...) 与 route_request(...),并可处理 AgentStreamResponse。Swift 可通过 Orchestrator.route(.text(...), userId:..., sessionId:...) 迭代事件;该运行时的工具可来自原生 Swift 函数、声明式 HTTP 工具或 MCP server。SupervisorAgent 可并行协调子智能体并合成答复,GroundedAgent 则让 gatherer 获取工具结果,再由隔离的 presenter 仅依据整理后的结果作答。

  1. 为客服团队构建电商支持入口:按问题把订单、商品或人工核验任务路由给不同专用智能体。
  2. 为旅行产品团队构建多领域对话助手:在旅行、天气、餐厅和计算等智能体之间保留追问上下文。
  3. 为 AWS 开发团队在 Lambda 或容器中部署带 Bedrock、Lex 或 Lambda 智能体的对话编排层。
  4. 为需要价格、赔率、余额或库存准确性的应用采用 GroundedAgent,将最终回答限制在已获取的工具数据内。
  5. 为 iPhone、iPad 或 Mac 应用开发离线优先的智能体体验,结合设备端存储、MCP 工具和实时语音。

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

优点
  • 同一编排模型覆盖 Python、TypeScript 和 Swift,Swift 还明确支持完全在设备端运行。
  • 路由不只依据当前文本:Classifier 使用智能体描述和对话历史选择处理者。
  • GroundedAgent 将工具获取与最终表述隔离,适用于必须忠实呈现价格、库存或余额等外部数据的场景。
  • SupervisorAgent 支持并行子智能体查询、共享上下文和层级团队组合。
  • Swift 工具层可统一接入原生函数、HTTP 工具和 MCP server。
局限
  • 三套运行时的要求不同:Python 需 3.11+,Swift 仅支持 iOS 16+ 或 macOS 14+,因此无法以单一二进制覆盖全部目标。
  • README 只展示依赖安装和示例调用,未给出 Bedrock 或其他服务提供商凭证配置的具体步骤。
  • 使用 Bedrock、Anthropic 或 OpenAI 等预构建智能体时,应用仍需集成相应模型提供商。
  • Swift 包示例引用 main 分支而非固定版本,采用该方式可能带来版本漂移风险。
  • 项目已从 awslabs/agent-squad 迁移且曾名为 multi-agent-orchestrator,旧克隆地址、书签和依赖名需要更新。

如何安装或部署这个 Agent?

选择一个运行时安装。TypeScript:npm install agent-squad。Python:pip install "agent-squad[aws]";README 还列出 [anthropic]、[openai] 和 [all] 可选项,且要求 Python 3.11+。Swift:在 Package.swift 的 dependencies 中加入 .package(url: "https://github.com/2FastLabs/agent-squad", branch: "main"),或通过 Xcode 的 Add Package Dependencies 添加。README 的 Swift 示例要求为 ChatCompletionsClient 提供 apiKey;Bedrock 示例未说明 AWS 凭证的具体配置步骤。

如何使用这个 Agent?

TypeScript 的首个调用可写为:import { AgentSquad, BedrockLLMAgent } from "agent-squad"; const orchestrator = new AgentSquad(); orchestrator.addAgent(new BedrockLLMAgent({ name: "Tech Agent", description: "Specializes in technology: software, hardware, AI, cybersecurity, cloud.", streaming: true })); const response = await orchestrator.routeRequest("What is AWS Lambda?", "user123", "session456"); 若 response.streaming 为 true,则用 for await 迭代 response.output;否则读取 response.output。Swift 可创建 Agent(name: "Shop", description: "Shopping assistant", model: ChatCompletionsClient(model: "gpt-4o-mini", apiKey: apiKey)),再用 Orchestrator(agents: [agent], store: try DeviceChatStorage(userId: "u1")) 调用 route。

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

仓库明确提供 Bedrock、Anthropic、OpenAI、Lex 与 Lambda 等智能体实现;它们是可在同一 Agent Squad 编排层中注册的集成选项,而非互斥的框架替代品。

常见问题

是否只能使用 AWS Bedrock?
不是。README 列出 Bedrock、Anthropic、OpenAI、Lex 和 Lambda 等预构建智能体;Python 安装还列出 aws、anthropic、openai 和 all 选项。
它如何避免把工具数据说错?
GroundedAgent 使用 gatherer 调用工具,并让没有工具、工具记录和聊天历史访问权的 presenter 只基于整理后的工具输出生成最终答复;未调用工具时会跳过 presenter。
能否在 Apple 设备上运行?
可以。Swift 运行时支持 iOS 16+ 和 macOS 14+,并记录了设备端路由、MCP、实时语音、追踪及 JSON 文件或 SwiftData 聊天存储。
是否能处理流式输出?
可以。README 明确支持流式和非流式响应;TypeScript 使用 async iteration,Python 示例迭代 AgentStreamResponse,Swift 路由返回可迭代事件。

对比同类 Agent

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

相关 Agents