Skip to content

[pagged-attention] fix off-by-1 error in pagged attention generation #39258

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

Merged
merged 4 commits into from
Jul 8, 2025

Conversation

kashif
Copy link
Contributor

@kashif kashif commented Jul 7, 2025

What does this PR do?

we were adding the token first and then doing a check, leading to the number of tokens being 1 more than themax_new_tokens

This fix reorders the logic to:

  1. Check completion conditions (EOS token or max length) before adding the token
  2. Only add the token if we haven't exceeded the limit (with special handling for EOS tokens)
  3. Terminate the request appropriately

Before submitting

  • This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
  • Did you read the contributor guideline,
    Pull Request section?
  • Was this discussed/approved via a Github issue or the forum? Please add a link
    to it if that's the case.
  • Did you make sure to update the documentation with your changes? Here are the
    documentation guidelines, and
    here are tips on formatting docstrings.
  • Did you write any new necessary tests?

Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

@kashif kashif requested a review from ArthurZucker July 7, 2025 16:22
@HuggingFaceDocBuilderDev

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

Copy link
Collaborator

@ArthurZucker ArthurZucker left a comment

Choose a reason for hiding this comment

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

Thanks for updating! 🤗

@kashif kashif merged commit db05e4f into huggingface:main Jul 8, 2025
25 checks passed
@kashif kashif deleted the paged-attention-max-gen branch July 8, 2025 10:34
@kashif kashif added the for patch Tag issues / labels that should be included in the next patch label Jul 11, 2025
Cyrilvallez pushed a commit that referenced this pull request Jul 11, 2025
…39258)

* fix off-by-1 error in pagged attention generation

* formatting

* use update_with_token
rjgleaton pushed a commit to rjgleaton/transformers that referenced this pull request Jul 17, 2025
…uggingface#39258)

* fix off-by-1 error in pagged attention generation

* formatting

* use update_with_token
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
for patch Tag issues / labels that should be included in the next patch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants