写在前面
最近做一个几十万字的历史专题资料汇编,跨朝代、古籍考据、要求每条引文可溯源。这个任务本身不重要,重要的是它把多模型编排的所有技术坑都踩了一遍:境外接口超时、幻觉引文、跨专题术语漂移。我们用五份并行设计的组队方案做了实测比对,本文只讲工程实现:架构怎么分层、降级链怎么写、质检闸门怎么脚本化。按平台要求,本文不涉及具体产品推广。
一、先说结论:这类任务的架构长什么样
五份方案在架构上完全收敛,分层结构如下,可以直接抄:
第一层,人类定盘层。选题立项、核心框架、史料解读、终审四个环节锁定为人类专属。实测发现凡是让模型代劳框架设计的,后期返工率最高。
第二层,统稿层。一个长文统稿能力最强的模型角色,只管体例与质量,不干活。实测辨析后认定队长必须是两个角色:总编辑管质量,项目经理管调度,合在一个角色上会互相拖累。
第三层,专业工位层。考据核查用带实时检索的模型,一致性维护用长上下文模型,各自只吃一种输入。
第四层,执行中枢。一个能真跑代码的 Agent 中枢,负责路由、重试、降级、用量统计、文件落盘。这一层是整条流水线能不能跑起来的分水岭,后面细讲。
二、降级链实现:三级降级是底线配置
实测中境外模型接口确实出现超时,不是偶发。所以编排模块必须内建三级降级,逻辑用纯文字描述如下:
请求先走首选接口。设置两层超时:连接超时 10 秒,读超时 120 秒(长文生成场景,读超时要比通用对话场景放宽)。
超时或连续两次失败,切备用接口。备用接口必须是不同供应商,不能是同一家的高级版换皮。
备用接口也失败,切本地模型兜底。本地模型只要求能产出结构化草稿,不要求质量,兜底的目的是让流水线不断流,质量由重试机制事后补。
三个关键实现细节:
1. 降级状态要写日志,每个请求记录走了哪一级、耗时多少。没有日志的降级等于没做,你不知道生产环境里兜底被触发了几次。
2. 本地兜底模型的输出必须打上降级标记,进入统稿层时降级稿单独走一道复查,防止低质内容混入正文。
3. 用量统计按请求粒度记账,token 消耗、超时次数、降级次数三个指标分开记,否则成本归因做不了。
三、三道质检闸门的脚本化实现
质检不能靠人肉,三道闸门全部脚本化:
第一道,来源标注闸门。规则很简单:任何一段正文,没有出处字段就不允许进入汇编。实现上给每段输出强制加一个元数据块,脚本校验字段完整性,缺字段直接打回。实测中无出处的论断在复核阶段几乎全部被打回,这道闸门拦下了最大宗的幻觉引文。
第二道,交叉验证闸门。关键论断要求两个模型独立产出,脚本比对两份结果的实体与结论是否一致。不一致的进人工队列。注意是独立产出,不是让第二个模型看第一个模型的答案再确认,那种确认式复核会顺从第一个答案,实测里完全起不到拦截作用。
第三道,一致性回归闸门。每个专题完成后,跑一遍全编术语表与纪年表比对,输出漂移清单。实测里跨专题的术语不一致靠人眼根本找不全,只有全量脚本比对能兜住。
四、实测数据与口径说明
把数据分级说清楚,哪些是实测值,哪些是推算值:
实测值:境外接口在本机环境确实出现超时,触发过降级切换;无出处论断打回率接近全部;确认式复核(让模型看答案再确认)拦截效果接近零。
推算值:全商业轨成本约一百多美元量级、混合轨几十美元量级。推算方法为按各模型公开定价乘以预估 token 量级折算,未做实机长跑,请以实际消耗为准。
推算值怎么变成实测值:选一个两千字专题片段,让候选模型各跑一遍整理加核查,记录实际耗时与消耗。实测经验是核查环节的消耗往往超出预期,占大头,估算时不要只算生成成本。
五、复测清单
1. 接口连通性巡检:对候选模型逐一做连通测试,记录超时率,把连通率写进验收条件。超时率高的模型统稿能力再强也不能当队长,可用性是一票否决项。
2. 一致性压力测试:故意在两个专题里植入术语与纪年冲突,检验回归脚本能否全部找出。找不全就加严规则,改为双重比对加人工抽检。
3. 快照机制验证:每专题完成即版本快照,多方案并行时无快照的版本很快无法追溯,回退演练要提前做一次。
4. 增量更新:汇编定稿后常有增补,流水线要支持按专题增量更新,并自动触发受影响部分的一致性回归。
六、三点局限
1. 比对对象是五份方案文本加局部实机验证,不是五次完整执行,架构结论可信,性能数字要自己复测。
2. 模型能力描述基于方案产出当日的公开信息,选型结论有保质期,开工前重新校准。
3. 部分比对依赖关键词统计,口径不统一时强度会失真,关键结论已回到原文逐条核对。
七、结语
这次实测最大的收获是验证了一条铁律:多模型流水线的成败不在选哪个模型,而在执行中枢——路由、降级、闸门、记账这四件事有没有脚本化。模型版本会过时,这套结构不会。
下一阶段是专题样编试产,跑通全链路后再铺开。愿这条流水线的实现细节能帮同类项目少踩坑。
(全文完)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。