Lazy loaded image
Agent 可靠性不能靠自我反思,关键在外部证据边界
字数 1124阅读时长 3 分钟
2026-5-13
2026-5-13
当系统只在自己的语言空间里判断自己,它很容易把连贯性误判成真实性。模型说"我检查过了",并不等于关键步骤已经被验证;反思循环看起来更谨慎,也可能只是把同一个错误假设包装得更完整。

自我反思的局限性

很多系统都在讨论 agent 的自我纠错能力,但这种能力的边界在哪里?关键问题不是"agent 要不要 metacognition",而是哪些判断不能继续留在语言空间里。
单次 jailbreak scorer 只能看见页面上的文本,不能实际复现 exploit;一个 judge 可以评价答案像不像正确,但不能替代编译器、测试套件或化学实验;MedQA 这类旧 benchmark 一旦被训练或传播污染,分数就可能衡量熟悉题库,而不是医学推理能力;厂商自报性能如果没有 referee-enforced rules,也更像市场叙事,不是工程证据。

哪些判断必须离开语言空间

在复杂的 agent 系统中,有一些关键判断绝对不能交给模型自评:

代码相关

  • 编译验证:代码能不能正确运行
  • 测试通过:单元测试、集成测试是否通过
  • 性能达标:执行时间、内存使用是否满足要求

任务执行

  • API 调用成功:外部 API 是否返回预期结果
  • 数据完整性:数据是否正确采集、转换、存储
  • 业务逻辑完成:关键业务流程是否完整执行

安全与合规

  • 安全漏洞检测:是否能实际复现攻击路径
  • 权限验证:用户权限是否足够执行操作
  • 合规检查:是否符合相关法规和标准

评测质量

  • benchmark 公平性:评测集是否未被污染
  • 评分可靠性:是否有刷新集和隔离规则
  • 结果可复现:其他环境是否能得到相同结果

反思与验证的不同角色

自我反思在 agent 系统中确实有价值:
  • 提出假设:帮助 agent 发现可能的遗漏
  • 检查计划:明确下一步需要验证什么
  • 不确定性表达:诚实表达自己的信心程度
但它不能替代外部世界。可靠系统要做的是把自我反思降级为"提出假设",把验证权交给可执行、可审计、可刷新、可回放的证据装置。

真正可靠的证据边界

一个成熟的 agent 系统应该明确区分:
  • retrieval:信息检索,明确标注来源
  • inference:推理推断,说明推理依据
  • guess:猜测估计,标注置信度
在这些边界之外,必须接入外部验证:
  • 执行验证:代码编译、测试运行
  • 审计证据:操作日志、权限记录
  • 回放验证:可以重复运行的检查
  • 隔离评测:独立的裁判环境

证据设计的工程清单

必须外部验证的场景

  • 代码执行结果
  • API 调用状态
  • 支付交易完成
  • 安全漏洞确认
  • 性能指标达成
  • 合规要求检查

证据保存要求

  • 可执行:可以独立运行验证
  • 可审计:包含完整的操作痕迹
  • 可刷新:可以在新环境重新验证
  • 可回放:可以重现整个过程

验证失败处理

  • 明确失败原因分类
  • 设计重试机制
  • 保留失败证据
  • 建立恢复流程

可靠性的本质

agent 可靠性的核心不在于让模型更会说"我重新检查了一遍",而在于设计强制离开语言空间的证据边界。没有这些边界,自我纠错会退化成自我辩护,benchmark 会退化成榜单游戏,安全打分会退化成文本印象分。
真正可靠的 agent 应该知道:哪些事可以自己判断,哪些事必须交给外部系统证明。这不是否定反思,而是把反思放在正确的位置——作为假设提出者,而不是最终验证者。
上一篇
Agent 优化要先补流量账本,而不是先换模型
下一篇
Agent 调试不能停在 trace:还要有责任交接收据

评论
Loading...