CoolFace
Datasetpublic

ftajwar/maxrl_qwen3_4B_base_polaris_rollouts

MaxRL Qwen3-4B-Base training rollouts (POLARIS math prompts) Every training rollout from an online RL run, with exact token ids, sampling log-probs, and raw rewards — usable as a replay buffer to study off-policy RL for LLM reasoning completely offline. The run: Qwen3-4B-Base trained with the maxRL advantage estimator (A = (r - mean)/(mean + eps), group mean over 16 rollouts per prompt; maxRL paper) and a pure REINFORCE loss (L = -A * log pi; no importance ratio, no clipping, no… See the full description on the dataset page: https://huggingface.co/datasets/ftajwar/maxrl_qwen3_4B_base_polaris_rollouts.

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes580downloads
Dataset Card

MaxRL Qwen3-4B-Base training rollouts (POLARIS math prompts)

Every training rollout from an online RL run, with exact token ids, sampling log-probs, and raw rewards — usable as a replay buffer to study off-policy RL for LLM reasoning completely offline.

The run: Qwen3-4B-Base trained with the maxRL advantage estimator (A = (r - mean)/(mean + eps), group mean over 16 rollouts per prompt; maxRL paper) and a pure REINFORCE loss (L = -A * log pi; no importance ratio, no clipping, no KL), on the POLARIS-53K math prompt set with a binary math-verify reward. 1000 training steps ≈ 4.8 epochs, 256 prompts x 16 rollouts per step, sampled by vLLM at temperature 1.0, max response length 4096, trained on 256 A100s (ALCF Polaris).

Files

One Parquet shard per trainer step: data/step-0001.parquet … data/step-1000.parquet. Each shard has exactly 4096 rows = 256 prompts x 16 rollouts, in the exact order the trainer consumed them (verified row-identical to the training dumps). Rows [16k, 16k+16) of a shard are the 16 rollouts of one prompt and share a uid. 4.096M rows total.

Schema

columntypedescription
inputstringprompt text (decoded, special tokens stripped — lossy; use ids)
outputstringresponse text (decoded, lossy)
gtsstringground-truth answer
scorefloat64raw reward (binary 0/1, math-verify)
accfloat64equals score for this binary scorer
stepint64trainer step (same as the shard number)
uidstringsampling-group key: the 16 rollouts of a prompt share it; this is exactly the group the advantage estimator normalized over
prompt_token_idslist<int32>exact prompt ids fed to vLLM (padding stripped, special tokens kept)
response_token_idslist<int32>exact sampled ids, up to and including EOS
rollout_log_probslist<float64>vLLM sampling-time log-prob per response token, aligned 1:1 with response_token_ids (rounded to 6 decimals)

Tokenizer: Qwen3 (vocab 151936), identical across Qwen3 sizes. Note Qwen3-Base uses eos = pad = 151643 (not the chat <|im_end|> 151645). ~1% of rows are length-truncated at 4096 tokens and have no trailing EOS. prompt_token_ids + response_token_ids reconstructs the exact unpadded input_ids; masks are all-ones over the stored lengths (only real tokens are stored). Never re-tokenize the strings — decode/encode is not round-trip-exact; the ids are the ground truth.

Load

python
from datasets import load_dataset

# everything (streams fine too: streaming=True)
ds = load_dataset("ftajwar/maxrl_qwen3_4B_base_polaris_rollouts", split="train")

# or just a step range
ds = load_dataset(
    "ftajwar/maxrl_qwen3_4B_base_polaris_rollouts",
    data_files=[f"data/step-{s:04d}.parquet" for s in range(1, 51)],
    split="train",
)

Producing run (exact hyperparameters)

Qwen3-4B-Base; AdamW lr 1e-6 (constant), grad-clip 0.3, batch 256 prompts x n=16, 1 PPO epoch (each sample used once, sequential minibatches, no shuffle), gradient checkpointing, bf16 FSDP; vLLM rollouts T=1.0 / top-p 1.0, max prompt 1024, max response 4096; binary math-verify reward; no KL penalty, no entropy bonus, balance_batch=False. The advantage for each row is a pure function of (score, uid-group): A = (r - mean_g) / (mean_g + 1e-6).

Because the loss is plain REINFORCE, a row's gradient contribution depends only on (tokens, advantage, current policy) — this dataset therefore contains everything needed to replay the run offline, step by step, or to resample it into new off-policy schedules (the rollout_log_probs are the behavior-policy log-probs for importance-sampling corrections).

Licenses / provenance

Model outputs from Qwen/Qwen3-4B-Base (Apache-2.0). Prompts from the POLARIS-53K math training set; see POLARIS for upstream prompt provenance.