Repository navigation
[Misc] Route LingBot-World example action root through stage-scoped model config - #9315
dongyang1006 wants to merge 1 commit into
Conversation
…odel config build_omni_kwargs passed lingbot_action_root through the flat global model_config kwarg. That kwarg's routing to diffusion stages is resolution- and revision-dependent: the structured config projection dropped it for diffusion stages until vllm-project#8289 restored the global CLI route, so the trusted action root only reached OmniDiffusionConfig.model_config on revisions that carry that fix. The stage-scoped stage_0_model_config key is honored on both the runtime and structured resolution paths, so the trusted action root reaches the pipeline regardless of resolution path. Assert the routing form in the CPU example test. Signed-off-by: dongyang1006 <40831215@qq.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
This PR matches CODEOWNERS paths: /tests/. Code owners: @NickCao @yenuo26 Routing: @NickCao via CODEOWNERS; @yenuo26 via CODEOWNERS @dongyang1006, please review your own changes and leave a short self-review comment describing what you checked. PRs without author self-review may not be assigned a reviewer. Please take a look when you have a chance. If you would like an automated review, mention @vllm-omni-review-bot in a comment. |
Omni ReviewBot: no human activity for 8 days@dongyang1006 this pull request has had no human commit, comment or review since 2026-10-23. Please confirm the current plan and next step. The author or a maintainer decides whether to change the PR state. To keep it moving, any one of these is enough: push an update, reply to the open blocker, or post the current plan and timeline. |
|
Self-review notes (also answering the stale-check above). What I checked:
Current plan / next step: the PR is ready for review as-is; no further changes planned unless reviewers request them. CC @NickCao @yenuo26 (CODEOWNERS for |
1. What outcome do you want to achieve?
The LingBot-World v2 example should deliver its trusted action root (
lingbot_action_root) to the diffusion pipeline in a form that is independent of the config resolution path and of the revision the user runs — no correctly configured run should ever hit the pipeline's fail-closedaction_path requires a trusted action root...error.2. What is the highest-leverage variable for that outcome?
The kwargs form used to pass model config to
Omni(...). The flat globalmodel_configkey only reaches diffusion stages on revisions carrying #8289's routing fix; the stage-scopedstage_0_model_configkey is honored on both the runtime and the structured resolution paths, on any recent revision.3. How will this work move that variable?
build_omni_kwargsnow emits the stage-scopedstage_0_model_configkey instead of the flatmodel_configkey, and a new CPU test (test_action_root_uses_stage_scoped_model_config) locks the form in — asserting the routing key, the removal of the flat key, and that the other five kwargs are unchanged.4. Whose customer or user needs does this address, and what are those needs?
Users running the LingBot-World v2 offline example with camera-action inputs, including on deployments pinned to revisions predating #8289. They configure the checkpoint,
--action-dir, and the trusted action root exactly as documented, and need the run to be accepted — not rejected by the fail-closed action-root check — regardless of which resolution path or revision serves the request.Purpose
build_omni_kwargsin the LingBot-World v2 example passedlingbot_action_root(the trusted action root) through the flat globalmodel_configkwarg. That kwarg's routing to diffusion stages is resolution- and revision-dependent: the structured config projection dropped it for diffusion stages until #8289 restored the global CLI route, so the example's action root only reachedOmniDiffusionConfig.model_configon revisions that carry that fix. When the kwarg is dropped, the pipeline fails closed with:This switches the example to the stage-scoped
stage_0_model_configkey, which is honored on both the runtime and the structured resolution paths (the structured path is covered bytest_nested_stage_override_deep_merges_structured_model_config), so the trusted action root reaches the pipeline regardless of resolution path or revision.Behavior before/after on current main: identical results — both forms reach the diffusion stage since #8289. The stage-scoped form additionally works on revisions predating #8289 and makes the routing target explicit in the example. Scope: example + CPU test only; no runtime code changes.
Test Plan
vLLM Version: 0.30.0
vLLM-Omni Commit: 4aa8984 (based on e12f297)
test_action_root_uses_stage_scoped_model_configassertsbuild_omni_kwargsemitsstage_0_model_configcarrying the action root, emits no flatmodel_configkey, and leaves the other five keys unchanged.test_offline_ulysses_argument(ulysses/tp validation) is unaffected by the change.Test Result
🤖 Assisted by opencode (AI-assisted contribution, human-reviewed)