Skip to content

Conversation

@andreystarenky
Copy link
Contributor

Added handling for <2 length of suppress_tokens for whisper

What does this PR do?

Encountered the following error when implementing a fine-tuned whisper model:

site-packages/transformers/models/whisper/generation_whisper.py", line 1783, in _prepare_decoder_input_ids
    prev_start_of_text = suppress_tokens[-2]
                         ~~~~~~~~~~~~~~~^^^^
IndexError: index -2 is out of bounds for dimension 0 with size 0

The current code assumes that if suppress_tokens is not None it has at least 2 elements. This throws IndexError when suppress_tokens is empty but not None (or length 1) as below:

prev_start_of_text = suppress_tokens[-2] if suppress_tokens is not None else None

I believe the initial code may have intended to check for empty list (if suppress_tokens would have worked) although this would still miss the case of length 1.

My change checks that the list is not None and has a length greater than or equal to 2 (needed to reference second last elem as per original code)

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.

My apologies if I am tagging the wrong individuals, using list from comments
Models:

Copy link
Contributor

@gante gante left a comment

Choose a reason for hiding this comment

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

LGTM, it would produce an indexing error otherwise 🤗

cc @eustlb I'm merging as this seems like a reasonable change, lmk if you think otherwise :)

@gante gante merged commit 3a02fe5 into huggingface:main Feb 25, 2025
21 checks passed
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