Repository navigation
Build a dedicated self-knowledge corpus lane - #11
GroveMinting wants to merge 1 commit into
Conversation
|
One more thing this PR fixes, which may be worth noting: on One thing it doesn't cover: the README scores |
…weep (case 2b)
The d_lam path was implemented but missing the 1/M batch mean, making
every halting gradient M times too large (8x at production M=8).
Verified via a cached-lam finite difference in double precision that
sweeps M={1,2,3}: rel error was exactly 1/M with the defect and
passed with the fix.
- src/backward.cpp: fold inv_M into step_ce so d_lam and dc_prev scale correctly
- src/backward.hpp: publish d_lam_per_step via optional out-param
- tests/test_backward.cpp: case 2b check_halting_scaling + halting_identity;
also fixed a latent exp-for-log typo in ce_of that had masked an entire defect turn
- tests/test_pool_backward.cpp: covers pooled MLP in isolation
- src/paged.*: assert_slots_valid on mutable_w* to prevent pre-begin_segment writes
- src/recur.hpp: begin_segment() marked REQUIRED
- STATUS.md: gap volotat#11 CLOSED, gap volotat#12 CLOSED, ce_of typo recorded as bug volotat#5
Test: 8/8 ctest pass; defect reintroduction fails 6 checks, fix passes all.
Train smoke: 3 steps, loss 5.5458 (forward unchanged).
corpora all declared data/train/self-knowledge but build_self_knowledge ran
the generic chat generator and expanded the chat lane, so the folder that
serve.py primes from was never created. Add chat --self-only (YAML-backed
turns only, written to data_self_knowledge_char), expand it into
data/{train,val}/self-knowledge, bound it with --limit, and count a nonzero
builder return code as a failure even when stale files exist.
Same change as volotat#11, with its test as
tests/test_self_knowledge_lane.py.
Fixes #10.
What
chat --self-onlygeneration backed strictly byself_knowledge.yaml.data_self_knowledge_charby default.data/{train,val}/self-knowledge.corpora allto the new source and make--limitbound its conversation count.meta.jsonexplicitly and record the generation mode.Why
The existing self-knowledge builder called the generic chat generator and expanded the
chatlane. Since the expander had no self-knowledge source,data/train/self-knowledgewas never created,corpora allreported failure, and serving could not load its documented prime.Verification
Five tests pass. They cover:
--limitwiring;Also verified with
compileallandgit diff --check. The changed files are independent of open PRs #7 and #9.