You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guides/dapo.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,10 +13,10 @@ This document focuses on DAPO-specific features: Dynamic Sampling and Overlong R
13
13
14
14
## Quickstart: Launch a DAPO Run
15
15
16
-
To get started quickly, use the example configuration [examples/configs/recipes/llm/dapo-qwen2.5-7b.yaml](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.yaml). You can launch this using the same script as GRPO:
16
+
To get started quickly, use the example configuration [examples/configs/recipes/llm/dapo-qwen2.5-7b.v2.yaml](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.v2.yaml). You can launch this using the same script as GRPO:
17
17
18
18
```bash
19
-
uv run examples/run_grpo.py --config examples/configs/recipes/llm/dapo-qwen2.5-7b.yaml {overrides}
19
+
uv run examples/run_grpo.py --config examples/configs/recipes/llm/dapo-qwen2.5-7b.v2.yaml {overrides}
20
20
```
21
21
22
22
**Reminder**: Don't forget to set your HF_HOME, WANDB_API_KEY, and HF_DATASETS_CACHE (if needed). You'll need to do a `huggingface-cli login` as well for LLaMA models.
@@ -85,10 +85,10 @@ grpo:
85
85
> - Set `ratio_clip_max` to enable Clip-Higher (e.g., `ratio_clip_max: 0.28`)
86
86
> - Set `token_level_loss: true` to enable Token-Level Policy Gradient Loss
87
87
>
88
-
> See the full [DAPO example config](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.yaml) for reference.
88
+
> See the full [DAPO example config](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.v2.yaml) for reference.
89
89
90
90
## Example Training Results
91
-
Using the [DAPO example config](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.yaml), you can expect to see intermediate plots such as the training reward curve and validation accuracy on AIME24 for Qwen/Qwen2.5-Math-7B. These plots serve as reference outputs to help verify reproducibility. They are not intended to reflect the best accuracy that can be achieved using DAPO for this model.
91
+
Using the [DAPO example config](../../examples/configs/recipes/llm/dapo-qwen2.5-7b.v2.yaml), you can expect to see intermediate plots such as the training reward curve and validation accuracy on AIME24 for Qwen/Qwen2.5-Math-7B. These plots serve as reference outputs to help verify reproducibility. They are not intended to reflect the best accuracy that can be achieved using DAPO for this model.
92
92
93
93

