docstr: Input types definitions for CTCLoss.
          
docstr_tok: ["Input","types","definitions","for","CTCLoss","."]
code: def input_types(self):
      """Input types definitions for CTCLoss."""
      return {
          "log_probs": NeuralType(("B", "T", "T", "D"), LogprobsType()),
          "targets": NeuralType(("B", "T"), LabelsType()),
          "input_lengths": NeuralType(tuple("B"), LengthsType()),
          "target_lengths": NeuralType(tuple("B"), LengthsType()),
      }
  
imports: import inspect
  import operator
  from dataclasses import dataclass
  from typing import Any, Callable, Dict, List, Optional, Set
  import torch
  from omegaconf import DictConfig, OmegaConf
  from nemo.collections.asr.losses.rnnt_pytorch import MultiblankRNNTLossPytorch, RNNTLossPytorch, TDTLossPytorch
  from nemo.core.classes import Loss, typecheck
  from nemo.core.neural_types import LabelsType, LengthsType, LogprobsType, LossType, NeuralType
  from nemo.core.utils import numba_utils
  from nemo.core.utils.k2_utils import K2_INSTALLATION_MESSAGE
  from nemo.core.utils.numba_utils import NUMBA_INSTALLATION_MESSAGE
  from nemo.utils import logging, logging_mode, model_utils
label_desc: Use image node_id 1 for calling the RNNTLoss obj's underlying member method code with example usage: obj.input_types() and returns: dict