Dev audits KLPO training backend: default gradient equals REINFORCE, async training rejected
burny_tech · x · 2026-09-21
- A developer inspected the KLPO project's loss implementation and training backend, ran all 145 tests, and verified the gradients by hand.
- Key finding: when trainer and sampler probabilities match, the default gradient equals REINFORCE in expectation (numerically reproduced); the correction only matters when they diverge.
- The backend mandates synchronous, on-policy training with one optimizer step per rollout batch and explicitly rejects asynchronous configurations, substantially limiting continual-learning potential.
- Its default Monte Carlo implementation retrieves the full vocabulary's probabilities at every token and samples auxiliary tokens with NumPy, adding overhead without cheaper training; single-trajectory updates already exist in REINFORCE and don't establish reliable learning.
More from coding & agent
- AI Comes for the If Statement: Tomasz Tunguz on AI replacing hardcoded rule logic — hardimanjames · 2026-09-22
- Thorsten Ball: Code Review Will Die, and Unit Tests Might Follow — rseroter · 2026-09-22
- Tinfield 1 open-weight model claims to beat Claude Opus 4.8 on Terminal-Bench — victormustar · 2026-09-22
- Qwen Code Desktop v0.24.3 ships bwrap sandbox, DingTalk output and token budgets — github-actions[bot] · 2026-09-22
- Hazy Research: agents are replacing abstractions — CUDA DSLs are heading to retirement — ricklamers · 2026-09-22
- Musk reveals multi-agent setup: Grok Bot orchestrates Claude Code, Codex, hints at Grok 4.7 — elonmusk · 2026-09-22