Mahesh111000/hanabi-training12-combined-skyrl
024
hanabi-training12-combined-skyrl (final, merged fp32)
Final checkpoint of the RL run training12-combined-20260918T075329414627Z (W&B project hanabi_training12_combined_skyrl), merged into its base.
Format
- fp32 safetensors, 4 shards (17.6 GB). Serve in half precision with
--dtype bfloat16. - `lm_head` is untied from `embed_tokens` (
tie_word_embeddings: false). The adapter trainslm_headwhile the base ties it to the embedding;lm_head.weight = embed_tokens.weight + B@A,embed_tokensis unchanged. Do not use PEFTmerge_and_unload()on the adapter: it writes thelm_headdelta into the tied embedding and changes the model (logit error 0.4-0.8 measured here). - Merge is done in fp32: the base is fp16 and max ||dW||/||W|| is 1.4e-3, so a half-precision merge rounds most of the update away.
Verification
training_run/verify_merge.py, verify_merge2.py: on three training examples (768 tokens each) this checkpoint matches PEFT(base fp32 + adapter) with mean |logit diff| 1e-5, max 1.3e-2 on logits of magnitude 55-59, per-position KL <= 4e-7, identical argmax at every position, identical data log-likelihood to 6 decimals; the adapter itself moves logits by up to 19.
Per-step adapters (steps 1-148): Mahesh111000/hanabi-training12-combined-skyrl-loras. Run config, manifest, metrics and the checkpoint index are in training_run/.
