Skip to content

AI Agent 工作流模式与高级工具调用

工作流模式

三种核心模式

生产环境中,三种模式覆盖了绝大多数用例:

模式解决的问题何时使用权衡
顺序执行任务有依赖:B 步骤需要 A 步骤的输出多阶段流程、数据管道、起草-审查-润色循环增加延迟(每步等待上一步)
并行执行任务独立,逐个执行太慢多维度评估、代码审查、文档分析成本更高(多个并发 API 调用)
评估优化初稿质量不够好技术文档、客户沟通、按特定标准生成代码迭代带来 token 消耗和延迟

起点原则:从解决问題的最简模式开始。默认选顺序执行。仅当延迟成为瓶颈且任务独立时,才迁移到并行模式。仅当你能够量化质量改进时,才添加评估-优化循环。

顺序工作流

顺序工作流按预定义顺序执行任务。每个阶段的智能体处理输入、做出决策、按需调用工具,然后将结果传递给下一阶段。

适用场景

  • 多阶段流程,每个步骤依赖前一步的输出
  • 数据转换管道,每个阶段增加特定价值
  • 无法并行化的任务(固有依赖关系)
  • 起草-审查-润色循环

示例

  • 生成营销文案 → 翻译成多语言
  • 从文档提取数据 → 验证 schema → 加载到数据库
  • 内容审核管道:提取内容 → 分类 → 应用审核规则 → 路由

反模式:单智能体能有效处理整个任务时,不要强行拆分。

并行工作流

并行工作流将独立任务分配给多个智能体,同时执行。不等待一个智能体完成再启动下一个,而是同时运行多个智能体,然后合并结果。

适用场景

  • 分区处理(不同智能体处理不同方面)
  • 评估场景(每个智能体评估不同质量维度)
  • 投票模式(多个智能体分析相同内容,汇总评估)

权衡

  • 需要聚合策略(如何处理矛盾结果?)
  • 成本更高(多个并发 API 调用)
  • 不适合需要累积上下文的任务

评估-优化工作流

评估-优化工作流通过迭代反馈循环不断提高输出质量。

适用场景

  • 技术文档生成(需要多轮打磨)
  • 客户沟通(需要精确措辞)
  • 按特定标准生成代码

权衡

  • token 消耗成倍增加
  • 迭代带来延迟

高级工具调用

Tool Search Tool

问题:MCP 工具定义会消耗大量 token。一个五服务器配置可能消耗 55K+ token:

  • GitHub: 35 工具 (~26K tokens)
  • Slack: 11 工具 (~21K tokens)
  • Sentry/Grafana/Splunk: ~8K tokens

解决方案:按需发现工具,而非预先全部加载。

传统方式:所有工具定义预先加载 (~72K tokens for 50+ MCP 工具)
Tool Search Tool:仅加载搜索工具 (~500 tokens),按需发现 3-5 个相关工具 (~3K tokens)

效果:85% token 减少,MCP 评估准确率显著提升。

实现

json
{
  "tools": [
    {"type": "tool_search_tool_regex_20251119", "name": "tool_search_tool_regex"},
    {
      "name": "github.createPullRequest",
      "input_schema": {...},
      "defer_loading": true  // 标记为按需发现
    }
  ]
}

Programmatic Tool Calling

问题:自然语言工具调用每次调用需要完整推理,中间结果堆积在上下文中。

解决方案:在代码执行环境中以编程方式调用工具,减少对模型上下文的影响。

示例:Claude for Excel 使用 Programmatic Tool Calling 读写数千行电子表格,而不压垮模型上下文。

Tool Use Examples

问题:JSON Schema 定义结构有效性,但无法表达使用模式:何时包含可选参数、哪些组合有意义、API 期望什么约定。

解决方案:提供工具使用示例的标准格式,让智能体从示例中学习正确用法,而非仅从 Schema 定义。

模式选择决策树

任务可以由单智能体处理吗?
├── 是 → 先尝试单智能体,只有在单智能体无法可靠处理时才拆分
└── 否 → 任务有依赖?
    ├── 是 → 顺序工作流
    └── 否 → 需要同时处理多个独立方面?
        ├── 是 → 并行工作流
        └── 否 → 输出质量不够好?
            ├── 是 → 评估-优化工作流
            └── 否 → 考虑顺序或单智能体

为前端工程师打造 · 基于 VitePress 构建