Skip to content

[train] Use custom wheel for vllm-router for /chat/completions fix#1601

Open
SumanthRH wants to merge 2 commits into
mainfrom
use-patched-vllm-router
Open

[train] Use custom wheel for vllm-router for /chat/completions fix#1601
SumanthRH wants to merge 2 commits into
mainfrom
use-patched-vllm-router

Conversation

@SumanthRH
Copy link
Copy Markdown
Member

@SumanthRH SumanthRH commented Apr 30, 2026

What does this PR do?

Addresses the issue with /chat/completions in the new inference codepath #1591 .

The issue is that vllm-router drops extra arguments (i.e arguments not in the OpenAI spec). I made a PR to fix this: vllm-project/router#162

While we wait for a new vllm-router release, we should ensure that SkyRL integrations that rely on /chat/completions don't break because of this.

This PR moves our vllm-router dependency to use a custom wheel built with cherry-picking the fix on top of the latest release (0.1.14). Wheel is currently built just for x86_64 arch for now.

Signed-off-by: SumanthRH <sumanthrh@anyscale.com>
@SumanthRH SumanthRH marked this pull request as ready for review April 30, 2026 20:40
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

Copy link
Copy Markdown
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 introduces a custom wheel for vllm-router to resolve an issue with the /chat/completions endpoint. The review feedback points out an inconsistency: the wheel is restricted to x86_64 architectures, which may cause users on other Linux platforms (such as ARM64) to unknowingly use the buggy version from PyPI. It is recommended to use a git source or provide wheels for other architectures to ensure the fix is applied consistently across all supported platforms.

Comment thread pyproject.toml Outdated
@SumanthRH
Copy link
Copy Markdown
Member Author

SumanthRH commented May 1, 2026

It looks like the official PyPI wheel has some additional steps to package the wheel, and unfortunately the steps are not listed in the README.

Seeing the following errors on CI (inspecting the vllm-router logs):

Process vllm-router:
Traceback (most recent call last):
  File "/home/ray/anaconda3/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/home/ray/anaconda3/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ray/default/skyrl/backends/skyrl_train/inference_servers/vllm_router.py", line 44, in _run_router_with_logging
    launch_router(router_args)
  File "/home/ray/.cache/uv/builds-v0/.tmpkuayMU/lib/python3.12/site-packages/vllm_router/launch_router.py", line 52, in launch_router
    raise e
  File "/home/ray/.cache/uv/builds-v0/.tmpkuayMU/lib/python3.12/site-packages/vllm_router/launch_router.py", line 45, in launch_router
    raise RuntimeError("Rust Router is not installed")
RuntimeError: Rust Router is not installed

x
Signed-off-by: SumanthRH <sumanthrh@anyscale.com>
@SumanthRH
Copy link
Copy Markdown
Member Author

GPU CI is passing: https://github.com/NovaSky-AI/SkyRL/actions/runs/25903325504/job/76131304194?pr=1601

I believe we are good to merge. For now. Will track building a wheel for ARM64 in an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant