-
Notifications
You must be signed in to change notification settings - Fork 242
[NV] minimax-m3-b200/b300-mtp: update fp8 MTP to vLLM nightly / [NV] minimax-m3-b200/b300-mtp:将 FP8 MTP 更新至 vLLM nightly #2337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
7148fb9
1274cd2
924e327
315b9a0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5085,3 +5085,11 @@ | |
| description: | ||
| - "Bump SGLang container image from lmsysorg/sglang:v0.5.12-cu130 to lmsysorg/sglang:v0.5.15.post1-cu130 (https://github.com/sgl-project/sglang/releases/tag/v0.5.15.post1)" | ||
| pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2313 | ||
|
|
||
| - config-keys: | ||
| - minimaxm3-fp8-b200-vllm-mtp | ||
| - minimaxm3-fp8-b300-vllm-mtp | ||
| description: | ||
| - "Bump image to vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9; set --stream-interval 32; consolidate --attention-config with indexer_kv_dtype fp8; drop the sparse_attention_msa contiguity patch (shipped in the nightly image)" | ||
|
Comment on lines
+5088
to
+5093
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 This PR's title and description are English-only, but AGENTS.md mandates bilingual PR titles/descriptions (title format Extended reasoning...AGENTS.md line 7 states, as a top-level mandatory rule (not subjective style): "PR and GitHub-issue titles & descriptions must be bilingual — include a Simplified Chinese version in addition to English. Title format: The violation: The PR title is Why this isn't caught elsewhere: The only automated enforcement visible in the PR timeline is the Step-by-step proof:
Impact and fix: This is a metadata/process gap, not a code defect — nothing breaks at runtime, no benchmark or config behavior is affected, and the fix is simply editing the PR title and appending a |
||
| - "EAGLE3 draft head Inferact/MiniMax-M3-EAGLE3 -> Inferact/MiniMax-M3-EAGLE3-GQA; speculative attention_backend TRITON_ATTN -> FLASH_ATTN; num_speculative_tokens kept at 3" | ||
| pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2337 | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🟡 The config comments above minimaxm3-fp8-b200-vllm-mtp (~line 7458-7459) and minimaxm3-fp8-b300-vllm-mtp (~line 7513) still say the drafter is 'Inferact/MiniMax-M3-EAGLE3' pinned to 'TRITON_ATTN', but this PR switches both recipes to 'Inferact/MiniMax-M3-EAGLE3-GQA' with 'FLASH_ATTN'. Please update these two comment blocks to match, similar to how the h200/h100 mtp entries already describe the FLASH_ATTN/GQA rationale.
Extended reasoning...
configs/nvidia-master.yamlcontains a hand-written comment block directly above eachminimaxm3-fp8-*-vllm-mtpconfig entry explaining the EAGLE3 speculative-decoding setup for that recipe. Forminimaxm3-fp8-b200-vllm-mtpthe comment (around lines 7456-7459) reads: "...adds the Inferact/MiniMax-M3-EAGLE3 draft head... The target uses the FlashInfer TRT-LLM attention path. The EAGLE3 drafter is pinned separately to TRITON_ATTN." Forminimaxm3-fp8-b300-vllm-mtpthe comment (around lines 7511-7513) similarly references the plainInferact/MiniMax-M3-EAGLE3draft head with no attention-backend caveat.This PR changes exactly what those comments describe: the draft head becomes
Inferact/MiniMax-M3-EAGLE3-GQAand the speculativeattention_backendmoves fromTRITON_ATTNtoFLASH_ATTN(visible in the matching.shrecipe diffs, where the header comments were correctly updated: "Inferact/MiniMax-M3-EAGLE3-GQA draft head" and "The EAGLE3-GQA drafter is pinned separately to FLASH_ATTN."). However, the diff hunk touchingconfigs/nvidia-master.yamlonly replaces theimage:line inside each block (lines 7461-7467 for b200, 7517-7523 for b300) — the descriptive comment lines sitting just above those keys were left untouched.The result is that after this PR merges, the YAML comments for the b200 and b300 mtp entries misdescribe the actual recipe: they name the wrong draft-head repo (missing "-GQA") and, for b200, explicitly claim the drafter is "pinned to TRITON_ATTN" when it is now pinned to FLASH_ATTN. This is a real inconsistency the PR introduces/worsens, not a pre-existing one, since the PR's own script changes are what make the comments wrong. Contrast this with the sibling h200/h100 mtp entries further down in the same file (~lines 7539-7546 and 7565-7570), which already correctly explain the FLASH_ATTN/GQA rationale — those are the template this PR's two comment blocks should be brought in line with.
Step-by-step proof: (1) Before this PR, b200 mtp comment says draft head =
Inferact/MiniMax-M3-EAGLE3, backend =TRITON_ATTN, matching the old script'sDRAFT_MODEL="Inferact/MiniMax-M3-EAGLE3"and"attention_backend": "TRITON_ATTN". (2) This PR's diff tominimaxm3_fp8_b200_mtp.shchangesDRAFT_MODELto"Inferact/MiniMax-M3-EAGLE3-GQA"andattention_backendto"FLASH_ATTN", and updates that script's own header comment to match. (3) Theconfigs/nvidia-master.yamldiff for the same recipe only touches theimage:line — the comment block above it is byte-for-byte identical to before. (4) Therefore post-merge, the YAML comment and the actual recipe behavior diverge: reading the config comment alone, a maintainer would believe the drafter still uses TRITON_ATTN with the non-GQA head, which is now false. The same divergence applies to the b300 comment (missing "-GQA" and no FLASH_ATTN mention).This is comment-only and has zero effect on runtime behavior — the scripts themselves (the actual source of truth for how the benchmark runs) are correct. So while it's a genuine, PR-introduced inconsistency worth fixing to keep the config self-documenting, it doesn't block anything at merge. Fix: update the two comment blocks in
configs/nvidia-master.yamlto say "Inferact/MiniMax-M3-EAGLE3-GQA draft head" and "pinned separately to FLASH_ATTN" (b200) / add the same GQA/FLASH_ATTN mention (b300), mirroring the phrasing already used in the h200/h100 mtp comments.