Repository navigation
Conversation
Signed-off-by: 0z5a <dezhen.lu@student.uni-tuebingen.de>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Depends on
feature/huginn-looped-rlat71860e55800229d68fbf48aed64a4a2688e8f1bd(upstream draft vllm-project#464). This fork PR contains only the incremental readout/objective work.Add a response-only, fixed-depth readout for Ouro, Nanbeige and Huginn. It includes the prompt-to-response boundary, runs Huginn's coda for every supervised loop, and reconstructs vocabulary tiles during backward. A separate unclipped RLTT objective primitive makes reference policy, terminal sampled/full KL, reduction and credit gradients explicit. Existing dense provider calls retain their behavior; online trainer dispatch is still pending.
Test result
111 CPU tests pass: 50 numerical/objective oracles, 42 three-family readout comparisons, six provider regressions, and 13 existing short-update/publication/resume regressions. FP64 finite differences, FP32/BF16 readout derivatives, all trainable recurrent parameters, recomputation, empty responses and logical-batch partition invariance are covered. Ruff and diff checks pass. Three additional provider-factory checks fail at the existing MCore training import because Triton is unavailable; no packages were changed.
FP32, one CPU thread, three independent process starts; each warms both arms and runs three dense/streamed/streamed/dense blocks. These are geometric-mean readout-only forward/backward times on a shared macOS host. The prototype is slower in all measured cases; this is a correctness and retained-storage foundation.
Raw observations are in
benchmarks/results/streamed-readout-cpu/; objective differences and gradient bounds are indocs/looped_readout_contract.md. Saved intermediate bytes exclude supplied inputs/parameters and do not measure peak memory or GPU memory. This is an RLTT objective reimplementation, not original-stack reproduction. Official-model GPU E2E, BF16 cross-engine scores, full-step acceleration and reward convergence remain unmeasured.