Skip to content

Conversation

@bbeckca
Copy link
Contributor

@bbeckca bbeckca commented Jul 31, 2025

Purpose

This PR migrates InternVLImagePixelInputs (in nemotron_vl.py) from a TypedDict-based definition to a structured TensorSchema model with runtime shape validation. This brings it in line with recent changes to Phi3VImagePixelInputs, and is part of a broader effort to improve input contract enforcement and debug-ability across multi-modal models.

Test Plan

Confirm validation works via standalone tests in tests/standalone_test/test_tensor_schema.py and rely on CI to check integration.

Test Result

TBD (after merging #21939 to fix test_tensor_schema.py)

@github-actions
Copy link

👋 Hi! Thank you for contributing to the vLLM project.

💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels.

Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run fastcheck CI which starts running only a small and essential subset of CI tests to quickly catch errors. You can run other CI tests on top of those by going to your fastcheck build on Buildkite UI (linked in the PR checks section) and unblock them. If you do not have permission to unblock, ping simon-mo or khluu to add you in our Buildkite org.

Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging.

To run CI, PR reviewers can either: Add ready label to the PR or enable auto-merge.

🚀

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request is a great improvement. It successfully migrates InternVLImagePixelInputs in nemotron_vl.py to use TensorSchema for input validation, which is consistent with the pattern used in other multi-modal models like Phi3VImagePixelInputs.

The removal of the manual _validate_pixel_values method and the adoption of a declarative TensorSchema with resolve_bindings cleans up the code, enhances maintainability, and improves input contract enforcement. The changes are clear, focused, and well-aligned with the broader goal of standardizing input validation across models.

I've reviewed the changes and they look correct and robust. I don't have any concerns. Well done!

@mgoin
Copy link
Member

mgoin commented Jul 31, 2025

Hi @bbeckca, I see you are making a lot of individual small PRs for this refactor. Would you be able to consolidate them into fewer PRs to aid review and keep CI cost down?

@bbeckca
Copy link
Contributor Author

bbeckca commented Aug 18, 2025

Hi @bbeckca, I see you are making a lot of individual small PRs for this refactor. Would you be able to consolidate them into fewer PRs to aid review and keep CI cost down?

Sorry I’m late to seeing this. That makes sense. Is there a number of models per diff you’d recommend?

@bbeckca
Copy link
Contributor Author

bbeckca commented Aug 18, 2025

Hi @bbeckca, I see you are making a lot of individual small PRs for this refactor. Would you be able to consolidate them into fewer PRs to aid review and keep CI cost down?

Sorry I’m late to seeing this. That makes sense. Is there a number of models per diff you’d recommend?

cc @DarkLight1337 @Isotr0py for any additional thoughts.

@DarkLight1337 DarkLight1337 added the ready ONLY add when PR is ready to merge/full CI is needed label Aug 18, 2025
@DarkLight1337
Copy link
Member

Let's see if the test can pass

@bbeckca
Copy link
Contributor Author

bbeckca commented Aug 18, 2025

Let's see if the test can pass

Observing some failures due to ImportError: cannot import name 'ResponseTextConfig' from 'openai.types.responses' after merging main. Will retry when it's fixed.

@DarkLight1337
Copy link
Member

You can merge after #23118

@Isotr0py Isotr0py merged commit e75f342 into vllm-project:main Aug 19, 2025
39 of 40 checks passed
princepride pushed a commit to princepride/vllm that referenced this pull request Aug 20, 2025
divakar-amd pushed a commit to divakar-amd/vllm_upstream that referenced this pull request Aug 20, 2025
cyang49 pushed a commit to cyang49/vllm that referenced this pull request Aug 20, 2025
djmmoss pushed a commit to djmmoss/vllm that referenced this pull request Aug 21, 2025
epwalsh pushed a commit to epwalsh/vllm that referenced this pull request Aug 28, 2025
xiao-llm pushed a commit to xiao-llm/vllm that referenced this pull request Aug 28, 2025
zhewenl pushed a commit to zhewenl/vllm that referenced this pull request Aug 28, 2025
mengxingkongzhouhan pushed a commit to mengxingkongzhouhan/vllm that referenced this pull request Aug 30, 2025
zhewenl pushed a commit to zhewenl/vllm that referenced this pull request Sep 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready ONLY add when PR is ready to merge/full CI is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants