class_docstr: A beam CTC decoder.
  
  Provides a common abstraction for sample level beam decoding.
  
  Args:
      blank_id: int, index of the blank token. Can be 0 or len(vocabulary).
      beam_size: int, size of the beam used in the underlying beam search engine.
class_docstr_tok: ["A","beam","CTC","decoder",".","Provides","a","common","abstraction","for","sample","level","beam","decoding",".","Args",":","blank_id",":","int",",","index","of","the","blank","token",".","Can","be","0","or","len","(","vocabulary",")",".","beam_size",":","int",",","size","of","the","beam","used","in","the","underlying","beam","search","engine","."]
docstr: Returns a list of hypotheses given an input batch of the encoder hidden embedding.
  Output token is generated auto-repressively.
  
  Args:
      decoder_output: A tensor of size (batch, timesteps, features) or (batch, timesteps) (each timestep is a label).
      decoder_lengths: list of int representing the length of each sequence
          output sequence.
  
  Returns:
      packed list containing batch number of sentences (Hypotheses).
docstr_tok: ["Returns","a","list","of","hypotheses","given","an","input","batch","of","the","encoder","hidden","embedding",".","Output","token","is","generated","auto-repressively",".","Args",":","decoder_output",":","A","tensor","of","size","(","batch",",","timesteps",",","features",")","or","(","batch",",","timesteps",")","(","each","timestep","is","a","label",")",".","decoder_lengths",":","list","of","int","representing","the","length","of","each","sequence","output","sequence",".","Returns",":","packed","list","containing","batch","number","of","sentences","(","Hypotheses",")","."]
code: def forward(
      self,
      decoder_output: torch.Tensor,
      decoder_lengths: torch.Tensor,
  ) -> Tuple[
      List[Union[rnnt_utils.Hypothesis, rnnt_utils.NBestHypotheses]]
  ]:
      """Returns a list of hypotheses given an input batch of the encoder hidden embedding.
      Output token is generated auto-repressively.
  
      Args:
          decoder_output: A tensor of size (batch, timesteps, features) or (batch, timesteps) (each timestep is a label).
          decoder_lengths: list of int representing the length of each sequence
              output sequence.
  
      Returns:
          packed list containing batch number of sentences (Hypotheses).
      """
      raise NotImplementedError()
  
imports: import math
  import os
  from dataclasses import dataclass, field
  from typing import List, Optional, Tuple, Union
  import torch
  from nemo.collections.asr.parts.utils import rnnt_utils
  from nemo.collections.common.tokenizers.tokenizer_spec import TokenizerSpec
  from nemo.core.classes import Typing, typecheck
  from nemo.core.neural_types import HypothesisType, LengthsType, LogprobsType, NeuralType
  from nemo.utils import logging
label_desc: Use image node_id 7 for calling the AbstractBeamCTCInfer obj's underlying member method code with example usage: obj.forward(decoder_output, decoder_lengths) without return types