5分钟快速上手Skywork-OR1:从安装到运行你的第一个RL训练任务 [特殊字符]
5分钟快速上手Skywork-OR1:从安装到运行你的第一个RL训练任务 🚀
【免费下载链接】Skywork-OR1Unleashing the Power of Reinforcement Learning for Math and Code Reasoners项目地址: https://gitcode.com/gh_mirrors/sk/Skywork-OR1
想要快速掌握Skywork-OR1强化学习框架,开始训练自己的数学和代码推理模型吗?这篇终极指南将带你从零开始,在短短5分钟内完成安装并运行第一个训练任务!Skywork-OR1是一个强大的开源项目,专注于释放强化学习在数学和代码推理模型中的潜力,让你能够轻松训练出高性能的推理模型。
什么是Skywork-OR1? 🤔
Skywork-OR1(Open Reasoner 1)是一个基于大规模规则化强化学习的数学和代码推理模型训练框架。它提供了一套完整的工具链,让你能够:
- 🧠 训练高性能的数学推理模型
- 💻 开发强大的代码生成模型
- ⚡ 使用先进的PPO(Proximal Policy Optimization)算法
- 🚀 支持多节点分布式训练
该项目已经在AIME24、AIME25和LiveCodeBench等基准测试中取得了优异成绩,Skywork-OR1-32B模型在数学任务上超越了DeepSeek-R1和Qwen3-32B,展现了强大的推理能力。
Skywork-OR1-7B模型在多阶段训练中的性能表现
环境准备与快速安装 🛠️
方法一:Docker快速安装(推荐)
这是最快速的安装方式,适合想要立即开始实验的用户:
# 拉取预构建的Docker镜像 docker pull whatcanyousee/verl:vemlp-th2.4.0-cu124-vllm0.6.3-ray2.10-te2.0-megatron0.11.0-v0.0.6 # 运行Docker容器 docker run --runtime=nvidia -it --rm --shm-size="10g" --cap-add=SYS_ADMIN -v <image:tag> # 在容器内安装Skywork-OR1 git clone https://gitcode.com/gh_mirrors/sk/Skywork-OR1.git cd Skywork-OR1 pip3 install -e .方法二:Conda环境安装
如果你更喜欢使用Conda管理环境:
# 创建Python 3.10环境 conda create -n verl python==3.10 conda activate verl # 安装PyTorch和其他依赖 pip3 install torch==2.4.0 --index-url https://download.pytorch.org/whl/cu124 pip3 install flash-attn --no-build-isolation # 克隆并安装Skywork-OR1 git clone https://gitcode.com/gh_mirrors/sk/Skywork-OR1.git cd Skywork-OR1 pip3 install -e .数据准备:获取训练数据集 📊
在开始训练之前,你需要准备训练数据。Skywork-OR1支持多种数据集,这里我们以GSM8K数学推理数据集为例:
# 下载并预处理GSM8K数据集 python3 examples/data_preprocess/gsm8k.py --local_dir ~/data/gsm8k这个命令会自动下载GSM8K数据集并进行预处理,生成适合RL训练的格式。
Skywork-OR1-32B在多个基准测试中的优异表现
运行你的第一个RL训练任务 🏃
现在让我们开始第一个强化学习训练任务!我们将使用Qwen2.5-0.5B-Instruct模型在GSM8K数据集上进行PPO训练:
# 设置环境变量 export PYTHONUNBUFFERED=1 # 运行PPO训练 python3 -m verl.trainer.main_ppo \ data.train_files=$HOME/data/gsm8k/train.parquet \ data.val_files=$HOME/data/gsm8k/test.parquet \ data.train_batch_size=256 \ data.val_batch_size=1312 \ data.max_prompt_length=512 \ data.max_response_length=256 \ actor_rollout_ref.model.path=Qwen/Qwen2.5-0.5B-Instruct \ actor_rollout_ref.actor.optim.lr=1e-6 \ critic.optim.lr=1e-5 \ critic.model.path=Qwen/Qwen2.5-0.5B-Instruct \ algorithm.kl_ctrl.kl_coef=0.001 \ trainer.logger=['console'] \ trainer.n_gpus_per_node=1 \ trainer.nnodes=1 \ trainer.save_freq=10 \ trainer.test_freq=10 \ trainer.total_epochs=15训练参数说明:
- data.train_files: 训练数据路径
- actor_rollout_ref.model.path: Actor模型路径
- critic.model.path: Critic模型路径
- trainer.n_gpus_per_node: 每节点GPU数量
- trainer.total_epochs: 训练总轮数
监控训练进度 📈
训练开始后,你会在控制台看到类似下面的日志输出:
step:0 - timing/gen:21.470 - timing/ref:4.360 - timing/values:5.800 critic/kl:0.000 - critic/kl_coeff:0.001 - timing/adv:0.109 actor/entropy_loss:0.433 - actor/pg_loss:-0.005 - actor/pg_clipfrac:0.000 critic/score/mean:0.004 - critic/score/max:1.000 - critic/score/min:0.000关键指标说明:
- critic/score/mean: 平均奖励分数
- actor/pg_loss: 策略梯度损失
- critic/vf_loss: 价值函数损失
使用预训练模型快速开始 🎯
如果你想直接使用Skywork-OR1预训练模型,可以按照以下步骤:
1. 下载模型权重
# 下载7B模型 git clone https://huggingface.co/Skywork/Skywork-OR1-7B # 下载32B模型 git clone https://huggingface.co/Skywork/Skywork-OR1-32B2. 运行推理示例
查看 examples/generation/ 目录中的脚本,了解如何使用预训练模型进行推理。
Skywork-OR1-7B与其他同类模型的性能对比
高级功能:多节点分布式训练 🌐
对于大规模训练任务,Skywork-OR1支持使用Ray进行多节点分布式训练:
步骤1:在头节点启动Ray
ray start --head --dashboard-host=0.0.0.0步骤2:在工作节点连接
ray start --address='<头节点IP>:6379'步骤3:检查集群状态
ray status常见问题与解决方案 🔧
内存不足问题
如果遇到内存不足,可以调整以下参数:
actor_rollout_ref.actor.ppo_micro_batch_size_per_gpu=1 \ critic.ppo_micro_batch_size_per_gpu=1 \训练速度优化
- 启用梯度检查点:
actor_rollout_ref.model.enable_gradient_checkpointing=True - 调整批次大小:根据GPU内存调整
ppo_micro_batch_size_per_gpu - 使用混合精度训练:
trainer.mixed_precision='bf16'
下一步学习路径 📚
现在你已经成功运行了第一个Skywork-OR1训练任务!接下来可以:
- 探索更多示例:查看 examples/ppo_trainer/ 目录中的其他训练脚本
- 自定义奖励函数:学习如何设计自己的奖励函数
- 尝试不同数据集:在更多任务上测试模型性能
- 调优超参数:优化训练效果
Skywork-OR1为强化学习在推理模型中的应用提供了强大的工具链。无论是学术研究还是工业应用,这个框架都能帮助你快速构建和训练高性能的推理模型。开始你的RL训练之旅吧! 🚀
【免费下载链接】Skywork-OR1Unleashing the Power of Reinforcement Learning for Math and Code Reasoners项目地址: https://gitcode.com/gh_mirrors/sk/Skywork-OR1
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考