打开网易新闻 查看精彩图片

2024年,企业级AI系统的平均首次修复成功率是34%。谷歌云工程师Matt Williams把这个数字故意压到更低——他的AI在第一次诊断后,91%的情况下会被系统拦下。

这不是bug。这是设计。

Williams在GitHub开源的Dead Letter Oracle,专门处理事件驱动架构里最脏的活:死信队列(Dead Letter Queue,失败消息堆积区)。传统方案是工程师手动排查、猜一个修复方案、直接上生产环境赌运气。他的系统反着来——第一次修复故意让它错,用模拟环境验证,再决定是否放行

为什么"故意失败"比"一次成功"更可靠

为什么"故意失败"比"一次成功"更可靠

大多数AI Agent演示都在走 happy path:输入问题,输出正确答案,掌声响起。Williams在博客中写道:「A system that always succeeds on the first try is not reasoning — it is pattern-matching.」(总在第一次就成功的系统不是在推理,它只是在模式匹配。)

Dead Letter Oracle的核心机制是强制分阶段验证。消息进入死信队列后,系统执行四步闭环:

第一步,LLM(大语言模型)提出修复方案;第二步,确定性工具验证方案的具体性——"调整生产者schema"这种模糊指令会被打低分,"将user_id改为12345"这种可执行指令得分更高;第三步,模拟重放测试;第四步,Gatekeeper(守门人模块)根据置信度和环境风险做出ALLOW/WARN/BLOCK决策。

打开网易新闻 查看精彩图片

关键设计在于:模拟环境必须暴露第一次修复的缺陷。Williams举了一个真实场景——某消息因schema版本不匹配失败,AI首次建议"降级到v1 schema"。模拟显示这会丢失v2新增的字段数据。第一次修复被证伪后,系统进入修订循环,而非直接上生产

Gatekeeper的决策逻辑:同一修复方案,生产环境比测试环境更难通过

Gatekeeper的决策逻辑:同一修复方案,生产环境比测试环境更难通过

Gatekeeper评估四个独立因子:模拟置信度、环境类型(生产/预发/测试)、修复确认状态、历史相似案例结果。这不是硬编码的if/else,而是多因子评分模型——和访问控制、风控系统的架构同源。

一个具体案例:某修复方案在模拟中获得0.91置信度。在预发环境,Gatekeeper输出ALLOW,自动重放。同一方案进入生产环境,输出变为WARN——触发人工审核流程。

Williams解释这个设计:「The Gatekeeper applies a higher confidence threshold in production than in staging.」生产环境的容错成本更高,因此阈值更高。这不是保守,是校准。

BLOCK触发条件同样明确:模拟置信度在修订后仍低于阈值,或未确认任何修复方案。系统不奖励"努力过",只奖励"验证过"。

MCP协议:把AI工具变成可组合的基础设施

MCP协议:把AI工具变成可组合的基础设施

打开网易新闻 查看精彩图片

Dead Letter Oracle的技术架构值得拆解。Agent和MCP(Model Context Protocol,模型上下文协议)服务器作为独立进程运行,通过stdio通信。这个边界不是装饰——工具可以被任何MCP兼容客户端调用,不限于这个Agent本身。

Williams设计了四个MCP工具:三个确定性工具(诊断消息、验证修复、模拟重放),一个编排工具(整合前三个为治理流水线)。LLM只负责解释层:提出和修订方案。测量和验证交给确定性工具。

这种分工回应了企业AI的一个核心焦虑:如何把"智能"关进笼子里?答案是协议化。MCP工具是契约,不是实现细节。换一家公司的Agent,只要兼容协议,就能调用同一套诊断能力。

置信度计算方式也公开透明:replay_simulate评估三项指标——修复后的schema有效性、修复具体性(具体值vs高层指令)、与重放规则的对齐度。高分修复必须同时满足:语法正确、动作可执行、符合组织策略。

这套设计把"AI黑箱"变成了可审计的决策链。每一步推理、每一次评分、每一个决策都有日志。合规团队可以追问:为什么这个方案被WARN?Gatekeeper会指向模拟报告的具体字段。

开源社区的反应验证了需求。项目发布两周内, issues区聚集了来自Netflix、Spotify、Snowflake等公司的工程师,讨论最多的是阈值调参——0.91在生产环境触发WARN,那0.95呢?0.87呢?Williams的回复是:「阈值不是常数,是组织风险偏好的函数。」

一个细节值得玩味。Dead Letter Oracle的README里没有"AI"这个词,只有"agent"和"LLM"。Williams在讨论区解释:「我们不是在卖智能,我们是在卖治理。」

当你的死信队列里躺着一条失败消息,AI第一次给出的修复方案,你希望它直接执行,还是先证明自己是错的?