ATOM (atom-ai): code snapshot (100fae0 + batched-train), README with measured numbers, curated checkpoints
9f1076a verified |
Download docs/READOUT_OBLIGATORY.md from thefinalboss/atom-ai: direct link, hf CLI and curl.
- Browser
- Download file 2.97 kB
-
https://huggingface.co/thefinalboss/atom-ai/resolve/main/docs/READOUT_OBLIGATORY.md
- Command line
-
hf download hf://thefinalboss/atom-ai/docs/READOUT_OBLIGATORY.md
-
curl -L -o READOUT_OBLIGATORY.md https://huggingface.co/thefinalboss/atom-ai/resolve/main/docs/READOUT_OBLIGATORY.md
2.97 kB
| # READOUT_OBLIGATORY — field-obligatory surface path (main CE) | |
| _Updated: 2026-09-17 ~20:00 PDT_ | |
| English. Numbers only. No fluency claim. No MERGE retune. | |
| ## Problem | |
| Stream ckpt @ 2.9M (`STREAM_2_9M_PROBE`): α separates (off-diag cos **0.707**) but | |
| surface logits stay high (**0.980**). Prior L_ign levers (hinge / ablate-shared / | |
| prompt-bank / both) were **falsified** — they did not force the **main** CE | |
| forward to depend on α. | |
| ## Mechanism (one new path) | |
| **`field_obligatory_readout`** on `AtomSurfaceHead.forward` (same call CE uses): | |
| 1. **α-only JL fingerprint** of full flattened α (not mean‖std alone — that | |
| collapsed inter-prompt cos ~0.93 while full α sits ~0.71). | |
| 2. **Frozen** random α→logit map (`alpha_byte_frozen` / `alpha_length_frozen` | |
| buffers) mixed into logits with hard weight | |
| `mix ∈ [obl_mix_floor, 1]` (`obl_mix_floor=0.35`). CE cannot drive this to 0 | |
| and cannot retrain the frozen map to a shared template. | |
| 3. **Trainable** α adapter (`alpha_byte_proj`) added with floored | |
| `softplus(obl_gate)+obl_floor` residual. | |
| 4. Skip path also fed α-only (padded) when the flag is on. | |
| Flag: `--field-obligatory-readout` / `--no-field-obligatory-readout` (default off). | |
| L_ign left at **0** for this smoke (different mechanism). | |
| Unit test: same `atom_r`/persistence, α vs `zeros_like(α)` ⇒ logit cosine **< 0.99** | |
| (`test/test_generation_smoke.py::FieldObligatoryReadoutTests`). | |
| ## Setup | |
| | Item | Value | | |
| |------|-------| | |
| | resume | copy of stream `atom_native.pt` @ **2 900 000** → `checkpoints/atom_native_obligatory/atom_native_src.pt` | | |
| | out | `checkpoints/atom_native_obligatory/atom_native.pt` @ **2 901 500** | | |
| | steps | **1500** | | |
| | data | `data/corpus_train_chat.txt` | | |
| | flag | `--field-obligatory-readout` | | |
| | L_ign | **0** (isolated) | | |
| | also | field-loss 0.08, contrast 0.45/0.45, merge ON, slow_every 4 | | |
| Artifacts: `docs/artifacts/obligatory_smoke_1k5/`. | |
| ## Before / after probe | |
| | Metric | Part A (stream 2.9M) | Migrate-only (obligatory ON) | After +1500 | | |
| |--------|----------------------|------------------------------|-------------| | |
| | Surface logits off-diag cos | **0.979936** | **0.753479** | **0.865194** | | |
| | α off-diag cos | **0.706717** | 0.706717 | **0.705011** | | |
| | Mean RMS after prompt | 0.005340 | ~0.00534 | 0.005274 | | |
| | Mean RMS after 20 gen | 0.026840 | — | 0.024369 | | |
| | Verdict | field carrying structure | — | field carrying structure | | |
| **Success bar:** logits drop vs Part A without killing α → **PASS** | |
| (0.980 → 0.865; α ~0.71 unchanged). | |
| Migrate-only already separates (0.753); short CE raises logits somewhat | |
| (0.865) but stays well below Part A and far below the L_ign series (~0.991). | |
| ## Not done | |
| - No MERGE threshold retune | |
| - No long CE / stream restart | |
| - No fluency claim | |
| ## How to re-probe | |
| ```bash | |
| PYTHONPATH=. .venv/bin/python tools/probe_field_persistence.py \ | |
| --checkpoint checkpoints/atom_native_obligatory/atom_native.pt --skip-docs | |
| ``` | |