class_docstr: Construct a "fast" Whisper tokenizer (backed by HuggingFace's *tokenizers* library).
  
  This tokenizer inherits from [`PreTrainedTokenizerFast`] which contains most of the main methods. Users should
  refer to this superclass for more information regarding those methods.
  
  Args:
      vocab_file (`str`, *optional*):
          Path to the vocabulary file.
      merges_file (`str`, *optional*):
          Path to the merges file.
      normalizer_file (`str`, *optional*):
          Path to the normalizer_file file.
      tokenizer_file (`str`, *optional*):
          Path to [tokenizers](https://github.com/huggingface/tokenizers) file (generally has a .json extension) that
          contains everything needed to load the tokenizer.
      unk_token (`str`, *optional*, defaults to `"<|endoftext|>"`):
          The unknown token. A token that is not in the vocabulary cannot be converted to an ID and is set to be this
          token instead.
      bos_token (`str`, *optional*, defaults to `"<|endoftext|>"`):
          The beginning of sequence token. The `decoder_start_token_id` is used to set the first token as
          `"<|startoftranscript|>"` when generating.
      eos_token (`str`, *optional*, defaults to `"<|endoftext|>"`):
          The end of sequence token.
      add_prefix_space (`bool`, *optional*, defaults to `False`):
          Whether or not to add an initial space to the input. This allows to treat the leading word just as any
          other word. (Whisper tokenizer detect beginning of words by the preceding space).
      language (`str`, *optional*):
          The language of the transcription text. The corresponding language id token is appended to the start of the
          sequence for multilingual speech recognition and speech translation tasks, e.g. for Spanish the token
          `"<|es|>"` is appended to the start of sequence. This should be used for multilingual fine-tuning only.
      task (`str`, *optional*):
          Task identifier to append at the start of sequence (if any). This should be used for mulitlingual
          fine-tuning, with `"transcribe"` for speech recognition and `"translate"` for speech translation.
      predict_timestamps (`bool`, *optional*, defaults to `False`):
          Whether to omit the `<|notimestamps|>` token at the start of the sequence.
class_docstr_tok: ["Construct","a","``","fast","''","Whisper","tokenizer","(","backed","by","HuggingFace","'s","*","tokenizers","*","library",")",".","This","tokenizer","inherits","from","[","`","PreTrainedTokenizerFast","`","]","which","contains","most","of","the","main","methods",".","Users","should","refer","to","this","superclass","for","more","information","regarding","those","methods",".","Args",":","vocab_file","(","`","str","`",",","*","optional","*",")",":","Path","to","the","vocabulary","file",".","merges_file","(","`","str","`",",","*","optional","*",")",":","Path","to","the","merges","file",".","normalizer_file","(","`","str","`",",","*","optional","*",")",":","Path","to","the","normalizer_file","file",".","tokenizer_file","(","`","str","`",",","*","optional","*",")",":","Path","to","[","tokenizers","]","(","https",":","\/\/github.com\/huggingface\/tokenizers",")","file","(","generally","has","a",".json","extension",")","that","contains","everything","needed","to","load","the","tokenizer",".","unk_token","(","`","str","`",",","*","optional","*",",","defaults","to","`","``","<","|endoftext|",">","''","`",")",":","The","unknown","token",".","A","token","that","is","not","in","the","vocabulary","can","not","be","converted","to","an","ID","and","is","set","to","be","this","token","instead",".","bos_token","(","`","str","`",",","*","optional","*",",","defaults","to","`","``","<","|endoftext|",">","''","`",")",":","The","beginning","of","sequence","token",".","The","`","decoder_start_token_id","`","is","used","to","set","the","first","token","as","`","``","<","|startoftranscript|",">","''","`","when","generating",".","eos_token","(","`","str","`",",","*","optional","*",",","defaults","to","`","``","<","|endoftext|",">","''","`",")",":","The","end","of","sequence","token",".","add_prefix_space","(","`","bool","`",",","*","optional","*",",","defaults","to","`","False","`",")",":","Whether","or","not","to","add","an","initial","space","to","the","input",".","This","allows","to","treat","the","leading","word","just","as","any","other","word",".","(","Whisper","tokenizer","detect","beginning","of","words","by","the","preceding","space",")",".","language","(","`","str","`",",","*","optional","*",")",":","The","language","of","the","transcription","text",".","The","corresponding","language","id","token","is","appended","to","the","start","of","the","sequence","for","multilingual","speech","recognition","and","speech","translation","tasks",",","e.g",".","for","Spanish","the","token","`","``","<","|es|",">","''","`","is","appended","to","the","start","of","sequence",".","This","should","be","used","for","multilingual","fine-tuning","only",".","task","(","`","str","`",",","*","optional","*",")",":","Task","identifier","to","append","at","the","start","of","sequence","(","if","any",")",".","This","should","be","used","for","mulitlingual","fine-tuning",",","with","`","``","transcribe","''","`","for","speech","recognition","and","`","``","translate","''","`","for","speech","translation",".","predict_timestamps","(","`","bool","`",",","*","optional","*",",","defaults","to","`","False","`",")",":","Whether","to","omit","the","`","<","|notimestamps|",">","`","token","at","the","start","of","the","sequence","."]
code: def _strip_prompt(
      token_ids: List[int],
      prompt_token_id: int,
      decoder_start_token_id: int,
  ):
      has_prompt = (
          isinstance(token_ids, list)
          and token_ids
          and token_ids[0] == prompt_token_id
      )
      if has_prompt:
          if decoder_start_token_id in token_ids:
              return token_ids[
                  token_ids.index(decoder_start_token_id) :
              ]
          else:
              return []
  
      return token_ids
  
imports: import json
  import os
  import re
  from functools import lru_cache
  from typing import List, Optional, Tuple
  import numpy
  from tokenizers import AddedToken, pre_tokenizers, processors
  from ...tokenization_utils_base import BatchEncoding
  from ...tokenization_utils_fast import PreTrainedTokenizerFast
  from ...utils import logging
  from .english_normalizer import BasicTextNormalizer, EnglishTextNormalizer
  from .tokenization_whisper import LANGUAGES, TASK_IDS, TO_LANGUAGE_CODE, WhisperTokenizer, _decode_asr
label_desc: Use image node_id 22 for calling the WhisperTokenizerFast obj's underlying member method code with example usage: obj._strip_prompt(token_ids, prompt_token_id, decoder_start_token_id) and returns: token_ids, token_ids, list