先试错再铺开:AI 批量任务的返工控制节奏

对一批同类输入(100 个文件、多个模块、多段文案)用同一套 AI 流程时,最常见的两种”大批量”做法——一次性全量、横向铺步骤——都会在流程缺陷暴露时放大损失。本文给出”先单点试错、再纵向铺开”的节奏,把返工爆炸半径压到单个输入,并说明横向提效的启动前提。
为什么”大批量”做法会放大损失
反模式 A——一次性全量:直接把 100 个文件丢给 AI 跑完整流程。第 30 个文件格式特殊、流程中断——前面 29 个已跑完,但质量未验收,可能全要重来。你付了 100 份的 cost,只确认了流程”能跑”,没确认”跑得好”。
反模式 B——横向铺步骤(齐步走):所有输入先统一做第 1 步、再做第 2 步……一旦输入 #7 在第 2 步暴露问题(依赖缺失/格式不对),#1~#100 的第 1 步都已执行,这些产出可能因 #7 的共性缺陷全部作废。一步出错,全盘返工。
两种做法的共同本质:在流程被验证之前,就投入了全部成本。
三种铺开节奏的取舍
| 方案 | 优点 | 缺点 | 适合 |
|---|---|---|---|
| 一次性全量 | 看起来最快 | 中途崩则全废、先付全量 cost | 输入同质且流程已验证 |
| 横向铺步骤(齐步走) | 便于复用中间结果 | 一步出错全体返工 | 流程极稳、输入同质 |
| 先试错 + 纵向铺开 | 返工爆炸半径最小 | 前期多花一次试错 | 输入多样、流程未完全稳定 |
✅ 纵向:输入1[步1→步2→步3 完成] → 输入2[…] → 输入3[…]
❌ 横向:所有输入步1 → 所有输入步2 → 所有输入步3
对还没跑稳的流程,”先试错 + 纵向”几乎总是更省——一次试错挡住 N 次返工。
核心节奏:三个动作
- 单点试错(Pilot):挑 1 个最典型的输入,完整跑一遍全流程,人眼验收质量(对照验收断言清单),OK 才铺开。
- 纵向铺开(per-input):每个输入独立跑完”步1→步2→步3”再看下一个。核心性质是故障隔离——某输入出错只影响它自己。
- 横向例外:仅当批量跑过几轮、流程被断言锁死、输入同质,才值得横向提效;不默认横向。
三条设计规则:
- 先试错再铺开——拿 1 个代表性输入完整跑完、人眼验收,确认 OK 才铺开。
- 纵向独立推进——每个输入独立跑完整流程,某输入出错只影响它自己。
- 稳定是横向的前提——被断言锁死 + 输入同质,才用横向提效。
这个节奏不是 AI 时代的新发明
它一直是工程与组织验证过的推广方式,AI 只是让它重新变成刚需:
- 基础模块重构:先在分支上做 refactoring,挑一个用户模块切入使用,验证跑稳后再全量切换。有了 AI 还是这个节奏——否则 AI cost 控制不住。
- 政策推进:先在小批量城市实施试点,评估好后再推广,最后才铺到全国。
生成得越快,错得也越快;铺得越大,一次流程缺陷的账单就越大。试点先行,从来不是慢,而是最省的快。
实操:把”跑对了”变成能勾选的断言清单
纵向节奏能不能守住,不靠意志力,靠把”跑对了”翻译成一条条可勾选的断言:
- 完整性:每个输入都有且只有一份输出,输入 ID 一一对上——没漏跑、没重跑。
- 格式:字段齐全、命名与结构符合约定;拿手写验收过的那 1 份样例逐项比对。
- 事实:输出里的专名、数字、引用与输入一致,没有 AI 自行脑补。
- 一致性:同类输入出现同类问题,处理口径一致,不出现”同题不同答”。
- 边界:空输入、异常格式输入有明确兜底输出,不静默跳过、不报错含糊。
- 可追溯:每条输出记录输入 hash 与流程版本,回头能定位是哪版流程产出的。
格式/结构类断言能用 diff、jq 这类命令脚本化,事实类保留人眼复核——这正是”跑了”和”跑对了”之间的那道闸。
# ✅ 纵向:一个跑完、验收过了,才轮到下一个
for input in batch/*; do
run_pipeline "$input" # 步1→步2→步3 一次跑完
if ! run_assertions "$input"; then # 对照上面的断言清单
echo "FAIL: $input → 只修它、重跑它,不牵连已完成的部分"
break
fi
done
一句话原则:验收不是”跑完了”,是”跑对了”。等连续几轮断言全过、输入同质,再写批量脚本也不迟;在那之前,1 份试错的成本永远小于 N 份返工。
效果与可追踪指标
- 试错成本:只花 1 份 cost,却挡住 100 份的潜在返工 → 单位产出成本骤降。
- 爆炸半径:横向一步出错全盘返工 → 纵向某输入出错只影响它自己。
- 验收确定性:”跑了”就算完成 → 用断言清单确认”跑对了”才放行。
可追踪指标:铺开过程中因流程缺陷返工/作废的输入数。横向/全量往往是 N 个,纵向通常被压到 1 个试错样本内。发布后可额外记录”试错样本与全量样本的验收通过率对比”,确认试错确实挡住了共性问题。
落地清单
- 挑 1 个最典型的输入,完整跑一遍并人工验收(对照验收断言清单)。
- 没问题就逐个体跑完,别”先全部预处理”。
- 每个输入独立推进,出错只修它自己,不牵连已完成部分。
- 连续 3 次无意外,再考虑批量/脚本化。
- 把试错成本算进总账:1 份试错挡住 N 份返工。
- 确认自己铺开时按”每个输入纵向跑完”,而非”所有输入齐步走步骤”。
总结与延伸阅读
- 大面积用 AI 前先单点试错:拿 1 个代表性输入完整跑完、人工验收,OK 才铺开。
- 铺开用纵向而非横向:每个输入独立跑完整流程,出错只影响它自己,爆炸半径最小。
- 稳定是横向的前提:流程被断言锁死、输入同质才横向提效;一次试错挡住 N 次返工。
下次要批量跑一批文件前,先挑最刁钻的那一个单独跑一遍,对照断言清单验收——过了再铺,返工成本会小得多。本篇是「AI 高性价比使用策略」系列的一篇,更多工程实践文章见站点知识库。