{ "base_model": "Qwen/Qwen2.5-3B", "base_revision": "3aab1f1954e9cc14eb9509a215f9e5ca08227a9b", "recipe": "tinker_cookbook.recipes.math_rl.train (cli_main, stock) @f79fdb2b", "recipe_args": { "env": "gsm8k", "group_size": 8, "groups_per_batch": 8, "max_tokens": 512, "max_steps": 40, "seed": 0, "loss_fn": "importance_sampling", "renderer_name": "role_colon", "eval_every": 0, "save_every": 20, "temperature": 1.0, "num_substeps": 1, "kl_penalty_coef": 0.0 }, "optimizer": "recipe AdamParams(lr, beta1=0.9, beta2=0.95, eps=1e-8), constant LR", "arms": { "rank1": [ "3e-5 (grid-edge extension)", "1e-4", "3e-4", "1e-3" ], "rank32": [ "1e-4", "3e-4", "1e-3" ] }, "notes": [ "cookbook model_info has no Qwen2.5-3B entry, so renderer_name=role_colon (cookbook base-model renderer) was passed explicitly", "cookbook CLI default loss_fn is now stable_reinforce; loss_fn=importance_sampling passed to match the spec's IS loss", "eval_every=0 disables the recipe's in-training test-set eval (logging only; training unchanged)", "rank32_lr1e-4 and rank32_lr3e-4 died with 410 model_lost at steps 38/36 and were resumed by the stock recipe from their step-20 state (with optimizer); steps 20-39 re-ran", "wrapper train_arm.py only injects Modal proxy headers and records read-only provenance" ], "n_eval": { "selection": 200, "confirmation": 1119 } }