Skip to content

[CI] Sync test dependency with test.in for torch nightly#19632

Merged
vllm-bot merged 23 commits intovllm-project:mainfrom
yangw-dev:synctestdependency
Jun 27, 2025
Merged

[CI] Sync test dependency with test.in for torch nightly#19632
vllm-bot merged 23 commits intovllm-project:mainfrom
yangw-dev:synctestdependency

Conversation

@yangw-dev
Copy link
Collaborator

@yangw-dev yangw-dev commented Jun 14, 2025

Description

test dependency in nightly_torch_test.txt is in sync with test.txt

Why not generate the nightly_torch_test.txt directly from modified test.in ?

Unfortunately, even remove the torch dependencies from test.in, pip-compile still aim to install torch stable version.
This is a workaround.

Details

  • Set up pre-commit & script to convert test.in to torch_nightly_test.txt if any changes detected
  • using pre-commit to check and auto-generate the requirement txt.
  • a test is added to make sure the generated txt does not include torch package that override torch back to stable.

What happen if override happen?

the test fails

Most cases, it means the package needs to build from source with torch nightly, a short-term solution is to ask user to put the packge in the keywords list in pre-commit script tools/generate_nightly_torch_test.py, we comment the guidance in the added test if the mismatch happens

tools/generate_nightly_torch_test.py

Currently four dependency are removed from test.in
["torch", "torchaudio", "torchvision", "mamba_ssm"]
the mamba_ssm seems causes build wheel failure, more investigation is needed, for now it's considered safe since no torch_nightly tests are dependent on it.

@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.

Summary of Changes

Hello @yangw-dev, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request streamlines test dependency management by introducing an automated process to separate torch and mamba-related requirements from the core test dependencies. A new script handles the filtering and file generation, and a pre-commit hook ensures these files stay synchronized with the primary dependency list (requirements/test.in).

Highlights

  • Dependency Management Automation: I've introduced a new Python script (tools/generate_nightly_torch_test.py) designed to automate the management of test dependencies by filtering the main requirements/test.in file.
  • Dependency Separation: Torch and mamba-specific test dependencies are now separated from the main list and placed into a new file (torch_nightly_test.txt). The remaining dependencies from test.in are written to requirements/nightly_torch_test.txt.
  • Pre-commit Integration: The new dependency generation script has been integrated into the pre-commit hooks. This ensures that requirements/nightly_torch_test.txt and torch_nightly_test.txt are automatically updated whenever requirements/test.in is changed.
  • Dependency Updates: I've updated and refined the list of test dependencies within requirements/test.in and the resulting generated files, including adding and removing several packages and updating version specifiers.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configureGemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@mergify mergify bot added the ci/build label Jun 14, 2025
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 PR introduces a new system for managing PyTorch dependencies for nightly tests, using tools/generate_nightly_torch_test.py to separate packages from requirements/test.in into torch_nightly_test.txt and requirements/nightly_torch_test.txt. Please update the PR title to accurately reflect the changes (e.g., "Refactor nightly test dependencies for PyTorch"), and fill out the PR description with the purpose of these changes, any testing performed, and results. There's a removal of vector_quantize_pytorch from requirements/test.in; confirm if this is intended.

yangw-dev and others added 6 commits June 13, 2025 18:53
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yida Wu <yidawu@alumni.cmu.edu>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Cyrus Leung <cyrus.tl.leung@gmail.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
…#19624)

Signed-off-by: Nick Hill <nhill@redhat.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
@yangw-dev yangw-dev force-pushed the synctestdependency branch from e58722c to e649cd6 Compare June 14, 2025 01:53
@mergify mergify bot added the v1 label Jun 14, 2025
Copy link
Collaborator

@houseroad houseroad left a comment

Choose a reason for hiding this comment

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

Could you fill the PR description with some details? :-)

Signed-off-by: Yang Wang <elainewy@meta.com>
@yangw-dev yangw-dev changed the title final Sync test dependency with test.in for torch nightly Jun 14, 2025
@yangw-dev yangw-dev requested a review from zou3519 June 14, 2025 02:15
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
@yangw-dev yangw-dev marked this pull request as ready for review June 14, 2025 03:05
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
@aarnphm aarnphm enabled auto-merge (squash) June 25, 2025 06:15
@aarnphm aarnphm changed the title Sync test dependency with test.in for torch nightly [CI] Sync test dependency with test.in for torch nightly Jun 25, 2025
auto-merge was automatically disabled June 26, 2025 21:52

Head branch was pushed to by a user without write access

@yangw-dev yangw-dev force-pushed the synctestdependency branch from 7196a9d to d63c6ac Compare June 26, 2025 21:52
@vllm-bot vllm-bot merged commit 8b64c89 into vllm-project:main Jun 27, 2025
95 of 100 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci/build documentation Improvements or additions to documentation frontend llama Related to Llama models multi-modality Related to multi-modality (#4194) performance Performance-related issues qwen Related to Qwen models ready ONLY add when PR is ready to merge/full CI is needed rocm Related to AMD ROCm speculative-decoding structured-output v1

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

8 participants