提升 Agent 任务可靠性的关键检查点设计

在处理图像和文字混合输入的复杂任务时,Agent常常面临“看起来会做但实际出错”的风险。一张财报截图里,数字的误读、表格线的模糊或单位标注的歧义,都可能被后续步骤放大。最终生成的表格如果缺乏可追溯的证据,业务人员往往不敢直接使用。这种现象提醒我们,提升Agent任务可靠性的核心不在反复强化提示词,而在于将任务拆解成可暂停、可核验、可回退的协同流程。

更可靠的做法是把“完成任务”转化为“交付可验证结果”。每个关键产物都必须带着证据向下游传递。对于图文混合场景,原始图片、识别出的字段、位置标注、用户文字的约束,以及最终表格,这些元素不能混入一段自由文本。流程可以拆分成四个相互衔接的角色:规划者负责确定任务边界和依赖关系;执行者完成识别、提取、计算等单一动作;检查者验证结果是否满足规则;修正者只针对明确的失败原因重新处理。这些角色不一定需要部署多个模型,同一模型在不同状态下运行即可,关键在于职责隔离。

规划阶段尤其重要,不能省略。它需要先回答输入材料的类型、哪些可信度较低、最终交付物包含哪些字段,以及字段间的可验证关系。如果失败后能否回到中间步骤,而不是整条链路重跑。这样设计能避免Agent因重复调用工具陷入无效循环。

以财报截图生成对比表格为例,表面上只需一张表格,实际至少涉及图像理解、数据抽取、口径确认、计算和表达五类任务。规划者不应直接要求“读图后给结论”,而是产出一个任务清单:先识别每张截图的报表期间、币种或单位;再提取目标项目及数值;随后将项目映射到统一字段;确认两期数据能否对齐;最后计算差异并生成表格与说明。每个任务都要明确输入、输出和验收条件。识别任务的输出不仅包括数值,还应保留字段名称、数值、单位、所属期间和图中位置等结构化信息。这样,当后续发现单位不一致时,修正者可以只回到单位识别或字段提取,而不必推翻已确认的项目名称和期间信息。

真正有效的检查点通常设置在错误会扩散的交界处,而不是只在最终答案生成后做一次自检。第一个检查点是输入完整性检查:在识别前,系统先判断截图是否可用,是否存在裁切、模糊、遮挡、旋转,同时给出的两期材料是否完整,用户文字是否说明了比较口径。若关键材料缺失,流程应停在这里并请求补充,而不是猜测缺失数据。这一关能区分“模型没有看懂”和“输入本来不足以完成任务”。

第二个检查点是字段与证据绑定检查。图像识别完成后,检查者验证每一个目标字段是否都有来源证据,字段名、数值、期间和单位是否成组出现。若截图中只识别到数字却找不到对应项目名称,或者“利润”一词存在多个可能含义,就应标记为待确认,而不能直接进入计算。可将字段状态分为“已确认”“存在歧义”“缺失”三类。只有已确认字段可以进入对比计算;存在歧义的字段交给修正者重新读取局部区域,或转为向用户提问;缺失字段则在最终表格中明确保留空缺及原因。

第三个检查点是跨期一致性检查。两张图即使都识别正确,也未必可以直接比较。常见问题包括期间不同、统计范围不同、币种不同,或一张按较大单位展示、另一张按较小单位展示。因此,在计算之前应建立一张“对齐表”,逐项确认两期字段是否属于同一指标、同一口径和可比较的单位。这个检查点不负责重新识别文字,而是检查数据关系。若发现其中一项无法对齐,应把失败原因返回给规划者,由规划者决定是补充换算、删除该项比较,还是请求人工确认。让规划者负责重规划,可以避免执行Agent在不清楚业务边界时自行拼接数据。

第四个检查点是计算与输出检查。在生成对比表格前,系统应把计算结果与原始结构化字段分开保存。检查者验证每个差异值都能追溯到两期输入,变化方向是否与数值关系一致,表格中是否混入了未确认字段。若用户要求的是“变化方向”,就不应额外把无法核验的原因分析包装成事实。最终输出还应携带简短的异常说明,例如“某项目单位未能确认,未纳入比较”。这比生成一张完整但可能错误的表更适合企业场景,因为使用者能快速判断哪些内容可直接采用,哪些内容需要复核。

自我纠错最容易被误解成“发现问题就再跑一遍”。这种做法既浪费资源,也可能让Agent在同一错误路径上循环。修正动作必须绑定失败类型和回退位置:图像模糊就回到输入检查;字段缺证据就回到局部识别;口径不一致就回到对齐与规划;计算矛盾则回到计算步骤,而不是重新识别全部截图。同时要为每个节点设置终止条件。比如,当同一字段经过有限次处理仍无法确认时,流程应输出待人工确认项;当计划发生变化时,应记录旧计划为何失效、新计划替换了哪些步骤。这样,系统的“自我纠错”才是可审计的失败恢复,而不是不可控的反复调用。

对企业级多模态Agent来说,可靠性往往来自流程设计:先把复杂目标拆成能验证的小任务,再让检查点阻止错误继续传播,最后用有限、明确的回退路径完成修正。模型能力决定它能走多远,任务编排决定它会不会在错误方向上越走越远。这种设计思路能否成为提升Agent可靠性的标配,我们不妨一起在实际场景中继续探讨。

参与讨论

0 条评论

延伸阅读