class_docstr: Constructs a Wav2Vec2PhonemeCTC tokenizer.
  
  This tokenizer inherits from [`PreTrainedTokenizer`] which contains some of the main methods. Users should refer to
  the superclass for more information regarding such methods.
  
  Args:
      vocab_file (`str`):
          File containing the vocabulary.
      bos_token (`str`, *optional*, defaults to `"<s>"`):
          The beginning of sentence token.
      eos_token (`str`, *optional*, defaults to `"</s>"`):
          The end of sentence token.
      unk_token (`str`, *optional*, defaults to `"<unk>"`):
          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.
      pad_token (`str`, *optional*, defaults to `"<pad>"`):
          The token used for padding, for example when batching sequences of different lengths.
      do_phonemize (`bool`, *optional*, defaults to `True`):
          Whether the tokenizer should phonetize the input or not. Only if a sequence of phonemes is passed to the
          tokenizer, `do_phonemize` should be set to `False`.
      phonemizer_lang (`str`, *optional*, defaults to `"en-us"`):
          The language of the phoneme set to which the tokenizer should phonetize the input text to.
      phonemizer_backend (`str`, *optional*. defaults to `"espeak"`):
          The backend phonetization library that shall be used by the phonemizer library. Defaults to `espeak-ng`.
          See the [phonemizer package](https://github.com/bootphon/phonemizer#readme). for more information.
  
      **kwargs
          Additional keyword arguments passed along to [`PreTrainedTokenizer`]
code: def __init__(
      self,
      vocab_file,
      bos_token="<s>",
      eos_token="</s>",
      unk_token="<unk>",
      pad_token="<pad>",
      phone_delimiter_token=" ",
      word_delimiter_token=None,
      do_phonemize=True,
      phonemizer_lang="en-us",
      phonemizer_backend="espeak",
      **kwargs,
  ):
      self._word_delimiter_token = word_delimiter_token
      self._phone_delimiter_token = phone_delimiter_token
      self.do_phonemize = do_phonemize
      self.phonemizer_lang = phonemizer_lang
      self.phonemizer_backend = phonemizer_backend
  
      if do_phonemize:
          self.init_backend(self.phonemizer_lang)
  
      with open(vocab_file, encoding="utf-8") as vocab_handle:
          self.encoder = json.load(vocab_handle)
      self.decoder = {v: k for k, v in self.encoder.items()}
  
      super().__init__(
          unk_token=unk_token,
          bos_token=bos_token,
          eos_token=eos_token,
          pad_token=pad_token,
          word_delimiter_token=word_delimiter_token,
          phone_delimiter_token=phone_delimiter_token,
          do_phonemize=do_phonemize,
          phonemizer_lang=phonemizer_lang,
          phonemizer_backend=phonemizer_backend,
          **kwargs,
      )
  
imports: import json
  import os
  import sys
  from dataclasses import dataclass
  from itertools import groupby
  from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
  import numpy
  from ...tokenization_utils import PreTrainedTokenizer
  from ...tokenization_utils_base import AddedToken
  from ...utils import ModelOutput, is_flax_available, is_tf_available, is_torch_available, logging, requires_backends, to_py_obj
label_desc: Use image node_id 1 to create a new Wav2Vec2PhonemeCTCTokenizer object from inherited base classes: PreTrainedTokenizer with example: obj = Wav2Vec2PhonemeCTCTokenizer(vocab_file, bos_token, eos_token, unk_token, pad_token, phone_delimiter_token, word_delimiter_token, do_phonemize, phonemizer_lang, phonemizer_backend)