J'Blog

11 课 · 进阶

语义检索

基于 Chroma 向量库,与 Workspace 知识库分离。用自然语言描述你想查的内容。 非管理员每人每天可检索 5 次(消耗站点 AI 配额)。

多智能体系统

原文:Multi-agent

一句话

多智能体系统通过协调专门组件处理复杂工作流,但并非所有复杂任务都需要此方法——单个智能体配合合适的工具和提示通常能达到类似效果。

什么时候翻这页

当你需要处理复杂工作流、管理大量工具、需要专门知识或需要并行执行子任务时,应考虑使用多智能体系统。

核心概念

  • 上下文管理:提供专门知识而不淹没模型的上下文窗口
  • 分布式开发:允许不同团队独立开发和维护能力
  • 并行化:为子任务生成专门的工作者并并发执行
  • context engineering:决定每个智能体看到什么信息,系统质量取决于确保每个智能体有访问正确数据的能力

怎么做

主要模式

  1. Subagents(子智能体)

    • 主智能体将子智能体作为工具进行协调
    • 所有路由通过主智能体,决定何时以及如何调用每个子智能体
    • 适合分布式开发、并行化、多跳和直接用户交互
  2. Handoffs(交接)

    • 基于状态动态改变行为
    • 工具调用更新状态变量,触发路由或配置更改
    • 适合直接用户交互和多跳场景
  3. Skills(技能)

    • 按需加载专门的提示和知识
    • 单个智能体保持控制,同时根据需要从技能加载上下文
    • 适合分布式开发、多跳和直接用户交互
  4. Router(路由)

    • 路由步骤分类输入并将其导向一个或多个专门智能体
    • 结果被合成为组合响应
    • 适合并行化和直接用户交互
  5. Custom workflow(自定义工作流)

    • 使用 LangGraph 构建自定义执行流程
    • 混合确定性逻辑和智能体行为
    • 将其他模式作为工作流中的节点嵌入

模式选择

根据需求选择合适的模式:

  • 分布式开发:Subagents > Skills > Router
  • 并行化:Subagents = Router > Skills
  • 多跳:Subagents = Handoffs = Skills > Router
  • 直接用户交互:Handoffs = Skills > Router > Subagents

命令 / API 速查

  • Deep Agents:内置多智能体支持的高级框架,提供子智能体、技能、规划、虚拟文件系统和上下文管理
  • LangSmith:跟踪智能体间的完整协调流程
  • LangSmith Engine:监控跟踪、检测问题并提出修复建议

与 LangGraph / RAG 手册的联系

  • LangGraph 可用于构建自定义多智能体工作流
  • RAG 可作为技能模式的一部分,提供按需加载的专门知识
  • 多智能体系统可以整合 RAG 组件作为工具或技能

初学者易错点

  1. 认为所有复杂任务都需要多智能体解决方案
  2. 忽视上下文工程的重要性
  3. 未考虑不同模式在不同场景下的性能差异
  4. 过度设计导致不必要的复杂性
  5. 未充分利用状态化模式在重复请求中的优势

相关词条

官方原文:https://docs.langchain.com/oss/python/langchain/multi-agent