Repository navigation
Land Phase 7.3b WP3: Qwen3-VL prompt expander and three-axis planner - #53
Merged
Merged
Conversation
- Package-private Qwen3VlPromptExpander plus position planner family (Qwen3VlPromptTokens/ImagePlacement/RopePlan/PositionPlanner/PromptPlan), a faithful port of the pinned get_rope_index image path (transformers 4.57.6 modular_qwen3_vl.py:858-955) with checked arithmetic that rejects overflow and past-the-prompt grids before any array is written. - Token contract: the four real Qwen sentinels (hex-verified against the pinned 2B artifact); Qwen3VlPromptTokens.resolve takes each sentinel name to its ID through the tokenizer and cross-checks the outer config.json ID. No hard-coded numeric IDs in production code. - Golden tools/hf-reference/goldens/qwen3-vl-wp3-prompt.json (8 cases x 2 add_generation_prompt variants, generated by qwen3vl_wp3_prompt.py), digest-pinned in tools/hf-reference/provenance.json and enforced by verifyHfReferenceGoldens; WP1-consistent expanded lengths 82/-56 and 90/-60. - 33 pure-Java tests (Qwen3VlPromptExpanderTest) over the golden, the resolve contract, the hand-computed position cases and the exact grammar-rejection messages, plus the qwen3vl-tokens fixture. - Findings gain section 6.8 (grammar, rejection table, jmlx-tokenizer three-directions finding, planner port, evidence) and correct the earlier template-description line; plan section 5 records WP3 acceptance. Corrects the earlier sentinel assumption, which was an artifact of terminal display stripping the 0x7c byte.
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.
(Qwen3VlPromptTokens/ImagePlacement/RopePlan/PositionPlanner/PromptPlan),
a faithful port of the pinned get_rope_index image path (transformers
4.57.6 modular_qwen3_vl.py:858-955) with checked arithmetic that
rejects overflow and past-the-prompt grids before any array is written.
pinned 2B artifact); Qwen3VlPromptTokens.resolve takes each sentinel
name to its ID through the tokenizer and cross-checks the outer
config.json ID. No hard-coded numeric IDs in production code.
add_generation_prompt variants, generated by qwen3vl_wp3_prompt.py),
digest-pinned in tools/hf-reference/provenance.json and enforced by
verifyHfReferenceGoldens; WP1-consistent expanded lengths 82/-56 and
90/-60.
resolve contract, the hand-computed position cases and the exact
grammar-rejection messages, plus the qwen3vl-tokens fixture.
three-directions finding, planner port, evidence) and correct the
earlier template-description line; plan section 5 records WP3
acceptance. Corrects the earlier sentinel assumption, which was an
artifact of terminal display stripping the 0x7c byte.