Repository navigation
Conversation
Use dynamo-multimodal 0.2.2 for checkpoint-driven GLM image token counts and layout validation. Select the adapter before legacy flat-config loading and fall back to text-prefix routing when planning is unsupported or fails. Add Rust adapter and preprocessing tests plus real Python binding resolver tests with shared lightweight checkpoint fixtures. Three-backend routing E2E remains follow-up work. Validation: targeted preprocessor Rust tests passed (383 passed, 2 ignored); Python binding tests passed (11 passed); cargo fmt, Ruff, and git diff --check passed. Signed-off-by: Fang Han <fangh@nvidia.com>
HanFa
had a problem deploying
to
external_collaborator
October 20, 2026 21:29 — with
GitHub Actions
Failure
This was referenced Oct 20, 2026
Open
This branch had an error being deployed
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.
Summary
Connect GLM-5.3-Flash image routing to the default Rust frontend through the shared
glm5_nextplanner. Use checkpoint metadata for image token counts and validate the rendered prompt layout before constructing exact routing tokens. Unsupported configuration, accounting failures, and layout failures retain text-prefix routing.Details
dynamo-multimodaldependency to0.2.2with default features disabled; update both Cargo lockfiles.processor_config.jsoncheckpoints are supported.Stack
Depends on ai-dynamo#16947.
This PR is intentionally opened in
HanFa/dynamowith basecodex/dis-3123-image-token-accounting-errors, so its diff contains only the GLM integration commit. The prerequisite targetsai-dynamo/dynamo:main.After the prerequisite merges upstream, port this GLM commit onto the updated upstream
mainand open its upstream PR. This fork PR is the incremental review for the second step.Where should the reviewer start?
Start with
lib/llm/src/preprocessor/mm_routing/glm5_next.rs, then the adapter selection and layout-validation call sites.lib/llm/src/preprocessor/glm5_next_tests.rsexercises the preprocessing boundary;lib/bindings/python/tests/test_routing_image_token_id.pyexercises the existing Rust resolver exposed to Python.Validation
cargo test -p dynamo-llm --no-default-features --features mm-routing --locked --lib preprocessor:: -- --test-threads=4: 383 passed, 2 ignored with the prerequisite applied.python -m pytest lib/bindings/python/tests/test_routing_image_token_id.py -q: 11 passed against locally built bindings withmm-routingenabled.cargo fmt --all --check, Ruff,git diff --check, and repository commit hooks: passed.Related Issues
Part of ai-dynamo#16948.
Internal tracking: DIS-3123 (multimodal-aware KV routing model support).
Consumes the shared planner from ai-dynamo/frontend-crates#412, released in
dynamo-multimodal0.2.2.