Skip to content

Commit

Permalink
Update decoding.py
Browse files Browse the repository at this point in the history
Following the suggestions of @Jeronymous in openai#914 and openai#924, it solves the problem of endless loop.
  • Loading branch information
FernanOrtega committed Mar 27, 2023
1 parent 6dea21f commit fc181e9
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions whisper/decoding.py
Original file line number Diff line number Diff line change
Expand Up @@ -470,6 +470,13 @@ def apply(self, logits: Tensor, tokens: Tensor):
if timestamps.numel() > 0:
# timestamps shouldn't decrease; forbid timestamp tokens smaller than the last
logits[k, self.tokenizer.timestamp_begin : timestamps[-1]] = -np.inf

# to force that timestamps are strictly increasing
if last_was_timestamp and not penultimate_was_timestamp:
timestamp_last = timestamps[-1]
else:
timestamp_last = timestamps[-1] + 1
logits[k, self.tokenizer.timestamp_begin: timestamp_last] = -np.inf

if tokens.shape[1] == self.sample_begin:
# suppress generating non-timestamp tokens at the beginning
Expand Down

0 comments on commit fc181e9

Please sign in to comment.