自适应测试时计算:告别均匀分配推理预算
通过难度门控+验证器替代best-of-N均匀采样,相同精度下减少77%样本量(8→3.2样本/查询)。
通过难度门控+验证器替代best-of-N均匀采样,相同精度下减少77%样本量(8→3.2样本/查询)。
TL;DR:业内常见的精度提升方案——Best-of-N,即采样 N 次推理路径再选最优——是"统一定价"的。无论查询是查字典还是竞赛数学题,都消耗相同的预算:对简单查询浪费了大部分算力,对复杂查询却可能投入不足。自适应测试时计算则采用"动态分配"策略:用一个廉价的门控组件估算难度,验证器对每个采样结果进行检验,简单查询在得到首个接受答案后立即停止,复杂查询则持续探索直到达到上限。在可运行的 Python 模拟中,自适应方法仅用 best-of-8 所需样本数的 23%(3,200 → 732;每查询 1.8 个样本 vs 8 个),就达到了相同的 91% 精度。2026 年的研究也在真实基准测试中验证了这一效果(自适应验证器引导分配、受预算约束的元认知控制)。
心智模型:想象一场考试,规则要求每道题必须花满 8 分钟。那些瞬间就能答出的题目,你浪费了 7 分钟;而压轴难题却时间不够。任何有经验的应考者都会根据难度分配时间——扫一眼题目,先答简单的,把省下的时间投入到高难度题目上。
测试时扩展是过去两年最有效的杠杆之一:通过采样多条推理路径、验证或投票,精度不断提升。但主流实现方式都是均匀分配算力——Best-of-N、固定采样次数的自洽性、固定宽度的束搜索。无论查询是简单的查表还是复杂的竞赛数学题,每条查询都获得相同的预算。
这造成了双重浪费。在简单的多数查询上,你为从未真正需要的样本付费——第一个答案本来就已经正确。而在困难的那部分查询上,固定的 N 可能不够用,而你本可以花在那些题上的预算却被浪费在了简单题上。正如 2026 年的研究所指出的,有效的扩展应该有选择性:由中间质量信号和不确定性驱动,而非在所有推理路径上均匀分配。
两个轻量组件将固定预算转化为动态分配:
难度门控(difficulty gate)——对查询难度进行快速近似估计(小型分类器、置信度探测、路由器)。它设定上限:这条查询最多允许采样多少次。
验证器(verifier)——对每个采样结果进行检验(过程奖励模型、NLI/一致性检查、代码单元测试)。它决定何时停止:一旦某个样本被接受,立即停止算力消耗。
简单查询 → 门控给出"上限 1",首个样本被接受,结束。困难查询 → 门控提高上限,循环持续探索,直到验证器满意或达到上限。验证器信号本身并不特殊——两种策略都能用,自适应方法只是多用了它来触发早停:
def adaptive(rng, queries):
for d in queries:
d_hat = clamp(d + noise()) # cheap, noisy difficulty gate
budget = round(1 + (N_MAX - 1) * d_hat) # easy -> 1, hard -> up to N_MAX
for i in range(budget):
ok = sample_is_correct(rng, d)
if verifier_accepts(rng, ok):
break # accepted: stop spending compute here
Adaptive Test-Time Compute — spend reasoning where it pays, not uniformly
before → after: 3,200 samples for 91% accuracy (uniform best-of-8) → 732 samples for 91% (77% less compute)
400 queries, 113 hard / 287 easy; verifier 90% true-accept, 6% false-accept.
policy samples accuracy
uniform best-of-8 3,200 91%
adaptive (verifier-gated) 732 91%
early stops (solved in 1 sample) 243 (61% of queries)
avg samples / query 1.8 (uniform always spends 8.0)
精度相同,算力消耗不到原来的四分之一。61% 的查询在单次采样后就得到解决——这正是 Best-of-N 过度服务的简单多数,而省下的预算留给了困难部分。关键杠杆是难度分布:流量越偏向简单查询,收益越大。
业界现已认识到,均匀的测试时扩展策略实际上在浪费算力。《What If We Allocate Test-Time Compute Adaptively?》(arXiv 2602.01070)用过程奖励模型信号替代固定采样,引导查询内剪枝与扩展以及迭代间的选择,将算力集中在高收益推理路径上,在困难基准测试中实现了数倍的每单位算力收益提升。《CoT2-Meta》(arXiv 2603.28135)则将其框架为元认知控制:控制器在每个部分轨迹上决定是否扩展、剪枝、修复、停止或放弃,将对象级推理与元级预算决策分离开来。类似思路也出现在 Adaptive RAG 中——根据估算的复杂度,将查询路由到直接回答、单次检索或完整代理循环。
这个可迁移的工程思路无需新模型:在采样循环前加入验证器和难度估计,让预算成为两者的函数。即使是粗糙的门控(提示词长度、廉价分类器、首次采样置信度)加上领域验证器(测试、模式检查、自一致性),也能捕获大部分收益。
它模拟的是分配策略,而非推理本身:"采样"是一个难度加权的掷硬币,验证器是固定的接受率,所以它刻意跳过了采样正确的具体原因。两个值得注意的限制:验证器并不完美(6% 的错误接受率意味着自适应可能在错误答案上提前停止——验证器质量是整个方法的天花板),而难度门控带有噪声,所以某些困难查询会分配不足。这两个问题恰恰是 2026 年论文试图用过程奖励模型和校准置信度来控制的失败模式。真实收益取决于你的验证器是否优于生成器。
python3 demo.py # standard library only
What If We Allocate Test-Time Compute Adaptively? (arXiv 2602.01070) — a verifier-guided framework where a process reward model drives per-query pruning, expansion, and selection instead of uniform sampling; large gains on hard math benchmarks per unit compute.
CoT2-Meta: Budgeted Metacognitive Control for Test-Time Reasoning (arXiv 2603.28135) — separates object-level reasoning from a meta-level controller that decides expand / prune / repair / stop / abstain under a budget.
Self-Correcting RAG (ACL Findings 2026) — casts context selection as a knapsack problem and uses NLI-guided search to spend test-time compute on faithfulness.
Snell et al., Scaling LLM Test-Time Compute Optimally (2024), and self-consistency / best-of-N — the uniform baselines this pattern improves on.
Adaptive RAG — route each query to the cheapest path (direct answer, single retrieval, or agentic loop) that will solve it.