AI 工具与知识库 · 第 8 篇

用工作流自动化重复任务

从手工清单开始,加入触发、确认、幂等、重试和告警。

34 分钟自动化实战

学完能做什么

你会先把一件重复工作写成可验收的手工清单,再逐步加入触发、判断、AI 处理、人工确认、幂等、重试和告警。

先自动化稳定流程,不要自动化混乱

如果两个人手动做同一件事的步骤完全不同,或者每次都要靠临场判断,先把流程和例外说清。自动化会放大现有规则,不会自动把坏规则变好。

从手工清单开始

以“收到反馈后分类并生成回复草稿”为例:

text
1. 接收反馈,生成业务唯一 ID
2. 检查必填字段和敏感数据
3. 区分咨询、故障、投诉和建议
4. 高风险投诉直接转人工
5. 查询已确认知识库材料
6. 生成回复草稿和引用
7. 人工确认接收对象和内容
8. 发送并记录消息 ID
9. 失败时告警,不重复发送

只有当这张清单可以被新人执行并得到一致结果,才适合编排。

工作流的六类节点

节点作用必须记录
触发定时、事件或人工启动来源事件 ID 和时间
校验检查格式、必填项和权限通过或拒绝原因
判断根据规则或 AI 结果分支分支理由和置信标记
处理转换、查询、生成输入版本和输出摘要
确认展示即将执行的动作确认人、对象、参数和时间
执行发送、写入、创建或修改结果 ID、状态和错误

幂等:重试不能把一件事做两次

网络超时时,客户端不知道服务端是否已经成功。如果直接重试,可能重复发送、创建或扣费。

对有副作用动作使用稳定的幂等键,例如“来源事件 ID + 动作类型”。服务端遇到同一键时返回原结果,不再执行一次。

重试要区分错误

  • 参数错误、无权限、业务规则拒绝:不应重试;
  • 短暂超时、限流、临时服务不可用:可以有限重试;
  • 最终状态不明:先查询本次业务 ID,不盲目重放;
  • 输入数据已变更:停止旧任务,用新版本重新审批。

重试设置最大次数、指数退避和总超时,超过后进入人工队列。

AI 节点不能隐藏不确定性

用 AI 分类时,输出应该包含类别、理由、所用材料和是否需要人工。不要只输出一个看似精确的分数。

可以定义:

  • 明确命中规则的低风险类别自动继续;
  • 材料冲突、字段缺失或高风险类别转人工;
  • 任何不在枚举中的结果都拒绝继续。

告警要告诉人“下一步做什么”

好的告警包含:工作流 ID、失败节点、错误分类、是否已产生副作用、已重试次数、安全的恢复操作和运行记录链接。不要把密钥和完整敏感输入放进告警。

工作流设计作业

选一件每周至少做三次的工作:

  1. 写出当前手工清单和实际例外;
  2. 标记触发、校验、判断、处理、确认和执行节点;
  3. 为每个执行动作设计幂等键;
  4. 列出可重试和不可重试错误;
  5. 列出三个必须转人工的条件;
  6. 使用测试数据跑通,不直接接生产系统;
  7. 故意制造超时和重复事件,验证不重复执行。

完成检查清单

  • 手工流程和例外已经稳定。
  • 每个节点有输入、输出、成功和失败去向。
  • 有副作用动作有幂等键和人工确认。
  • 重试按错误分类,有最大次数和总超时。
  • AI 结果不确定时会转人工,不强行继续。
  • 告警可以指导恢复,不包含敏感数据。

下一步

你已经完成工具与知识库路线。下一类《Agent 开发实战》将从运行循环和第一次 API 请求开始,将这些边界落到代码里。