Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[V1] V1 Enablement Oracle #13726

Merged
merged 235 commits into from
Mar 15, 2025
Merged

[V1] V1 Enablement Oracle #13726

merged 235 commits into from
Mar 15, 2025

Conversation

robertgshaw2-redhat
Copy link
Collaborator

@robertgshaw2-redhat robertgshaw2-redhat commented Feb 23, 2025

SUMMARY:

  • adds oracle for V1 feature enablement
  • removes usage of envs.VLLM_USE_V1 from code base (now only used in tests + in oracle)
  • enables V1 by default

BEHAVIOR

# * If VLLM_USE_V1 is unset, we enable V1 for "supported features"
#   and fall back to V0 for experimental or unsupported features.
# * If VLLM_USE_V1=1, we enable V1 for supported + experimental
#   features and raise error for unsupported features.
# * If VLLM_USE_V1=0, we disable V1.

UX:

  • if the user specifies .from_vllm_config, we can autodetect the engine and it works nicely
from vllm.engine.async_llm_engine import AsyncLLMEngine
args = AsyncEngineArgs(...)

# sets VLLM_USE_V1 to 0 or 1 if unset by the user
config = args.create_engine_config() 

# autoselects V1 engine if VLLM_USE_V1 is 1
async_llm_engine = AsyncLLMEngine.from_vllm_config(config, ...)
  • if the user uses AsyncLLMEngine.__init__() this will not work
from vllm.engine.async_llm_engine import AsyncLLMEngine
args = AsyncEngineArgs(...)

# sets VLLM_USE_V1 to 0 or 1 if unset by the user
config = args.create_engine_config()

# this uses the V0 constructor, raises ValueError
async_llm_engine = AsyncLLMEngine(config, ...)

# >> raise ValueError(
# >>                "Using V1 LLMEngine, but envs.VLLM_USE_V1=True. "
# >>                "This should not happen. As a workaround, try using "
# >>                "LLMEngine.from_vllm_config(...) or explicitly set "
# >>                "VLLM_USE_V1=0 or 1 and report this issue on Github.")

TODOs:

  • get CI green

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
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.

🚀

rshaw@neuralmagic.com added 2 commits February 23, 2025 20:55

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
@mergify mergify bot added the frontend label Feb 23, 2025
rshaw@neuralmagic.com added 25 commits February 23, 2025 22:42
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
udpated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
update

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
update
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
update

Unverified

This user has not yet uploaded their public signing key.
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
cleaning
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
cleaning
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
rshaw@neuralmagic.com added 3 commits March 14, 2025 14:57
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Copy link

mergify bot commented Mar 14, 2025

This pull request has merge conflicts that must be resolved before it can be
merged. Please rebase the PR, @robertgshaw2-redhat.

https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

@mergify mergify bot added the needs-rebase label Mar 14, 2025
updated
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
@mergify mergify bot removed the needs-rebase label Mar 14, 2025
rshaw@neuralmagic.com added 8 commits March 14, 2025 17:29
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
Signed-off-by: rshaw@neuralmagic.com <rshaw@neuralmagic.com>
@simon-mo
Copy link
Collaborator

from rob

openai tool use --> looks like a numerics issue. We are comparing against a golden string
I will post a PR in the AM to update the golden string
extended models --> this fails on main

@simon-mo simon-mo merged commit d4d93db into main Mar 15, 2025
60 of 64 checks passed
@simon-mo simon-mo deleted the v1-default branch March 15, 2025 05:02
@DarkLight1337
Copy link
Member

Nice work!

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 multi-modality Related to multi-modality (#4194) ready ONLY add when PR is ready to merge/full CI is needed speculative-decoding structured-output v1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet