Skip to content

Conversation

sducouedic
Copy link
Collaborator

The continuous batching scheduler checks that the request (ie. prompt + requested tokens) would fit the max_context_len, but didn't account for the fact that the last generated token is a "free" one that doesn't need to be stored in a block

Signed-off-by: Sophie du Couédic <[email protected]>
Copy link

👋 Hi! Thank you for contributing to vLLM support on Spyre.
Just a reminder: Make sure that your code passes all the linting checks, otherwise your PR won't be able to be merged. To do so, first install the linting requirements, then run format.sh and commit the changes. This can be done with uv directly:

uv sync --frozen --group lint --active --inexact

Or this can be done with pip:

uv pip compile --group lint > requirements-lint.txt
pip install -r requirements-lint.txt
bash format.sh

Now you are good to go 🚀

@yannicks1
Copy link
Collaborator

related to #320

@yannicks1 yannicks1 marked this pull request as draft July 24, 2025 12:35
@sducouedic sducouedic changed the title [CB] fix scheduler free last token [CB] fix scheduler constraint max tokens Jul 25, 2025
yannicks1 added a commit that referenced this pull request Oct 10, 2025
We had a (known) inconsistency: Allowing the additional token in
`platform.validate_request`, but not in `scheduler.can_schedule()` (#332
would allow it in the scheduler). However, as the upstream vllm version
vllm-spyre is tied to does not currently allow the additional token,
this PR removes the inconsistency and establishes same behavior as
upstream.

Note: as soon as the upstream version tied to this repo allows the
additional token, we can revert this PR and merge #332 (along with some
unit tests).

cc @sducouedic

Signed-off-by: Yannick Schnider <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants