code: def add_custom_encoder_arguments(
      group: _ArgumentGroup,
  ) -> _ArgumentGroup:
      """Define arguments for Custom encoder."""
      group.add_argument(
          "--enc-block-arch",
          type=eval,
          action="append",
          default=None,
          help="Encoder architecture definition by blocks",
      )
      group.add_argument(
          "--enc-block-repeat",
          default=1,
          type=int,
          help="Repeat N times the provided encoder blocks if N > 1",
      )
      group.add_argument(
          "--custom-enc-input-layer",
          type=str,
          default="conv2d",
          choices=["conv2d", "vgg2l", "linear", "embed"],
          help="Custom encoder input layer type",
      )
      group.add_argument(
          "--custom-enc-input-dropout-rate",
          type=float,
          default=0.0,
          help="Dropout rate of custom encoder input layer",
      )
      group.add_argument(
          "--custom-enc-input-pos-enc-dropout-rate",
          type=float,
          default=0.0,
          help="Dropout rate of positional encoding in custom encoder input layer",
      )
      group.add_argument(
          "--custom-enc-positional-encoding-type",
          type=str,
          default="abs_pos",
          choices=["abs_pos", "scaled_abs_pos", "rel_pos"],
          help="Custom encoder positional encoding layer type",
      )
      group.add_argument(
          "--custom-enc-self-attn-type",
          type=str,
          default="self_attn",
          choices=["self_attn", "rel_self_attn"],
          help="Custom encoder self-attention type",
      )
      group.add_argument(
          "--custom-enc-pw-activation-type",
          type=str,
          default="relu",
          choices=["relu", "hardtanh", "selu", "swish"],
          help="Custom encoder pointwise activation type",
      )
      group.add_argument(
          "--custom-enc-conv-mod-activation-type",
          type=str,
          default="swish",
          choices=["relu", "hardtanh", "selu", "swish"],
          help="Custom encoder convolutional module activation type",
      )
  
      return group
  
file_path: espnet/espnet/nets/pytorch_backend/transducer/arguments.py
imports: import ast
  from argparse import _ArgumentGroup
  from distutils.util import strtobool
label_desc: Use image node_id 3 for calling a global function with example usage: add_custom_encoder_arguments(group) and returns: group