乐于分享
好东西不私藏

和翁家翌(OpenAI)一样的idea!如何让 AI 全自动刷榜——可能的下一个强化学习范式

和翁家翌(OpenAI)一样的idea!如何让 AI 全自动刷榜——可能的下一个强化学习范式

主页:http://qingkeai.online/


作者:黄呈松,圣路易斯华盛顿大学博士生

免费为科研人员提供成果宣传支持,如有优秀研究成果分享推广,欢迎投稿联系:aiFreeCode

在Deep Learning之前,我们在做传统机器学习,通过研究规律,写基于规则的代码来完成我们想要完成的任务。

在LLM之前,我们用深度学习来提取特征,设计网络来完成我们想要完成的任务

在LLM之后,我们似乎试图用LLM来解决所有的任务

但...我们真的达到了前两种范式的上限吗,还是人力有穷呢!

来自Google,Meta,UMD,UVA,WUSTL,UNC 等研究机构用一个新兴的和LLM有关的方向efficient-time scaling来证明,其实方法是对的,只是人力有限。

Claude Code用160分钟t40干完了TTS 圈研究员几年的活。

LLM前我们刷榜的方式是什么?

写一个简单的方法->看看测试效果->根据case study发现方法不够好的地方->优化方法,然后循环这个流程

那么新的范式呢?

让agent写一个简单的方法->让agent看看测试效果->让agent根据case study发现方法不够好的地方->让agent优化方法,然后让agent循环这个流程

