{ "model": "D1A-E4B-it v0.6", "base": "google/gemma-4-E4B-it", "base_revision": "ee0ef6023621cff504d758262d4e04895a5af4a2", "change_from_e2b_it_v0.6": "the trunk only: google/gemma-4-E2B-it -> google/gemma-4-E4B-it (ee0ef602); both stages use E2B-it v0.6's recipes, mix and settings unchanged", "stage_1": { "recipe": "recipes/d1a-e2b.yaml (what made E2B v0.2.x) with base google/gemma-4-E4B-it", "suite": "evals/v7/decision-v7", "epochs": 2, "lr": 0.0001, "batch": 4, "accum": 2, "p_none_pair": 0.25, "optimizer_steps": 3128, "records_seen": 30212, "where": "steps 1-2,038 on Hugging Face Jobs, one NVIDIA L4 (bf16 autocast, bf16 frozen weights); steps 2,039-3,128 resumed on an Apple M1 Max (MPS, fp32 forward, bf16 frozen weights) after the cloud job stopped. LoRA and head master weights are fp32 on both.", "checkpoint": "kept in the private repo JohnP1/d1a-e4b-runs (e4b-it-v06/stage1), not published", "weights_sha256": "bd217060dca2d0ef7d07a103e2bb0c8a4a505502b315b91194a3caa38ba533cd", "head_sha256": "e9f13355196677f3bea172ffe26d17bbe4276098f08afaf28db317341b39bd14" }, "stage": "Every later skill in one run, as E2B v0.6 and E2B-it v0.6: PR labels (English 4,000, Japanese 753, blast radius 1,500, and 479 hermes-agent PRs created 2026-10-02 to 10-05 shown twice), hard-v1 4,000, devtools-v1 4,000, documents-v1 2,500, JGLUE 2,000, routing factory/generic 1,216/1,000, decision-v7 1,500; 23,427 records; 1 epoch, lr 5e-5, LoRA 16 on all projections, batch 2 x accum 4, states up to 5,120 tokens, 2,929 steps", "data": { "mix_sha256": "efff4b161e2d493f3d6e33712174614964279446ed2deb65b78ad4f7cb86e7a9", "records": 23427, "truncated": 0, "rejected": 0, "note": "byte-identical to E2B v0.6's and E2B-it v0.6's mix, screened before training against every evaluation partition" }, "training": { "epochs": 1, "lr": 5e-05, "head_lr": 0.0, "weight_decay": 0.01, "lora": 16, "lora_targets": "all", "batch": 2, "accum": 4, "dtype": "fp32", "weights_dtype": "bf16", "checkpointing": 1, "max_state": 5120, "p_none": 0.1, "p_none_distract": 0.12, "p_distract": 0.15, "seed": 0 }, "compute": { "stage_2_where": "Apple M1 Max (64 GB), MPS, fp32 forward with bf16 frozen weights", "stage_2_finished": "2026-10-17 16:32 JST", "stage_2_wall_seconds": 126823, "stage_2_note": "wall time includes a 20-minute pause at step 1,698", "stage_2_peak_device_bytes": 15831419904, "optimizer_steps": 2929, "records_seen": 23427 }, "bos": "The Gemma 4 E4B-it tokenizer adds no , but the model was trained with one. d1a with jonpol01/d1a#261 prepends it (bos_token_id 2); clients that encode themselves must prepend id 2.", "calibration": { "temperature": 1.551, "fit": "pooled rows: decision-v7 calibration split + PR-labeling development set", "questions": 3178, "interval_90": [ 1.481, 1.625 ], "ece_raw": 0.057, "ece_out_of_fold": 0.015, "use_case_temperatures": "none (routing T 1.20 fitted, not shipped: out of fold not separated, held-out transfer ECE 0.018 -> 0.031)" }, "code": "github.com/jonpol01/d1a (d1a.training.train) with the fix (jonpol01/d1a#261); calibration with d1a.training.calibrate" }