这篇讲一条任务分流链路:任务拆解、可验证路由、判断队列、技能缺口标记。
背景很直接:工具在有判定标准的任务上,进展远快于其他任务。工程上要处理的不是「能不能做」,是「哪些做、哪些不做、做过的怎么留痕」。

链路形态
四个模块串起来,职责各自独立。
| 模块 | 职责 |
| task_split | 把一段业务拆成任务,标注每条的判定方式 |
| verify_router | 按有无判定函数把任务分流到自动或人工通道 |
| judgment_queue | 承接无法自动判定的任务,记录判断人、依据与结论 |
| skill_gap | 汇总人工通道的任务类型,产出技能缺口清单 |
链路的顺序不能颠倒。跳过 judgment_queue 直接扩自动通道,判断依据会散在个人手里,人一走就断档。
判定函数决定分流
判断依据就是有没有判定函数:有判定函数就能做闭环,没有判定函数就只能靠人兜底。
def route(task, trials=3):
if task.checker is None:
return "judgment", None
for _ in range(trials):
out = run(task)
if task.checker(out):
return "verified", out
return "judgment", None
判定函数有三类常见形态:
- 代码产出:能跑通、单测通过、类型检查无报错。
- 形式化推演:结论能被机器逐步复算。
- 事实型问答:答案能与既存记录对上。
这三类适合交给自动通道。剩下的走判断队列。
判断队列容易被砍的一环
任务分层之后会出现一个反直觉结论:可自动化部分的成本下降,会抬高不可自动化部分的相对价值。
工程上对应一个容易做错的取舍:自动通道省钱见效快,判断队列只花时间不出产能,于是排期里先被砍。砍完之后短期指标好看,两年后接手的人无从下手。
JUDGMENT_FIELDS = ("task_id", "owner", "criteria", "evidence", "outcome")
def record_judgment(row):
missing = k for k in JUDGMENT_FIELDS if not row.get(k)
if missing:
raise ValueError("judgment incomplete: %s" % ",".join(missing))
return store(row)
三种折中做法的代价
交付侧的变化很直观:过去受限于人力规模的需求,现在可以用更小的团队承接。随之出现一批折中做法: - 只留自动通道,判断部分靠口头约定 ------ 人员流动即断档。
- 判断部分写进聊天记录 ------ 检索不到,等于没写。
- 判断部分写成会议纪要 ------ 有结论没依据,复盘时对不上。
这三种都属于技术债,只是暴露时间不同。
评测口径的偏差会污染分流决策
有一层偏差会直接影响分流参数。
有判定函数的任务,评测手段成熟、样本充足;没有判定函数的任务,量化成本高、样本稀薄,长期凑不出规模。
样本不足的后果是,自动通道的通过率会被高估。它不是被算错了,是分母里缺了难的那部分。
工程上的处理办法有两条:一是把人工通道的任务类型单独统计,不混进总通过率;二是给判断队列设一条独立的健康指标,比如平均停留时长,而不是复用产出数量。
留痕之后还要能回放
留痕只是开头,能不能回放决定它有没有用。
回放需要三样东西同时在场:当时的判定标准、当时的背景材料、当时的结论与理由。缺任何一样,事后都只能看到结论,看不到为什么。
判断队列的字段之所以要压到四个,原因就在这儿------字段越多,人越倾向于只填结论。
还有一个组织层面的取舍值得提前定下来:判断人离职前,判断依据归谁。常见做法是让同层级的同事接手核一遍,核验记录一并入库。这一步不做,判断队列会随人员流动反复清零。
分流参数不是一次调好的。业务变化会改变任务构成,原本有判定函数的任务可能变成没有,反之亦然。建议每季度重跑一次分布统计,把通道比例的漂移记录下来,漂移本身就是信号。
踩坑记录 - 用统一的通过率给两类任务打分。两类任务的基准完全不同,混在一起算出来的数没有意义。
- 把判定函数的覆盖范围当成能力上限。判定函数只覆盖能写出来的那部分。
- 自动通道扩太快,判断队列没有对应扩容。结果是自动侧产出激增、人工侧积压,整体节奏反而变慢。
- 留痕字段设计过重。判断人如果要填十几个字段,往往填不全;四个字段是能长期坚持的上限。
自建的分流入口可以挂在your-domain.test下的内网地址,跑顺再考虑对外开放。
两处常见误解
量级上有个常被读错的地方:一次集群任务动用了 1200 个智能体协同,被外界当成失控信号。工程视角看,普通机器上同时跑上千个后台进程很常见,真正的缺口在隔离与监控是否完整。另一处是训练成本:要达到同等能力,投入常见十亿美元这个数量级,这也是为什么围绕它的说法多半跟着投入结构走。
从工程选择的角度,开放权重意味着依赖链路上少一个单点:不受单一供应方节奏牵制。
招聘口径已经改过:只认能不能把工具接进现有流程,只认交付节奏,不认手写代码的量。这类信息无法结构化,它分散在无数次会议、邮件和口头沟通里,哪个表格都收不拢。
可自动化的部分越便宜,留在人这一侧的部分就越该被认真计量。
工程侧能做的仍然是流程;至于人怎么补上判断这一课,没有现成的技术方案。