Add RL + batch-inference interleaving guide - #160
Draft
aishukamal wants to merge 1 commit into
Draft
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 19, 2026 05:44
fd0322e to
191735a
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 19, 2026 05:44
f102677 to
1919489
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 19, 2026 06:36
191735a to
2f2b466
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 19, 2026 06:39
1919489 to
2e7fe6e
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 19, 2026 07:16
2f2b466 to
56491f6
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 19, 2026 07:16
2e7fe6e to
0f15d0d
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 19, 2026 07:29
56491f6 to
5399c6b
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 19, 2026 07:29
0f15d0d to
90699a5
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 19, 2026 22:59
5399c6b to
e2b8ca9
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 19, 2026 23:02
90699a5 to
f9d882f
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 20, 2026 00:58
e2b8ca9 to
ea9bedc
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 20, 2026 00:58
f9d882f to
1c6254f
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 20, 2026 03:03
ea9bedc to
4d2021c
Compare
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 20, 2026 03:04
1c6254f to
b802c70
Compare
aishukamal
force-pushed
the
feat/verl-fully-async-integration
branch
from
August 20, 2026 03:04
4d2021c to
eb5bbb3
Compare
Time-slices one verl fully-async RL training job with a stock vLLM batch-inference server on the same GPU: the trainer has absolute priority (cuda-checkpoint C/R), vLLM harvests the trainer's idle valleys via its native sleep mode driven through the snapshot agent's workload channel. The RL job manifest uses the timeslice-verl package (pkg/integrations/verl: a FullyAsyncTrainer subclass registered as trainer name "timeslice" via verl's fully-async lifecycle hooks + trainer registry, selected with async_training.trainer_name=timeslice; ray_pg_extra_resources PG pinning). The vLLM supervisor and load generator live under examples/ and are example-only: the supervisor demonstrates the polite-tenant pattern (waiter poll, readiness-gate drain before /sleep - required, vllm#28714 - workload-channel registration); production batch serving should sit behind a queue-based front-end with retries. Requires a snapshot-agent build with workload-channel default routing (config-less Snapshot/Restore resolves the job's registered workload channel) - see values-timeslice.yaml note.
aishukamal
force-pushed
the
feat/verl-rl-batch-guide
branch
from
August 20, 2026 03:05
b802c70 to
4f3fa44
Compare
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.
Stacked on #158; retarget to main after it merges.
Adds
guides/rl-batch-interleaving/: a guide that time-slices one verl fully-async RL training job with a stock vLLM batch-inference server on the same GPU. The trainer has absolute priority (cuda-checkpoint C/R); vLLM harvests the trainer's idle valleys via its native sleep mode, driven through the snapshot agent's workload channel.pkg/integrations/verl), with the verl lifecycle-hook and PG-pinning features installed directly from the fork branchaishukamal/verl@feat/fully-async-lifecycle-hooks.examples/and are marked example-only: the supervisor demonstrates the polite-tenant pattern (waiter poll, readiness-gate drain before sleep, workload-channel registration); production batch serving should sit behind a queue-based front end with retries. The rationale for draining before sleep is documented in the guide.latestplatform images include it; the guide's release-pin note covers pinning a tagged release once one containing orchestrator: fix cold-start Acquire deadlock for pre-provisioned jobs #152 and snapshot-agent: resolve each job's backend via explicit config, workload channel, pod annotation, then default #159 is cut.Validation: validated e2e on GKE (2x 1-GPU H100 nodes; 80-minute run, 9/9 mixed-backend cycles — vLLM app-channel sleep/wake alongside trainer cuda-checkpoint C/R — with no crash, fault, or NCCL errors).