Administrator
Published on 2026-08-06 / 5 Visits
0
0

国家实验室里的 AI:科学 Agent 需要怎样的验证栈

一套科学软件重写与参考实现的预测面相关性达到 0.991,看起来已经非常接近正确答案。但在 OpenAI 一份科学计算案例报告里,这个结果仍然掩盖了明显缺陷:14 个系数中有 11 个越过预设容差,一个关键系数相差 -1.20,首版运行速度还是原实现的 3.6 倍之慢。

这正是国家实验室和科研团队引入 AI Agent 时需要警惕的地方。Agent 能否生成代码,已经不是唯一瓶颈。真正困难的是,科研流程能否让那些被漂亮平均分掩盖的错误及时显形。

因此,科学 Agent 需要的不是一个总分,而是一套验证栈:外部参考、参数与不变量容差、模拟真值、算法和数值诊断、真实数据与科学验证。每一层回答不同的问题,不能互相借用可信度。

扩大模型供给后,验证会成为新瓶颈

OpenAI 在 2026 年 7 月公布的国家科学计划中,提出向约 2,000 名 Genesis 项目的国家实验室和高校研究者提供 Codex,并支持大型科学攻关、超算、模拟系统和实验设施的结合。公告同时强调,研究者仍需负责定义问题、选择方法、质疑输出和验证结果。

这个边界非常关键。模型供给扩大以后,代码生成和工程改造的吞吐量会迅速上升,但专家审核能力不会自动同步增长。Agent 可以在很短时间内迁移软件包、优化内核、添加采样器并生成基准数据,而团队可能还没有提前定义什么证据才算通过。

配套的科学计算现场报告汇总了 8 个 Agent 辅助项目。报告提炼出的共同规律是:Agent 擅长执行边界清楚的工程任务,但无法可靠判断结果是否具有科学有效性。表现最稳健的项目会使用外部参考或可测量的验收目标,并把大项目拆成多阶段反馈循环。

报告也明确写出了证据边界:除非另有说明,各项目的基准和验证结果应被理解为贡献者报告的个案结果。报告作者检查了内部一致性和部分公开工件,但没有独立复现所有数字。本文沿用这条边界,不把案例数字表述为独立重复实验。

0.991 为什么仍然不够

bayesm-rs 项目把 R 语言 bayesm 包里的部分贝叶斯模型和采样器重写为 Rust,随后又扩展了 HMC/NUTS 采样路径,以及一个源自 bayesm.HART 的非线性异质性实现。

在 HART 的首轮比较中,项目使用原始文档里的银行数据案例,包括 946 名受访者、14 个系数和 5,000 次采样。重写版与原实现的受访者系数预测面相关性达到 0.991,也复现了大部分关键分群差异。

但更细的检查暴露出问题:

  • 14 个系数中有 11 个,其跨受访者均值差超过 0.25 个参考标准差。
  • 关键的 Out_State 系数有 -1.20 的有符号差异。
  • 单线程运行时间为 50.0 秒,原实现是 13.9 秒,8 线程也没有更快。
  • 重写版使用一个固定收缩常数,原实现却会根据各系数尺度自适应收缩。
  • 被复用的更新过程每轮都重建大矩阵,使扩展设计矩阵下的成本呈二次增长。

另一条 HMC/NUTS 扩展也说明了同样的问题。它最初满足总体均值的一致性标准,但对角质量矩阵被错误地取了逆,后来的模拟校准又发现轨迹构造缺陷。

问题不在于相关性毫无价值,而在于每个指标都有视野边界。0.991 看到了预测面的总体形状,却无法证明参数保真、先验保真、采样器正确性和计算扩展性。验证栈的意义,就是组合一组对不同错误敏感的检查。

目前公开的 HART Pull Request仍标记为 Draft,说明里也把后端称为实验性实现,而非与上游逐位等价。这是一个很有价值的验证案例,但不是生产就绪证明。

第一层:外部参考一致性

先选择可信的参考实现、解析结果、标准样例或已经由实验确认的答案,并冻结准确版本。然后在最小而有意义的接口上比较。

确定性程序可以要求输出完全一致。随机算法通常需要分布级或容差级合同。参考实现本身不必然代表真理,但它提供了稳定边界,让无意的行为变化可以被观测。

验收说明至少要写清楚:

  • 数据集与预处理版本
  • 参考实现和提交版本
  • 先验、初始化、随机种子与链配置
  • 要比较的量
  • 容差,以及该容差为何在科学上可接受

第二层:参数与领域不变量

总体指标只是摘要,不能代替接口合同。必须进一步拆到参数、亚组、边界条件、守恒律或其他领域不变量。

HART 案例里,0.991 的总体相关性与大范围系数偏差同时存在。即使预测结果相近,系数差异仍可能改变科学解释。换到物理场景,类似问题可能表现为违反守恒律;换到基因组分析,可能只影响某类变异;换到气候模型,全球平均值可能掩盖区域偏差。

容差应在查看候选结果之前确定。看完结果再挑阈值,只是在描述已经发生的结果,不是独立验收。

第三层:模拟真值

当系统要估计潜在变量时,真实数据通常无法告诉我们推断过程是否校准,因为真正的参数本来就未知。模拟数据可以补上这个缺口。

模拟校准会反复从模型先验中抽取真实参数,生成数据,运行采样器,再记录真实参数在后验样本中的秩。如果实现正确,秩统计在被测试的生成模型下应近似均匀。现场报告称,修正后的各采样器在每个模型 500 到 1,000 次重复中,秩直方图与均匀性相符。

它能发现总体后验均值比较看不到的错误,但结论需要严格限定。模拟校准证明的是:在声明的模型和测试范围内,推断实现与概率模型一致。它不能证明这个模型准确描述了真实世界。

第四层:算法与数值诊断

科学正确性也包括答案是怎样得到的。采样器需要收敛和有效样本诊断,优化器需要稳定性与敏感性检查,数值求解器需要残差、条件数和误差界,并行实现需要隔离关键维度的扩展性测试。

正确性门和性能门应分开。更快的错误实现仍然失败,正确但成本意外呈超线性增长的实现也可能无法进入真实工作负载。

HART 案例通过只改变基函数列数,定位到重复矩阵构造这个瓶颈。修正后,报告称 44 列配置下的相关更新从 4.71 秒降到 0.56 秒,整体比原始 HART 实现快约 2.6 倍。这个性能结论之所以有意义,是因为它出现在正确性缺陷修复之后。

第五层:真实数据与科学验证

最后一层要回答,软件是否真的支持预定的科学结论。方法可能包括留出数据预测、独立数据集复现、与实验测量对照、领域专家审查,以及前瞻性实验。

真实数据不能替代模拟真值,因为真实潜在参数未知。模拟真值也不能替代真实数据,因为一个实现完全正确的模型,仍可能错误描述自然系统。两者回答的是不同问题。

高后果场景还要明确发布边界。某个工具可以适合探索性分析,却不适合临床、安全、监管或国家安全决策。所谓“仅供研究使用”需要在流程里对应真实控制,而不是只写在 README 里。

在优化之前冻结实验

如果 Agent 一边改实现,一边改测试、参考目标和成功阈值,验证就失去了独立性。主运行前应先冻结一个小型证据包:

工件 防止的问题
输入清单与哈希 数据或预处理被悄悄替换
环境和依赖锁定 结果无法重建
参考提交与运行命令 比较目标移动
验收规格 事后选择阈值
随机种子与运行清单 随机差异不可追踪
原始结果与比较脚本 结论只存在于文字描述中

Agent 可以建议改进验证计划,但变更必须产生新版本,并使旧比较失效。这样,验证才真正成为一个外部可检查的接口。

用证据状态替代一个“通过”标签

单一绿灯很容易造成状态膨胀。更诚实的记录方式是区分不同证据层级:

  1. 候选实现:代码存在,普通测试已经运行。
  2. 参考一致:指定输出满足冻结的比较容差。
  3. 模拟校准:在声明范围内通过合成真值测试。
  4. 领域审查:专家检查过科学假设和已知失效模式。
  5. 独立复现:另一团队使用保留工件重建了结果。
  6. 可维护发布:有责任人、回归套件、兼容策略和维护路径。

这些标签只有在证据被保留时才能累积。一个 Draft PR 可以已经完成参考比较,但仍未被独立复现。一组贡献者报告的基准也可以真实、有用,同时不具备独立实验的证据等级。边界说得越精确,信任反而越稳固。

同样的准入原则也适用于数学 Agent 的双循环验证协议:探索性工作可以保留不确定性,但进入长期知识库的结论必须经过明确的晋级门。

一份可直接使用的科学 Agent 审核单

批准 Agent 生成的科学改动前,可以要求一页验证记录:

  1. 主张:要成立的科学或计算性质是什么?
  2. 参考:由哪个外部结果或已有实现锚定比较?
  3. 验收目标:总体、参数、不变量、诊断和性能阈值分别是什么?
  4. 模拟范围:生成了哪些真值,参数范围多大,重复多少次?
  5. 真实数据边界:已经验证什么,还有什么未知?
  6. 证据状态:贡献者报告、公开工件支持、独立复现,还是持续运行监测?
  7. 责任人:谁维护代码、重跑回归、评估模型升级并决定发布?

并非每个项目都需要形式化所有层。最低要求是明确哪些层适用、哪些已经通过、哪些仍然开放。

验证能力本身就是科研基础设施

当国家实验室获得更强的 Agent,代码产出会比专家审查增长得更快。共享数据集、参考容器、模拟框架、基准注册表、工件保留和责任分配,不是行政成本,而是把廉价生成代码转化为可复用科学能力的基础设施。

长期优势不会来自某个模型生成了最多代码,而会来自一套制度:科学错误容易暴露,证据容易复现,责任不会在发布后消失。

常见问题

什么是科学 Agent 的验证栈?

它是一组分层检查,用外部参考、局部参数或不变量、模拟真值、数值诊断和真实世界证据验证 Agent 输出。每层针对不同类型的失效。

为什么单元测试不够?

单元测试可以检查已知代码路径和样例,但通常无法证明统计校准、跨范围数值稳定性、与参考方法的保真度,以及科学假设本身是否有效。

模拟校准能证明模型在科学上正确吗?

不能。它验证推断实现能否在指定模型生成的数据上恢复已知真值。一个内部校准良好的模型,仍可能不准确地描述真实物理或生物系统。

什么时候能说 Agent 重写已经生产就绪?

只有必要的验证层通过,并且项目具备责任人、可复现工件、回归套件、发布边界和维护计划时,才适合这样表述。一次成功基准或一个 Draft PR 都不够。

参考资料


Comment