bdougie/smollm3-pokemon-forger-lora
smollm3-pokemon-forger-lora
The Forger seat of the pokemon-kafka expedition crew: given where a body stands, its sprite picture and the sentence read from the screen, name what the body is and what the talk yields; read a refusal sentence as a gate class and what clears it; take an operator handoff.
- Base
HuggingFaceTB/SmolLM3-3B, bf16 LoRA r32 (q,k,v,o,gate,up,down), 3 epochs on the Forger's rows of bdougie/pokemon-red-sft v6u (1,385 train rows), trained 2026-09-07 with empirical-evidence'sautotune.train_sfton an RTX 5090. - Every row is measured from a run of Pokémon Red on the cartridge; no recalled game facts. New in v6u: the Saffron gate house guard (
thirsty_guard) and refused steps the class table does not know, labelledunclassified, so the seat learns to say "not one I know, go measure" instead of naming the nearest story.
Held-out gates (tuned vs base SmolLM3-3B; majority = always "talk")
Random split (154 rows from the same maps and runs):
By-map split (370 rows from 29 maps the adapter never saw; a second adapter trained with the same recipe minus those maps):
The by-map numbers match the random ones, so the body and gate heads are reading the sentence, not remembering coordinates. Previous adapter (v5u, 2026-09-07 morning): body 0.82, outcome 0.66, gate 4/4 on 148 rows. Full numbers and the held-out map list in eval.json; the training log in train.log.
Serving
gguf/pokemon-forger.Q4_K_M.gguf is the merged, quantized copy: ollama pull hf.co/bdougie/smollm3-pokemon-forger-lora:Q4_K_M. The gate numbers are the bf16 adapter's; the quantized copy degenerates first in free-text fields, so pokemon-kafka salvages a truncated reply's categorical fields.
