code: def get_parser():
      parser = argparse.ArgumentParser(
          description="Launch distributed process with appropriate options. ",
          formatter_class=argparse.ArgumentDefaultsHelpFormatter,
      )
      parser.add_argument(
          "--cmd",
          help="The path of cmd script of Kaldi: run.pl. queue.pl, or slurm.pl",
          default="utils/run.pl",
      )
      parser.add_argument(
          "--log",
          help="The path of log file used by cmd",
          default="run.log",
      )
      parser.add_argument(
          "--max_num_log_files",
          help="The maximum number of log-files to be kept",
          default=1000,
      )
      parser.add_argument(
          "--ngpu",
          type=int,
          default=1,
          help="The number of GPUs per node",
      )
      egroup = parser.add_mutually_exclusive_group()
      egroup.add_argument(
          "--num_nodes", type=int, default=1, help="The number of nodes"
      )
      egroup.add_argument(
          "--host",
          type=str,
          default=None,
          help="Directly specify the host names.  The job are submitted via SSH. "
          "Multiple host names can be specified by splitting by comma. e.g. host1,host2"
          " You can also the device id after the host name with ':'. e.g. "
          "host1:0:2:3,host2:0:2. If the device ids are specified in this way, "
          "the value of --ngpu is ignored.",
      )
      parser.add_argument(
          "--envfile",
          type=str_or_none,
          default="path.sh",
          help="Source the shell script before executing command. "
          "This option is used when --host is specified.",
      )
  
      parser.add_argument(
          "--multiprocessing_distributed",
          type=str2bool,
          default=True,
          help="Distributed method is used when single-node mode.",
      )
      parser.add_argument(
          "--master_port",
          type=int,
          default=None,
          help="Specify the port number of master"
          "Master is a host machine has RANK0 process.",
      )
      parser.add_argument(
          "--master_addr",
          type=str,
          default=None,
          help="Specify the address s of master. "
          "Master is a host machine has RANK0 process.",
      )
      parser.add_argument(
          "--init_file_prefix",
          type=str,
          default=".dist_init_",
          help="The file name prefix for init_file, which is used for "
          "'Shared-file system initialization'. "
          "This option is used when --port is not specified",
      )
      parser.add_argument("args", type=str, nargs="+")
      return parser
  
file_path: espnet/espnet2/bin/launch.py
imports: import argparse
  import logging
  import os
  import shlex
  import shutil
  import subprocess
  import sys
  import uuid
  from pathlib import Path
  from espnet2.utils.types import str2bool, str_or_none
  from espnet.utils.cli_utils import get_commandline_args
label_desc: Use image node_id 1 for calling a global function with example usage: get_parser() and returns: parser