寓言
分诊台和会诊协调处
一家大型综合医院的门诊大厅设了一个分诊台。病人进门先描述症状,分诊护士根据描述判断该挂内科、外科、还是皮肤科。分诊的依据是症状本身——肚子疼挂内科,骨折挂外科,皮疹挂皮肤科。护士不看病,只分流。
医院里还有一个会诊协调处,处理的是另一种分配问题。当一个病例涉及多个科室——比如一个糖尿病患者摔骨折了需要同时控制血糖和做骨科手术——协调处根据各科室的专长和排班情况决定由哪位内分泌科医生和哪位骨科医生联合处理。协调处不诊断症状,只匹配医生能力。
有一阵子医院搞流程优化,有人提议把分诊台和协调处合并成一个统一调度中心。新中心运行两周就出了岔子:一位腹痛病人被分诊到内科,但内科医生检查后发现是宫外孕需要立即转妇科手术。统一调度中心按症状分流到了内科,却没有能力识别这是一个需要妇科紧急介入的跨科病例。
事后复盘发现,分诊是看症状的表面特征做快速方向判断,调度协调是需要理解任务执行过程中出现的新需求和跨领域依赖。前者基于输入的语义特征匹配单一的初始路径,后者基于任务进展动态调整执行者的组合。合并之后,两件事的可靠度同时下降了。
医院恢复了分诊台和协调处的双层结构,但加了一条联动规则:当协调处收到分诊台转来的病例后,如果在初始科室执行过程中发现需要其他科室介入,协调处有权直接调配资源,不再回到分诊台重新分流。分诊台负责进门第一跳,协调处负责后续所有跳。
后来有人画了一张图解释双层路由:分诊台是请求入口的路由器,看一句话就决定第一站去哪;协调处是任务执行中的编排器,盯着任务进展随时调整后续的队伍组合。把这两张网压成一张,结果就是第一站可能就判断错了,后面还没人纠正。
两年后医院信息科整理架构文档时,把分诊台归类到意图识别与语义路由,把协调处归类到Agent编排与能力路由。同一个路由两个字,一个管的是入口分流,一个管的是执行协同。文档末尾写了一行提醒:不要把网关当编排器用,也别让编排器去做入口分流。