自动化一个流程
将一个现有的人工流程交给 AI Agent 来执行,需要先仔细拆解这个流程。本课教你如何识别适合自动化的流程,以及如何为 Agent 绘制清晰的执行地图。
选择合适的自动化候选流程
最适合自动化的流程具备以下特征:步骤固定、规则清晰、重复执行、不需要人类情感判断。如果一个流程每次执行方式都不同,或需要大量人际沟通和情境判断,自动化的效果会大打折扣。
- 好的候选:每天自动摘要收件箱中的新文件
- 好的候选:将新提交的表单数据分类并路由到对应负责人
- 不适合:需要和客户深度沟通理解需求的销售谈判
- 不适合:需要创意和主观判断的品牌策略制定
以文件摘要流程为例
以"自动摘要新收到的文件"为例,分解步骤:检查是否有新文件 → 读取文件内容 → 判断文件类型(合同/报告/邮件)→ 按模板生成摘要 → 将摘要存入指定位置。其中,"判断文件类型"是 AI 判断点,其余是确定性逻辑。
标出决策点
绘制流程图时,明确区分两类步骤:确定性步骤(总是做同一件事)和 AI 判断步骤(需要理解内容后做决定)。Agent 在判断步骤上最有价值,确定性步骤可以用普通代码完成。
🧠 自测:以下哪个流程最适合用 AI Agent 来自动化?
- 与重要客户进行年度战略规划会议
- 每天从固定来源汇总行业新闻并生成简报 ✓
- 为公司设计新品牌标志的创意方向
- 处理需要法律解释的合同纠纷
每天汇总固定来源新闻是步骤固定、规则清晰、重复性高的任务,非常适合 Agent 自动化。其他选项都需要大量人类判断和创意。
连接工具与数据
AI Agent 的力量来自于它能调用工具采取行动,而不只是生成文字。本课介绍 function calling 和 Assistants API 的内置工具,理解 Agent 如何与现实世界交互。
Function calling 是什么
Function calling(函数调用)允许你给模型定义一组可以调用的函数。模型在对话中判断"这里需要调用某个函数",然后返回调用指令(函数名和参数),由你的代码实际执行函数并将结果返回给模型。模型再基于结果继续生成回复。
- 模型决定"要调用什么函数"
- 你的代码负责实际执行函数
- 函数结果返回给模型后,模型继续对话
- 典型用途:查询数据库、调用外部 API、操作文件
一个函数定义的例子
示例 Prompt
// 告诉模型你有一个"查询天气"的函数
{
"name": "get_weather",
"description": "查询指定城市的当前天气",
"parameters": {
"city": {
"type": "string",
"description": "城市名称,如'北京'或'上海'"
}
}
}
// 用户说"北京今天冷吗?"后,模型会返回:
// { "function": "get_weather", "arguments": { "city": "北京" } }
Assistants API 的内置工具
- 代码解释器(Code Interpreter):运行 Python 代码,处理数据、生成图表
- 文件搜索(File Search):从上传文件中检索信息(即 RAG)
- 网页浏览:访问互联网获取最新信息
🧠 自测:在 function calling 机制中,谁负责实际执行函数?
- OpenAI 的服务器
- 你的应用代码 ✓
- 模型本身直接执行
- 用户手动触发
模型只决定"需要调用哪个函数并传入什么参数",实际的函数执行由开发者的应用代码完成。结果再返回给模型继续处理。
编排多个步骤
真实的 Agent 工作流通常包含多个步骤。如何组织这些步骤的执行顺序,是构建可靠工作流的核心设计问题。
三种基本编排模式
- 串行(Sequential):步骤 1 → 步骤 2 → 步骤 3,前一步的输出是后一步的输入
- 并行(Parallel):多个独立步骤同时执行,最后汇总结果
- 条件分支(Conditional):如果 X 发生则执行 Y,否则执行 Z
串行模式:流水线处理
串行模式适合有明确先后顺序的任务:提取数据 → 清洗数据 → 分析数据 → 生成报告。每一步都依赖前一步的结果。设计时要考虑:如果中间某一步失败,是重试、跳过还是终止整个流程?
并行模式与条件分支
并行模式适合独立子任务:同时分析 5 个不同部门的报告,最后汇总。条件分支让 Agent 能根据情况选择不同路径:如果文件是合同,执行合同审查流程;如果是发票,执行财务核对流程。
- 串行:有依赖关系的步骤,保证顺序正确
- 并行:独立子任务,提升效率
- 条件分支:处理多种输入类型,增加灵活性
🧠 自测:以下哪种场景最适合使用并行编排模式?
- 需要依次处理的数据清洗、分析、报告三个步骤
- 同时处理来自 5 个城市的独立销售报告 ✓
- 根据用户类型选择不同的回复策略
- 按固定顺序执行的系统初始化流程
5 个城市的销售报告相互独立,没有依赖关系,非常适合并行处理以节省时间。其他选项更适合串行或条件分支模式。