Repository navigation
[llm] Upgrade vLLM to 0.31.0 - #66720
Conversation
Signed-off-by: Jeffrey Wang <jeffreywang@anyscale.com>
There was a problem hiding this comment.
Code Review
This pull request upgrades vLLM from version 0.30.0 to 0.31.0, updating lockfiles, requirements, and Docker configurations accordingly, and removes the Pixtral transformers patch. It also updates the tokenizer initialization to support new vLLM arguments: trust_request_mm_kwargs and tool_strict_level. The feedback recommends defensively mocking the new tool_strict_level attribute on hand-built OnlineRenderer instances in the test files to prevent potential AttributeErrors, similar to how trust_request_mm_kwargs was mocked.
| online_renderer.OnlineRenderer | ||
| ) | ||
| renderer.renderer = Renderer() | ||
| renderer.trust_request_mm_kwargs = False |
There was a problem hiding this comment.
Since tool_strict_level is also a new attribute introduced in vLLM 0.31.0's OnlineRenderer, we should defensively mock it on this hand-built OnlineRenderer instance to prevent potential AttributeErrors when rendering chat/tools.
renderer.trust_request_mm_kwargs = False
renderer.tool_strict_level = "off"| online_renderer.OnlineRenderer | ||
| ) | ||
| renderer.renderer = Renderer() | ||
| renderer.trust_request_mm_kwargs = False |
There was a problem hiding this comment.
Since tool_strict_level is also a new attribute introduced in vLLM 0.31.0's OnlineRenderer, we should defensively mock it on this hand-built OnlineRenderer instance to prevent potential AttributeErrors when rendering chat/tools.
| renderer.trust_request_mm_kwargs = False | |
| renderer.trust_request_mm_kwargs = False | |
| renderer.tool_strict_level = "off" |
| request.build_chat_params = lambda *args: ChatParams() | ||
| renderer = online_renderer.OnlineRenderer.__new__(online_renderer.OnlineRenderer) | ||
| renderer.renderer = Renderer() | ||
| renderer.trust_request_mm_kwargs = False |
There was a problem hiding this comment.
Since tool_strict_level is also a new attribute introduced in vLLM 0.31.0's OnlineRenderer, we should defensively mock it on this hand-built OnlineRenderer instance to prevent potential AttributeErrors when rendering chat/tools.
renderer.trust_request_mm_kwargs = False
renderer.tool_strict_level = "off"Signed-off-by: Jeffrey Wang <jeffreywang@anyscale.com>
|
Running release tests with A10 instead. AWS is running out of L4 capacities.
-> No luck with A10 either :( |
|
Trying with another H100 pool: https://buildkite.com/ray-project/release/builds/109824/table (can't provision necessary IAM permissions) |
|
Another try -- |
|
I ran release tests with the usual setup which acquires on-demand AWS L4 instances and with our H100 pool (but missing some credentials). None of the failures in either run are related to this PR, and the union of passed tests across both runs covers all tests. Why did I run with two different setups? AWS is suffering from insufficient L4/A10 capacities.
|
|
That said, this PR is ready to merge despite the release test failures. I reran the tests on a separate H100 pool and verified that every test passes in at least one of the two environments (ref). I haven't run the |
There was a problem hiding this comment.
Should we move this to the Ray Serve LLM index docs page instead
There was a problem hiding this comment.
sounds good given that lots of people are asking for it, will do in a separate PR
| prometheus-fastapi-instrumentator>=8.0.0 # for starlette v1.0.1+ | ||
| # Keep NIXL in sync with vLLM's kv_connectors requirements. | ||
| # https://github.com/vllm-project/vllm/blob/v0.30.0/requirements/kv_connectors.txt#L4 | ||
| # https://github.com/vllm-project/vllm/blob/v0.31.0/requirements/kv_connectors.txt#L4 |
There was a problem hiding this comment.
apparently claude didn't look at the source code. anyway, I'd rather not rerun premerge since it took 30 hours just to acquire a GPU instance last time...
| :::{tab-item} Server | ||
| :sync: server | ||
|
|
||
| ```python |
There was a problem hiding this comment.
Is there a blocker to making this a doctest
There was a problem hiding this comment.
i'll convert all code snippets in this page to doc tests in a follow-up


Description
As title.
trust_request_mm_kwargsandtool_strict_levelfrontend args toOnlineRenderer.OnlineRenderermocks for 0.31.0; add a direct-streaming release test for DiffusionGemma structured reads ([Core] structured generation mode for DiffusionGemma model (Jev-like) vllm-project/vllm#57250).