你把一项计算交给智能体,它跑完了所有步骤,还给出了一个答案。你会先看它用了多久,还是先检查答案对不对?Google DeepMind 这份工作论文里,1024 位正式运行的首次完整求根结果就是错的。此前的 498 位演练已成功为多个目标求根,错误却藏在大规模运行才会触发的索引溢出里。
这比“AI 又把密码学加速了”更值得细读。论文展示了一次有条件的模运算复现,也留下了智能体如何分工、花掉多少算力、在哪里出错和如何验算的记录。对想把智能体接进科研工作流的你,真正的问题是:怎样让一次长时间运行的成功,有比完成报告更硬的依据?
这次算出了一个根,没有拿走 RSA 私钥
这份工作论文的完整标题是《Modular Roots from a Restricted Oracle: Faster Affine Roots and a 1024-bit Computation》。读懂实验之前,要先接受它的前提:计算者曾经拥有一个可以回答特定数学问题的接口,论文称为 oracle。它不是某家公司的产品,而是给定一个数、返回它在固定模数下 e 次根的数学服务。
实验分成两段。离线阶段可以预先选择输入、询问接口并保存结果;接口撤走以后,才抽取随机目标,在线阶段不能再问,只能利用之前的准备计算目标的根。这里的在线不是联网,而是目标已经出现后的计算阶段。
作者在一个 1024 位模数上复现了前人的非受限接口算法,指数 e 为 65537。独立的接口程序是唯一持有模数分解的程序,总共回答了 4,055,916,065 次预先查询。最后检查的是 x 的 e 次方模 N 是否等于目标 t,而不是是否找到了私钥。这是一项有大量先验访问条件的计算,不能读成只凭公钥攻破任意 RSA 系统。
CPU 用量下降和几天跑完是两件事
论文把首次求根所需的离线和在线计算合起来,记为 391 CPU 核年。核年是把各个核运行的时间累加,论文按虚拟核统计作业的用户态与系统态 CPU 时间,不是让一台机器连续跑了这么多年。前人同一实例报告的总量为 1,380 核年,约为原来的 1/3.5。模数、多项式和因子基界限相同,算法也相同,所以作者把差别归为实现和执行,而不是新算法的实测收益。
这个数字还有账本边界。CPU 用量统计的是产出被采用的作业,线性代数转到 GPU 上,GPU 时间另列,试跑和探测也没有计入主表。作者按前人的 CPU 线性代数成本补算,再加入自己的试跑开销后,比较值约为 3.3 倍。读到这里,你才知道“更省”是在什么口径下成立。
从首次全规模筛法作业到验出正确结果,实验用了 3.2 天;从开始设计到验算完成,则是 3 天 22 小时。它曾同时使用约 300,000 个 CPU 核和 16 块 GPU。作者明确说,与前人大约五个月的日历时间相比,这个缩短主要来自并行,不能再算一遍效率提升。把核年和天数分开看,才能区分少做了多少工作,以及用了多少资源把工作挤进更短的时间。
分工有用,是因为下一步花钱前要过检查
论文只把两个主要模型称为 Model A 和 Model B。监督者维护设计、阶段预算和检查条件,审查执行者的结果并决定是否继续;执行者写代码、测试、发起分布式作业、看日志和排错。另有一个专门子任务。人类研究者选择问题与实例,批准不可逆步骤的条件,没有写代码、启动作业或诊断故障。
关键不在角色起了什么名字,而在检查先于扩容。每个阶段先做小探测或 1% 的试运行切片,过关以后才放大。优化后的程序先要与原版在相同输入上对照,检查提速有没有漏掉后续计算要用的记录或待处理对象(完整运行比对相同关系,提前停止比对相同素理想)。发起接口查询批次前,还要确认这批查询覆盖了后续计算会用到的数据(线性系统引用的关系)。监督者不是等最后收到“完成”才看结果。
人类发出了大约 20 条短消息,多数是批准。这个低干预记录值得重视,但它没有给出所有科研任务都能少管人的结论。这是在既有软件、明确数学任务和大型计算集群上完成的一次案例。我的判断是,可借鉴的是把资源权限绑在可检查产物上,而不是照搬“监督者加执行者”就期待同样的自主性。
小演练没有抓住的错,最终等式抓住了
抽取目标之前,在线代码已在 498 位实例上完整演练,并为多个目标算出根。但大规模运行仍暴露了演练触不到的问题。论文表 4 记录了下降过程卡住、最后组合过慢,以及第一次完整结果验算失败等故障。
最直观的一项是存储答案的字节偏移使用了 32 位索引,数据越过 4 GiB 后发生回绕。求根实际读入了错误答案。智能体先检查保存的下降状态满足的恒等式,再分开检查有理与代数两部分,把故障定位到偏移,改用 64 位表示。修复不需要重跑已经撤走的接口批次。
这个过程没有证明智能体不会犯错,恰好相反:它说明正确性必须是工作流的一部分。你无法要求一个小样本提前碰到所有规模故障,但可以要求最终产物满足独立可验的约束,也可以让中间状态保留足够线索,避免失败以后只能从头再来。这里的等式能做硬检查;换成证据不完整、没有唯一答案的研究任务,检查机制还需要另行设计,不能把这次经验当成现成保证。
理论结果和实测结果不能合成一句“已经破解”
论文还研究输入格式限制会不会增加求根难度。它区分可以选择任何输入的接口,与只能改变固定格式中一小段内容的仿射接口。作者证明,当可选输入的窗口达到定理要求的平方根量级时,经过重新随机化,可以用两次仿射接口查询模拟一次不受限接口查询。这就是这里的归约:用受限制的接口完成原本要问不受限接口的事。变量恰好占模数一半位数的具体边界案例,则依赖测量,不是同一个证明。短窗口算法的成本分析还依赖文中列出的数域筛启发式假设。
这些理论改进不能拿来解释前面那次实验的加速。实测运行用的是非受限算法,没有测试短窗口的仿射算法;作者也没有在密码学尺寸上运行后者。论文把设备内部先算哈希的签名机制排除在两种接口模型之外,并明确说结果不威胁采用 2048 位及以上 RSA 的现有部署,在那个尺寸上的成本估计仍是渐近分析。
所以我更愿意把这项工作看作一份科研智能体的验收示例,而不是一则通用能力宣言。下一次你评估长任务智能体,先问它留下了什么能复核的中间产物、失败怎样定位、最终结果如何独立验证,再问它几天跑完。把“做完了”变成“经得起检查”,比把完成时间写进标题更有用。

