code: def text_to_sequence(
      sent: str,
      symbol_list: Union[str, List[str]] = "english_characters",
      phonemizer: Optional[str] = "DeepPhonemizer",
      checkpoint: Optional[str] = "./en_us_cmudict_forward.pt",
      cmudict_root: Optional[str] = "./",
  ) -> List[int]:
      r"""Converts a string of text to a sequence of IDs corresponding to the symbols in the text.
  
      Args:
          sent (str): The input sentence to convert to a sequence.
          symbol_list (str or List of string, optional): When the input is a string, available options include
              "english_characters" and "english_phonemes". When the input is a list of string, ``symbol_list`` will
              directly be used as the symbol to encode. (Default: "english_characters")
          phonemizer (str or None, optional): The phonemizer to use. Only used when ``symbol_list`` is "english_phonemes".
              Available options include "DeepPhonemizer". (Default: "DeepPhonemizer")
          checkpoint (str or None, optional): The path to the checkpoint of the phonemizer. Only used when
              ``symbol_list`` is "english_phonemes". (Default: "./en_us_cmudict_forward.pt")
          cmudict_root (str or None, optional): The path to the directory where the CMUDict dataset is found or
              downloaded. Only used when ``symbol_list`` is "english_phonemes". (Default: "./")
  
      Returns:
          List of integers corresponding to the symbols in the sentence.
  
      Examples:
          >>> text_to_sequence("hello world!", "english_characters")
          [19, 16, 23, 23, 26, 11, 34, 26, 29, 23, 15, 2]
          >>> text_to_sequence("hello world!", "english_phonemes")
          [54, 20, 65, 69, 11, 92, 44, 65, 38, 2]
      """
      if symbol_list == "english_phonemes":
          if any(
              param is None
              for param in [phonemizer, checkpoint, cmudict_root]
          ):
              raise ValueError(
                  "When `symbol_list` is 'english_phonemes', "
                  "all of `phonemizer`, `checkpoint`, and `cmudict_root` must be provided."
              )
  
      sent = unidecode(sent)  # convert to ascii
      sent = sent.lower()  # lower case
      sent = normalize_numbers(sent)  # expand numbers
      for regex, replacement in _abbreviations:  # expand abbreviations
          sent = re.sub(regex, replacement, sent)
      sent = re.sub(_whitespace_re, " ", sent)  # collapse whitespace
  
      if isinstance(symbol_list, list):
          symbols = symbol_list
      elif isinstance(symbol_list, str):
          symbols = get_symbol_list(
              symbol_list, cmudict_root=cmudict_root
          )
          if symbol_list == "english_phonemes":
              sent = word_to_phonemes(
                  sent, phonemizer=phonemizer, checkpoint=checkpoint
              )
  
      _symbol_to_id = {s: i for i, s in enumerate(symbols)}
  
      return [_symbol_to_id[s] for s in sent if s in _symbol_to_id]
  
file_path: audio/examples/pipeline_tacotron2/text/text_preprocessing.py
imports: import re
  from typing import List, Optional, Union
  from torchaudio.datasets import CMUDict
  from unidecode import unidecode
  from .numbers import normalize_numbers
label_desc: Use image node_id 3 for calling a global function with example usage: text_to_sequence(sent, symbol_list, phonemizer, checkpoint, cmudict_root) and returns: unknown