CoolFace
Modelpublic

sandeep123/aops-grpo-entropy-step200

sourceHugging Faceapache-2.0updated 23d agoView on Hugging Face
0likes28downloads
Model Card

aops-grpo-entropy-step200

GRPO + entropy bonus baseline on AoPS, trained with GRPO on Qwen/Qwen2.5-Math-1.5B.

Selected as best validation pass@6 for this arm (rank 1).

Adds -entropycoeff*H to the policy loss on AoPS with entropycoeff=1e-3, masked to response tokens.

Training data and format reward

datasetAoPS (aops_boxfix)
epochs / steps10 / 1450
batch / rollouts128 prompts, K=6
learning rate1e-6 constant
KL (in-reward)0.01
max prompt / response1024 / 2048 tokens
format reward0.03, constant, no decay
seed42

Full boxfix protocol: the prompt demands Step 1: ... Step n: followed by \boxed{X} on its own line with nothing after it, and the 0.03 format reward pays for exactly that structure.

Arm-specific: entropy_coeff=0.001, clip=0.2/0.2, rollout temperature=1.0.

Do not apply a chat template

Trained on raw prompt text. verl's RLHFDataset has apply_chat_template=False and it was never enabled. Applying Qwen2.5-Math's chat template at inference creates a train/eval mismatch measured at roughly 19 points of pass@1.

python
from vllm import LLM, SamplingParams
llm = LLM(model="sandeep123/aops-grpo-entropy-step200", dtype="bfloat16", max_model_len=3072)
params = SamplingParams(n=6, temperature=1.0, top_p=1.0, top_k=-1, max_tokens=2048)
out = llm.generate([prompt_text], sampling_params=params)   # raw string, not llm.chat()

Validation metrics at this checkpoint

metricvalue
pass@10.2207
pass@60.4219
step200

Answer extraction (pre-registered). An answer is the content of the final \boxed{}, compared by mathematical equivalence. Responses with no extractable answer are scored incorrect, and all K rollouts stay in the denominator.

Validation uses 256 held-out prompts, K=6, temperature 1.0, seed 42 -- pinned in code so every arm, including the temperature-1.2 arm, is scored under identical decoding.

Checkpoint selection

Quality-optimal and diversity-optimal checkpoints differ substantially, so both the best-pass@1 and best-pass@6 checkpoints are published for every arm. Diversity results are therefore never reported from a checkpoint chosen purely for accuracy.