Copy file name to clipboardExpand all lines: docs/guides/prorlv2.md
+11-11Lines changed: 11 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# An In-Depth Walkthrough of ProRLv2 in NeMo RL
2
2
3
-
This guide covers the ProRLv2 configuration pattern in NeMo RL, based on the example config [`examples/configs/prorlv2.yaml`](../../examples/configs/prorlv2.yaml).
3
+
This guide covers the ProRLv2 configuration pattern in NeMo RL, based on the example config [`examples/configs/prorlv2.v2.yaml`](../../examples/configs/prorlv2.v2.yaml).
4
4
5
5
ProRLv2 is best thought of as **GRPO plus a bundle of stability/efficiency techniques** commonly used for long-horizon RL fine-tuning:
6
6
@@ -15,13 +15,13 @@ This document focuses on ProRLv2-specific knobs and gotchas. For foundational co
15
15
16
16
## Quickstart: Launch a ProRLv2 Run
17
17
18
-
Use the example configuration [`examples/configs/prorlv2.yaml`](../../examples/configs/prorlv2.yaml):
18
+
Use the example configuration [`examples/configs/prorlv2.v2.yaml`](../../examples/configs/prorlv2.v2.yaml):
19
19
20
20
```bash
21
-
uv run examples/run_grpo_math.py --config examples/configs/prorlv2.yaml {overrides}
21
+
uv run examples/run_grpo_math.py --config examples/configs/prorlv2.v2.yaml {overrides}
22
22
```
23
23
24
-
`prorlv2.yaml` inherits from [`examples/configs/grpo_math_1B.yaml`](../../examples/configs/grpo_math_1B.yaml) and only overrides a small set of fields under `grpo` and `loss_fn`, plus output directories.
24
+
`prorlv2.v2.yaml` inherits from [`examples/configs/grpo_math_1B.yaml`](../../examples/configs/grpo_math_1B.yaml) and only overrides a small set of fields under `grpo` and `loss_fn`, plus output directories.
25
25
26
26
**Reminder**: Don't forget to set your `HF_HOME`, `WANDB_API_KEY`, and `HF_DATASETS_CACHE` (if needed). You'll need to do a `huggingface-cli login` as well for gated models.
27
27
@@ -47,7 +47,7 @@ Quick intuition:
47
47
Computation (as implemented in this repo, with the ProRLv2 example defaults):
48
48
49
49
```text
50
-
Defaults in examples/configs/prorlv2.yaml:
50
+
Defaults in examples/configs/prorlv2.v2.yaml:
51
51
grpo.adv_estimator.minus_baseline = true
52
52
loss_fn.use_kl_in_reward = false
53
53
@@ -204,26 +204,26 @@ Under Pure Online training (single update per rollout), the PPO policy ratio is
204
204
- **Seq-mask-tis** — sequence-level filtering instead of token-level ICE-POP.
Use [`examples/configs/prorlv2_1_moe.yaml`](../../examples/configs/prorlv2_1_moe.yaml) directly. See the [ProRL v2.1 blog post](https://developer.nvidia.com/blog/scaling-llm-reinforcement-learning-with-prolonged-training-using-prorl-v2/) for the full motivation.
207
+
Use [`examples/configs/prorlv2_1_moe.v2.yaml`](../../examples/configs/prorlv2_1_moe.v2.yaml) directly. See the [ProRL v2.1 blog post](https://developer.nvidia.com/blog/scaling-llm-reinforcement-learning-with-prolonged-training-using-prorl-v2/) for the full motivation.
208
208
:::
209
209
210
210
```bash
211
211
# Launch ProRL v2.1 for MoE models
212
-
uv run examples/run_grpo_math.py --config examples/configs/prorlv2_1_moe.yaml {overrides}
212
+
uv run examples/run_grpo_math.py --config examples/configs/prorlv2_1_moe.v2.yaml {overrides}
213
213
```
214
214
215
215
## Full Example Configs
216
216
217
-
- **ProRLv2** (ICE-POP, DAPO, clipping): [`examples/configs/prorlv2.yaml`](../../examples/configs/prorlv2.yaml) — inherits from [`grpo_math_1B.yaml`](../../examples/configs/grpo_math_1B.yaml)
218
-
- **ProRL v2.1** (seq-mask-tis, pure online, MoE): [`examples/configs/prorlv2_1_moe.yaml`](../../examples/configs/prorlv2_1_moe.yaml) — inherits from `prorlv2.yaml`, adds `force_on_policy_ratio`, switches to seq-mask-tis, disables dynamic sampling
217
+
- **ProRLv2** (ICE-POP, DAPO, clipping): [`examples/configs/prorlv2.v2.yaml`](../../examples/configs/prorlv2.v2.yaml) — inherits from [`grpo_math_1B.yaml`](../../examples/configs/grpo_math_1B.yaml)
218
+
- **ProRL v2.1** (seq-mask-tis, pure online, MoE): [`examples/configs/prorlv2_1_moe.v2.yaml`](../../examples/configs/prorlv2_1_moe.v2.yaml) — inherits from `prorlv2.v2.yaml`, adds `force_on_policy_ratio`, switches to seq-mask-tis, disables dynamic sampling
219
219
220
220
## Practical Overrides
221
221
222
222
A few common overrides when launching:
223
223
224
224
```bash
225
225
uv run examples/run_grpo_math.py \
226
-
--config examples/configs/prorlv2.yaml \
226
+
--config examples/configs/prorlv2.v2.yaml \
227
227
policy.model_name="Qwen/Qwen2.5-1.5B" \
228
228
logger.wandb_enabled=true \
229
229
logger.wandb.project="prorlv2-dev" \
@@ -235,7 +235,7 @@ If you want to enable DAPO overlong reward shaping instead of stop-properly:
| QA-GRPO | W4A4 |`NVFP4_DEFAULT_CFG`| ⚠️ Known convergence issue |`examples/modelopt/qa_grpo_math_megatron.yaml`|
20
20
21
21
The `nvfp4_a16.yaml` custom YAML enables NVFP4 e2m1 weight quantization (with dynamic e4m3 micro-block scales) and leaves activations unquantized; weights are still exercised through both Megatron training and vLLM generation.
@@ -27,7 +27,7 @@ The `nvfp4_a16.yaml` custom YAML enables NVFP4 e2m1 weight quantization (with dy
27
27
The QA-GRPO config extends the standard Megatron GRPO config by adding quantization parameters. See [Verified Configurations](#verified-configurations) for the status of W4A4 vs W4A16 on GRPO.
Copy file name to clipboardExpand all lines: examples/configs/grpo_math_1B.yaml
+11Lines changed: 11 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -134,6 +134,17 @@ policy:
134
134
force_reconvert_from_hf: False # Set to True to force reconvert of the model from Hugging Face
135
135
empty_unused_memory_level: 1# 1 is the minimum recommendation for RL since we almost always need to offload before beginning generation. Setting to 0 is faster, but you are more likely to run out of GPU memory.
Copy file name to clipboardExpand all lines: examples/configs/grpo_math_1B_megatron.yaml
+11Lines changed: 11 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -86,6 +86,17 @@ policy:
86
86
force_reconvert_from_hf: False # Set to True to force reconvert of the model from Hugging Face
87
87
empty_unused_memory_level: 1# 1 is the minimum recommendation for RL since we almost always need to offload before beginning generation. Setting to 0 is faster, but you are more likely to run out of GPU memory.
0 commit comments