现有自进化 LLMs 的训练严重依赖人类标注的任务和标签(通过微调或强化学习等方式),成本高、难以扩展。
(左):R-Zero 在挑战者和求解者之间采用了协同演化环。(右):R-Zero 在没有任何预定义任务或人类标签的情况下实现了显著的基准提升。
提出了 R-Zero 框架,从零外部数据出发,通过初始化具有不同角色的 Challenger(挑战者)和 Solver(求解者),让两者独立优化并协同进化:Challenger 因生成接近 Solver 能力边缘的任务而获得奖励,Solver 因解决 Challenger 提出的日益困难的任务而获得奖励,形成无需预先存在的任务和标签的自我提升课程,最终提升 LLMs 的推理能力。
方法
R-Zero框架的核心是Challenger和Solver双角色协同进化循环 :Challenger和Solver均从同一个基础LLM初始化,二者独立优化但通过迭代交互共同进化。
R-Zero 框架
如上图,顶部:Challenger通过GRPO算法训练,生成对当前Solver具有挑战性的问题;基于这些问题,通过过滤策略和多数投票机制构建问答数据集;底部:在求解器训练阶段,求解器在由现已冻结的挑战者生成的这些难题的过滤集上,使用其自身投票得出的伪标签,通过 GRPO 进行微调。整个过程无需人工干预,形成“生成问题→训练求解→提升能力→生成更难问题”的自循环,最终实现Solver推理能力的持续提升。
1、Challenger训练
Challenger的目标是生成接近Solver能力边缘 的问题(既不过于简单也不过于困难),其核心是设计合理的奖励函数引导生成高质量问题 ,下面看看奖励函数设计:
1.1 不确定性奖励
奖励Challenger生成能让Solver“最大化不确定”的问题。具体计算方式:
- 对Challenger生成的问题
,让当前Solver生成
个回答
;
- 以多数投票结果为伪标签
,计算Solver的“经验准确率”
(即与伪标签一致的回答比例);
- 不确定性奖励定义为:
。该函数在
时取最大值(奖励为1),鼓励Challenger生成让Solver“一半概率答对、一半答错”的问题,即处于能力边缘的任务。
1.2 重复惩罚
为避免Challenger生成语义相似的问题,引入基于BLEU分数的重复惩罚:
- 计算批量内问题的两两BLEU相似度,定义距离
;
- 通过聚类将距离小于阈值
的问题归为一类,某问题
的惩罚与所在聚类大小成正比:
(
为聚类,
为批量大小,
)。
1.3 格式检查惩罚
和dpsk一样,要求Challenger生成的问题必须包裹在 <question>
和 </question>
标签内,未遵守格式的问题直接被赋予0奖励,确保数据结构规范。
1.4 综合奖励与策略更新
对通过格式检查的问题,综合奖励为:
(确保奖励非负); 基于批量问题的奖励计算GRPO优势函数,通过最小化GRPO损失更新Challenger的策略
,提升其生成高质量问题的能力。
Challenger阶段提示词:
训练参数:
2 Solver数据集构建
Challenger更新后,需构建用于训练Solver的数据集,核心是筛选“难度适中”的问题:
从Challenger的策略中采样
个候选问题;
对每个问题,让当前Solver生成
个回答,通过多数投票确定伪标签
,计算经验准确率
;
过滤规则 :仅保留
(实验中
)的问题,即Solver的正确率在30%-70%之间的问题。这一过滤既剔除过易/过难的任务,也隐含质量控制(低一致性问题可能本身模糊或伪标签不可靠)。
3 Solver训练
Solver的目标是提升解决Challenger生成的复杂问题的能力,训练同样基于GRPO,输入: 经过筛选的问答对
(
为多数投票伪标签);
奖励
对Solver生成的回答
,若与伪标签
完全一致则奖励1,否则0(类似RLVR的可验证奖励);
策略更新:基于奖励计算GRPO优势函数,通过最小化GRPO损失更新Solver的策略
,提升其对挑战性问题的求解能力。
Solver阶段提示词:
训练参数:
实验性能
参考文献:R-Zero: Self-Evolving Reasoning LLM from Zero Data,https://arxiv.org/pdf/2508.05004
repo:https://github.com/Chengsong-Huang/R-Zero