文章里的TTS只是一个很小的例子,任何我们在deeplearning之前试图用rule-based代码解决的问题都可以用相同的范式简单的实现,毕竟人类研究也不过是对这轨迹和结果调试(bushi

Github: https://github.com/zhengkid/AutoTTSHomepage: https://zhengkid.github.io/AutoTTS-web/ArXiv:https://arxiv.org/abs/2605.08083Huggingface: https://huggingface.co/papers/2605.08083

代码、环境已经全面开源!欢迎大家讨论、引用、Star

那张被忽视的面板

过去几年那一堆听起来风格迥异的TTS方法,本质上是同一个旋钮面板上的几个手调点位。这里面为了简化,我们以一个特殊的二维空间为例:

  • • 宽度——同一个题多采几条思路一起跑
  • • 深度——每条思路想多久才停
  • • 副旋钮——什么时候probe中间答案,什么时候剪枝,什么时候停,怎么聚合

SC@64是"宽度拉满、不剪枝、最后投票"。ASC在宽度上加自适应停止。ESC在宽度上加了滑窗一致性早停。ST-BoN先开宽、剪到一条再加深。Parallel-Probe则是同时调整两个维度,深度早退,宽度剪枝。每个方法都是这个面板上的一个特殊的例子

显然这是一个摆在明面上的搜索问题,被整个圈子集体错过了好几年。

换句话说——如果我们能把这个空间和对应的环境提前定义好,剩下的事是不是就不用人类手调了?是不是可以直接交给一个frontier coding agent,让它在这个空间里搜?

这也进而揭示了AutoTTS真正想传达的范式:人的任务由设计算法,转到设计相应的搜索环境,而搜索任务通过frontier coding agent自动发现。

AutoTTS 怎么用 40 块钱搜的

AutoTTS的整体机制是一个discovery loop:每一轮,一个explorer LLM(论文里用的就是Claude Code)读取历史H——里面存着此前所有试过的controller,它们的精度–成本曲线,以及每次评估的完整执行轨迹——然后直接编辑method.py里的controller代码,提出一个新版本;

这个新controller在搜索集上被评估,结果(精度、成本、轨迹)再写回 H。5 轮之后挑搜索集上表现最好的那个交卷。

这个loop听起来朴素,但能跑起来、跑便宜、跑出能泛化的策略,靠的是三个工程决策

  • • 离线 replay 环境:让评估根本不调LLM——否则光 5 轮×几十个 controller的推理开销就远不止40美元,而且会很慢
  • • β 参数化:Agent 提出的算法往往都很复杂包含很多的超参数,比如warm up步数,阈值等,一方面这个空间很大,我们不一定能搜出来好的结果,另一方面即使搜出来也无法直接泛化到held-out测试集,且由于超参数多,也很难调参。
  • • 执行轨迹反馈:让explorer LLM知道上一轮错在哪——光给精度/成本数字它判断不出失败模式,下一轮就只能瞎试

下面一个一个讲。

1. 将 Test-Time Scaling 建模成离线 replay 环境中的算法搜索问题

搜索之所以贵,是因为每评估一个候选策略都要让base LLM真跑一遍推理。AutoTTS把这件事拆成两步:先一次性预录好"推理素材库",再把controller搜索定义在这个素材库上。这样controller 评估不再调LLM。

(a) 怎么收集 replay 数据

对每道题,预先用base LLM采128条独立推理轨迹,每条每500 tokens切一个"探针点"——存下该点之前的推理片段,以及如果停在这里、模型会给出什么中间答案。

每道题最终被压成一张矩阵:128 行(独立的思路)× 若干列(每列对应这条思路推到第k个500 tokens的状态)。所有真金白银的LLM 调用都发生在这一步——而且只发生一次

(b) 怎么 formulate 成算法搜索问题

有了这张矩阵,TTS策略的设计就被改写成一个清晰的MDP——controller是一个code-defined policyπ,在每一步根据当前状态从合法动作集合里选一个执行。状态、动作、代价、目标的形式化如下:

  • • state (q, m, I, ℓ, Ω):当前题目 q、累计开过的分支数 m(含已被剪掉的)、当前活跃分支集合 I ⊆ [m]、每条分支走到第几格的深度向量 ℓ、目前为止读到的所有中间答案 Ω
  • • action:五种原子操作——BRANCH(开新分支,走到第 1 格) / CONTINUE(i)(把活跃分支 i 往前推一格)/PROBE(i)(读分支 i 当前格的中间答案,不推进深度)/PRUNE(i)(把分支 i 从活跃集合里拿掉,但已走过的深度仍计入成本) /** ANSWER**(停止,对已访问的格子做聚合)
  • • cost(s):所有分支累计走过的格数之和(包括被剪掉的分支的沉没深度)+  × 已 probe 次数。论文里设 ,即 probe 不计成本
  • • 目标:在任务分布 D 上最大化 ŷ,γ 控制精度和成本之间的权衡

关键之处:每个动作的执行都是从预存矩阵里查表。BRANCH?读矩阵新行的第1格。CONTINUE?读这行的下一格。PROBE?取出该格存好的中间答案。零LLM调用、几乎不耗token。

整个搜索目标因此被压成一句话——找到一个policy,访问尽可能少的格子,但ANSWER时聚合出来的答案还是对的

39.9美元的真正来源就在这里:不是LLM调用变便宜了,是controller评估根本不再调 LLM

2. β 参数化 - 让搜索出来的算法更可控

AutoTTS的硬约束:每个controller只能暴露一个标量β,所有内部超参必须是 β 的单调函数,映射本身让 LLM 自己设计。搜索空间从 10 维降到 1 维,扫一遍 β 自动描出一条 Pareto 前沿。消融验证:去掉 β 约束的版本 token 从 575K 跌到 93K,held-out 精度从 53.1 掉到 49.0。

3. 执行轨迹反馈:让 LLM 知道为什么错了

光给一个"精度 65%、用了50万tokens"的scalar,LLM 判断不出问题出在哪。AutoTTS把每个controller的完整决策轨迹喂回去:每一步选了什么动作、看到什么state、做了什么决定。LLM像debug 一样定位失败模式,下一轮做针对性改进。

搜出来的策略长这样:作者命名为Confidence Momentum Controller (CMC),四个机制——基于 EMA 动量的停止、宽度–深度耦合 widening、对齐感知的深度分配、保守的分支放弃。

实验:

AutoTTS 在4个Qwen3 模型(0.6B/1.7B/4B/8B)×3 个数学基准(AIME24 搜索集、AIME25 + HMMT25 held-out)一共12个组合上做了对比。

1.β=0.5:token 用量降 69.5%,精度几乎不动

跨 4 个模型的 held-out 平均,AutoTTS β=0.5 拿 45.3 的精度,SC@64 是 45.2——基本持平,但 token 用量从平均~933K降到~282K。这是"省70%算力却不掉一分精度"的版本——一个token 上严格优于SC@64的策略。

2.β=1.0:在8组 (model × held-out benchmark) 里有 5 组把所有手工 baseline的峰值推上去

不只是更便宜,是把Pareto前沿整条往上抬。最典型的是Qwen3-1.7B:AutoTTSβ=1.0拿到held-out平均精度40.6vsSC@64的34.3——6.3个点的差距,同时token还少40%。这种量级的提升单靠手工调参拿不到。

3.跨模型族 + 跨任务:CMC 不是 AIME 专用策略

这是整篇论文最值钱的实验之一。他们把在Qwen3×AIME24上搜出来的同一个controller完全不重搜地丢到两个完全不同的设置:

  • • 跨模型族——DeepSeek-R1-Distill-Llama-8B(Llama 系,蒸馏自 DeepSeek)on HMMT25:β=1 拿 27.2 精度 vs SC@64 的 26.7,token 从 985.7K 降到 534K
  • • 跨学科——GPQA-Diamond(研究生级科学,完全非数学)on Qwen3-1.7B:β=0.5 拿 41.6 vs SC@64 的 41.3,token 从 510K 降到 151K(70% 节省 + 精度还略高)

搜出来的CMC能跨模型族+跨学科泛化——这说明它学到的不是"AIME 题目的某些表面规律",是"长 reasoning 的通用结构规律"

4.消融把第二层的设计验证了一遍

  • • 去掉 β 参数化:搜索集 token 从 575K 暴跌到 93K,但 held-out 精度从 53.1 掉到 49.0
  • • 去掉 execution traces:精度从 53.1 降到 51.6,token 反而暴涨到 824K——LLM 没了细粒度反馈只能瞎试,最后只能用"无脑加预算"对冲

5.搜索过程的进化

5轮搜索里,LLM第一轮提出的controller把token压得过死、精度崩盘;它从轨迹里看到这个失败模式,第二轮主动加预算;之后三轮在 efficiency 和 accuracy 之间交替微调,像一个真正的研究员在做 ablation

结构化 vs 开放式

AutoTTS 想说的事,可能不止是 TTS。

最近auto research都在追求一件事:让 LLM 在尽可能开放的空间里自由探索。但 AutoTTS 用 40 块钱搞定的根本原因,恰恰是它一点都不开放——旋钮就那几个,β 压成 1 维,replay 把评估变成查表。结构化的代价是放弃自由度,回报是搜索本身变成可能

沿着这个逻辑往前推——人类需要做的,是定义下一个 TTS:找出那些被掩盖在"风格各异的手工方法"底下、其实是一个干净搜索问题的领域。剩下的,交给 LLM 在这个结构化的环境里自己搜。

往期推荐

OpenAI 翁家翌:“启发式学习”的强化学习新范式

ICML'26 Spotlight|犹豫就会败北:用 T²PO 稳定多轮 Agentic RL 训练

干货!什么是 Harness Engineering?运转原理又是怎样的?

工业级 LLM 预训练数据工程的关键实践!


加入青稞AI技术交流群

加入青稞AI技术交流群,不仅能与来自MIT、港中文、CMU、UCLA、斯坦福、清华、阿里、腾讯等名校名企AI研究员/开发者一起进行技术交流,同时还有一线青年AI研究员/开发者的Talk分享青稞Tea论文精读招聘内推国内外硕/博申请大模型技术报告解读等。备注:姓名+学校/公司+方向,暗号"AI"优先审核通过!

都看到这了,点个关注再走吧🧐~