code: def cli_main():
      import argparse
  
      parser = argparse.ArgumentParser()
      parser.add_argument(
          "--input-file",
          type=str,
          required=True,
          help="Input filepath",
      )
      parser.add_argument(
          "--language-model-data-dir",
          type=str,
          required=True,
          help="Path to language model dataset config path",
      )
      parser.add_argument(
          "--temperature",
          type=float,
          default=0.7,
          help="Temperature: should be above 0.0",
      )
      parser.add_argument(
          "--prompt-duration-sec",
          type=float,
          default=None,
          help="Cutting prompts to a maximum duration",
      )
      parser.add_argument(
          "--output-file",
          type=str,
          help="Path where generated metadata is saved",
      )
      parser.add_argument("--seed", type=int, default=0)
      parser.add_argument(
          "--vocab-size",
          type=int,
          choices=[50, 100, 200],
          default=100,
          help="Vocabulary size used",
      )
  
      args = parser.parse_args()
  
      main(args)
  
file_path: textlesslib/examples/gslm/sample.py
imports: import logging
  import random
  from typing import Optional
  from fairseq import utils
  import numpy
  import torch
  import torchaudio
  from textless.data.speech_encoder import SpeechEncoder
  from textless.vocoders.tacotron2.vocoder import TacotronVocoder
  from sampler import UnitLanguageModelSampler
label_desc: Use image node_id 2 for calling a global function with example usage: cli_main() without return types