Test-RLIF 是一个专注于大语言模型(LLM)推理能力增强与强化学习(RL)算法研究的实验性仓库。
本项目集成了多种前沿的 RL 算法框架(如 TTRL, EMPO, RENT),旨在提供一个统一的平台,对比分析不同训练策略(PPO, Entropy Minimization, Test-Time Scaling)对模型数学推理能力(如 AIME, MATH500)的影响。
我们集成了以下前沿研究项目,方便进行横向对比:
| 项目目录 | 全称 / 论文标题 | 核心理念 | 框架支持 |
|---|---|---|---|
TTRL/ | Test-Time Reinforcement Learning | 测试时强化学习。 在推理阶段动态优化策略,无需昂贵的预训练调整。 | VERL |
EMPO/ | Unsupervised Reasoning Incentivization | 无监督推理激励。 主张"正确的问题是答案的一半",通过无监督信号引导推理。 | TRL, VERL |
Intuitor/ | Learning to Reason without External Rewards | 内源性直觉推理。 旨在摆脱对外部 Reward Model 的依赖,培养模型的数学直觉。 | Open-R1, VERL |
rent-rl/ | RL via Entropy Minimization | 熵最小化 RL。 基于 VERL 框架的 PPO 改进版,通过熵控制优化探索策略。 | VERL |
为了更科学地评估模型性能,我们在 entropy_metrics/ 目录下开发了一套专业的评估工具:
📊 Pass@k & Bootstrap 分析 (pass@k.py)
pass@k,还引入了 Bootstrap 重采样方法。vLLM 高并发推理。📈 可视化绘图 (plot_pass_k_comparison_v2.py)
🤖 批量测试流程 (run_test_batch.sh)
MyRLIF文件夹内有对应训练脚本,支持Qwen2.5-Math-1.5B/7B在AIME24、AMC、Math500上一键训练,根目录运行可参照my-train.sh。
使用我们封装好的脚本对模型进行 AIME 数据集评估:
# 评估模型并计算 Pass@k + Bootstrap 此时
python entropy_metrics/pass@k.py \
--model_path /path/to/your/model \
--data_path datasets/aime25/aime25.parquet \
--n_bootstrap 1000
运行后会在模型目录下生成 aime25_@k_metrics.json,包含详细的统计数据。
test_res_qwen 目录下。在 pass@k.py 中,我们定义了三种 Prompt 模式,分别对应不同的实验需求:
wprompt (With Prompt / Suffix)
prompt = (
f"{problem} \n\n",
"Please reason step by step, and put your final answer within \\boxed{}",
)
woprompt (Without Prompt / Raw)
prompt = problemOriginal (原始 / Default)
prompt = (
"Please solve the following math problem. ",
"Think step by step and then give the final answer at the end.\n",
"Please wrap the final answer in \\boxed{}.\n",
f"Problem: {problem}。\n",
)
1 commits
Python
82.2%
Jupyter Notebook
9.1%
Shell
8.4%
Test-RLIF 是一个专注于大语言模型(LLM)推理能力增强与强化学习(RL)算法研究的实验性仓库。
本项目集成了多种前沿的 RL 算法框架(如 TTRL, EMPO, RENT),旨在提供一个统一的平台,对比分析不同训练策略(PPO, Entropy Minimization, Test-Time Scaling)对模型数学推理能力(如 AIME, MATH500)的影响。
我们集成了以下前沿研究项目,方便进行横向对比:
| 项目目录 | 全称 / 论文标题 | 核心理念 | 框架支持 |
|---|---|---|---|
TTRL/ | Test-Time Reinforcement Learning | 测试时强化学习。 在推理阶段动态优化策略,无需昂贵的预训练调整。 | VERL |
EMPO/ | Unsupervised Reasoning Incentivization | 无监督推理激励。 主张"正确的问题是答案的一半",通过无监督信号引导推理。 | TRL, VERL |
Intuitor/ | Learning to Reason without External Rewards | 内源性直觉推理。 旨在摆脱对外部 Reward Model 的依赖,培养模型的数学直觉。 | Open-R1, VERL |
rent-rl/ | RL via Entropy Minimization | 熵最小化 RL。 基于 VERL 框架的 PPO 改进版,通过熵控制优化探索策略。 | VERL |
为了更科学地评估模型性能,我们在 entropy_metrics/ 目录下开发了一套专业的评估工具:
📊 Pass@k & Bootstrap 分析 (pass@k.py)
pass@k,还引入了 Bootstrap 重采样方法。vLLM 高并发推理。📈 可视化绘图 (plot_pass_k_comparison_v2.py)
🤖 批量测试流程 (run_test_batch.sh)
MyRLIF文件夹内有对应训练脚本,支持Qwen2.5-Math-1.5B/7B在AIME24、AMC、Math500上一键训练,根目录运行可参照my-train.sh。
使用我们封装好的脚本对模型进行 AIME 数据集评估:
# 评估模型并计算 Pass@k + Bootstrap 此时
python entropy_metrics/pass@k.py \
--model_path /path/to/your/model \
--data_path datasets/aime25/aime25.parquet \
--n_bootstrap 1000
运行后会在模型目录下生成 aime25_@k_metrics.json,包含详细的统计数据。
test_res_qwen 目录下。在 pass@k.py 中,我们定义了三种 Prompt 模式,分别对应不同的实验需求:
wprompt (With Prompt / Suffix)
prompt = (
f"{problem} \n\n",
"Please reason step by step, and put your final answer within \\boxed{}",
)
woprompt (Without Prompt / Raw)
prompt = problemOriginal (原始 / Default)
prompt = (
"Please solve the following math problem. ",
"Think step by step and then give the final answer at the end.\n",
"Please wrap the final answer in \\boxed{}.\n",
f"Problem: {problem}。\n",
)
1 commits
Python
82.2%
Jupyter Notebook
9.1%
Shell
8.4%