Skip to content

launcher: gemma-4-E4B-it MTP — switch vLLM image to vllm-openai:gemma - #1736

Closed
ChenhanYu wants to merge 1 commit into
mainfrom
chenhany/gemma-4-vllm-image-fix
Closed

launcher: gemma-4-E4B-it MTP — switch vLLM image to vllm-openai:gemma#1736
ChenhanYu wants to merge 1 commit into
mainfrom
chenhany/gemma-4-vllm-image-fix

Conversation

@ChenhanYu

@ChenhanYu ChenhanYu commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

What

Switch the gemma-4-E4B-it specdec_bench_mtp_vllm parent YAML from vllm/vllm-openai:v0.22.1 to vllm/vllm-openai:gemma (both task_0 and task_1).

Why

v0.22.1 fails Gemma 4 MTP engine startup with an assertion error. The Gemma-specific image (vllm-openai:gemma) ships the patches Gemma 4 MTP needs; same image was used successfully on the sister cell (OMNIML-5024 cell_t0_d3, branch pensieve-intern/OMNIML-5023/t0_d3).

How surfaced

Diagnosed 2026-06-15 on OMNIML-5025 cell_t0_d7 (intern-agent job 341631795):

  1. Agent submitted via the parent YAML with v0.22.1
  2. Task 0 failed at vLLM engine init with an assertion error
  3. Agent diff'd against the sister branch, identified the working image, patched locally, and resubmitted successfully

This PR applies the same patch to main so the next cell to dispatch doesn't re-derive the workaround.

Doc-comment also updated

Replaces the misleading "v0.22.1 (and later)" claim with the actual image name + a footnote citing the failure surface.

Summary by CodeRabbit

  • Bug Fixes
    • Improved Gemma 4 MTP launcher support by updating configuration to ensure proper engine initialization and prevent startup failures.

The generic vllm-openai:v0.22.1 image fails Gemma 4 MTP engine startup
with an assertion error. The Gemma-specific image (vllm-openai:gemma)
ships the patches Gemma 4 MTP needs; same image was used successfully
on the sister cell (OMNIML-5024 cell_t0_d3, branch
pensieve-intern/OMNIML-5023/t0_d3).

Surfaced 2026-06-15 on OMNIML-5025 cell_t0_d7 (intern-agent job
341631795): agent submitted with v0.22.1, task 0 failed at vLLM
engine init, agent diff'd against sister branch and patched locally.
This commit applies the same patch to main so the next cell to
dispatch doesn't re-derive the workaround.

Signed-off-by: Chenhan Yu <chenhany@nvidia.com>
@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 46b47957-588d-49c3-990f-abb81f4be9cc

📥 Commits

Reviewing files that changed from the base of the PR and between 55a2101 and 0e36863.

📒 Files selected for processing (1)
  • tools/launcher/examples/google/gemma-4-E4B-it/specdec_bench_mtp_vllm.yaml

📝 Walkthrough

Walkthrough

The Slurm launcher configuration for the Gemma 4 E4B-it speculative decoding MTP benchmark is updated to use vllm/vllm-openai:gemma instead of vllm/vllm-openai:v0.22.1 for both task_0 and task_1. The header comment is revised to document that the Gemma-specific image is required and that generic vLLM images fail during Gemma 4 MTP engine startup.

Changes

Gemma 4 MTP vLLM container image update

Layer / File(s) Summary
Container image and header comment update
tools/launcher/examples/google/gemma-4-E4B-it/specdec_bench_mtp_vllm.yaml
Header comment updated to state that vllm/vllm-openai:gemma is required for Gemma 4 MTP support and that other vLLM images fail engine startup. Container image field replaced from v0.22.1 to gemma in both task_0 and task_1.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Suggested reviewers

  • yeyu-nvidia
  • h-guo18
🚥 Pre-merge checks | ✅ 6
✅ Passed checks (6 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and specifically describes the main change: switching the vLLM image for gemma-4-E4B-it MTP from v0.22.1 to vllm-openai:gemma, which is the primary focus of this PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Security Anti-Patterns ✅ Passed PR only modifies YAML configuration file; no Python code changes present. Security anti-patterns check applies only to modelopt Python changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chenhany/gemma-4-vllm-image-fix

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov

codecov Bot commented Jun 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.13%. Comparing base (55a2101) to head (0e36863).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1736      +/-   ##
==========================================
+ Coverage   77.10%   77.13%   +0.03%     
==========================================
  Files         511      511              
  Lines       56260    56260              
==========================================
+ Hits        43380    43397      +17     
+ Misses      12880    12863      -17     
Flag Coverage Δ
regression 14.69% <ø> (+0.06%) ⬆️
unit 54.39% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ChenhanYu

Copy link
Copy Markdown
Collaborator Author

Superseded by #1738 — the agent on OMNIML-5025 opened a PR with the same container fix plus the per-cell file the cell stage produces. Closing this in favor of the broader one.

@ChenhanYu ChenhanYu closed this Jun 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-06-15 19:14 UTC

ChenhanYu added a commit that referenced this pull request Jun 15, 2026
Authored on pensieve-intern agent dispatch for OMNIML-5025
(cell_t0_d7, sweep gemma-4-E4B-it_mtp_vllm_t0_d7).

Two changes:

1. New per-cell file tools/launcher/common/specdec_bench/_cells/
   gemma-4-E4B-it_mtp_vllm_t0_d7.yaml — sweep params for the t0_d7
   cell of the gemma-4-E4B-it MTP/vLLM benchmark grid.

2. Switch the parent
   tools/launcher/examples/google/gemma-4-E4B-it/specdec_bench_mtp_vllm.yaml
   from container vllm/vllm-openai:v0.22.1 → vllm/vllm-openai:gemma.
   The generic v0.22.1 image fails Gemma 4 MTP engine startup with
   an assertion; the Gemma-specific image ships the patches MTP
   needs. Same image is what the sister cell (OMNIML-5024
   cell_t0_d3) ran successfully on.

Real run with this combination: experiment cicd_1781548540,
AL_qualitative_overall=3.2945, AL_throughput_32k_overall=3.3803.

Surfaced 2026-06-15 (intern-agent job 341631795). Supersedes #1736.

Signed-off-by: Chenhan Yu <chenhany@nvidia.com>
Co-Authored-By: pensieve-intern agent <noreply@nvidia.com>
Signed-off-by: Chenhan Yu <chenhany@nvidia.com>
ChenhanYu added a commit that referenced this pull request Jun 15, 2026
Switch container in tools/launcher/examples/google/gemma-4-E4B-it/
specdec_bench_mtp_vllm.yaml from vllm/vllm-openai:v0.22.1 →
vllm/vllm-openai:gemma. The generic v0.22.1 image fails Gemma 4 MTP
engine startup; the Gemma-specific image is what the sister cell
(OMNIML-5024 cell_t0_d3) ran successfully on.

Per PR #1564, this benchmark family does NOT use per-cell
_cells/<sweep>.yaml files — cell-specific params are passed as
pipeline.task_N.args+=[...] overrides at submit time, not committed
to the repo. The parent yaml + the args-override CLI is the
complete contract.

Real run with this container: experiment cicd_1781548540,
AL_qualitative_overall=3.2945, AL_throughput_32k_overall=3.3803.

Surfaced 2026-06-15 (intern-agent job 341631795). Supersedes #1736.

Signed-off-by: Chenhan Yu <chenhany@nvidia.com>
Co-Authored-By: pensieve-intern agent <noreply@nvidia.com>
Signed-off-by: Chenhan Yu <chenhany@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant