论文

Ockhamareto:帕累托门控段级信用分配,通过强化学习生成简洁的单元测试

Ockhamareto: Pareto-Gated Segment-Level Credit Assignment for Concise Unit-Test Generation with Reinforcement Learning

模型训练强化学习

摘要

我们引入 \textbf{Ockhamareto},一个用于单元测试生成和选择的单次 GRPO 框架,基于 \emph{Ockham's Razor} 和 \emph{Pareto Optimality} 原理。 Ockhamareto 有两个主要组成部分:(i)~a \emph{帕累托门控奖励},仅奖励在 ~(mutation, $-$\#tests) 空间中非主导的采样轨迹,以及 (ii)~\emph{词元级 Segment Credit},它将每个测试的边际变异测试检出归因于其单元测试块的词元。在 \emph{UnLeakedTestBench~(ULT)} 上,Ockhamareto \emph{严格帕累托支配}最强的 RL 基线~(\emph{MIST-RL})。此外,它在{\em every and all}优化目标上占据主导地位,捕获更多错误($49.9\%$ vs $31.3\%$ 突变得分在 $N{=}5$ 处),使用 \emph{fewer} 测试(平均 $2.60$ vs $4.67$),从而实现 $3.4\times$ 的每次测试权衡改进。在所有四个基准测试中都可以发现这一优势~(\emph{HumanEval+}、\emph{MBPP+}、\emph{CodeContests}、\emph{TestGenEval-Lite}):Ockhamareto 在每个基准测试中都领先突变和覆盖率指标,并且始终使用最小的套件。 Ockhamareto 在所有模型规模上都优于最先进的技术,在 4B、9B 和 27B 模型尺寸下添加了 $+30$--$35$~pp 突变。我们还表明,帕累托前沿效率和有效性之间的最佳权衡的拐点与明显更容易计算的代理指标(例如函数大小)无关。这一发现激发了帕累托前沿计算;需要为每个被测功能确定这一关键的工程权衡。