class_docstr: An abstract RNNT Decoder framework, which can possibly integrate with GreedyRNNTInfer and BeamRNNTInfer classes.
  Represents the abstract RNNT Prediction/Decoder stateful network, which performs autoregressive decoding
  in order to construct the output sequence.
  
  Args:
      vocab_size: Size of the vocabulary, excluding the RNNT blank token.
      blank_idx: Index of the blank token. Can be 0 or size(vocabulary).
      blank_as_pad: Bool flag, whether to allocate an additional token in the Embedding layer
          of this module in order to treat all RNNT `blank` tokens as pad tokens, thereby letting
          the Embedding layer batch tokens more efficiently.
  
          It is mandatory to use this for certain Beam RNNT Infer methods - such as TSD, ALSD.
          It is also more efficient to use greedy batch decoding with this flag.
class_docstr_tok: ["An","abstract","RNNT","Decoder","framework",",","which","can","possibly","integrate","with","GreedyRNNTInfer","and","BeamRNNTInfer","classes",".","Represents","the","abstract","RNNT","Prediction\/Decoder","stateful","network",",","which","performs","autoregressive","decoding","in","order","to","construct","the","output","sequence",".","Args",":","vocab_size",":","Size","of","the","vocabulary",",","excluding","the","RNNT","blank","token",".","blank_idx",":","Index","of","the","blank","token",".","Can","be","0","or","size","(","vocabulary",")",".","blank_as_pad",":","Bool","flag",",","whether","to","allocate","an","additional","token","in","the","Embedding","layer","of","this","module","in","order","to","treat","all","RNNT","`","blank","`","tokens","as","pad","tokens",",","thereby","letting","the","Embedding","layer","batch","tokens","more","efficiently",".","It","is","mandatory","to","use","this","for","certain","Beam","RNNT","Infer","methods","-","such","as","TSD",",","ALSD",".","It","is","also","more","efficient","to","use","greedy","batch","decoding","with","this","flag","."]
docstr: Get decoder state from batch of states, for given id.
  
  Args:
      batch_states (list): batch of decoder states
          ([L x (B, H)], [L x (B, H)])
  
      idx (int): index to extract state from batch of states
  
  Returns:
      (tuple): decoder states for given id
          ([L x (1, H)], [L x (1, H)])
docstr_tok: ["Get","decoder","state","from","batch","of","states",",","for","given","id",".","Args",":","batch_states","(","list",")",":","batch","of","decoder","states","(","[","L","x","(","B",",","H",")","]",",","[","L","x","(","B",",","H",")","]",")","idx","(","int",")",":","index","to","extract","state","from","batch","of","states","Returns",":","(","tuple",")",":","decoder","states","for","given","id","(","[","L","x","(","1",",","H",")","]",",","[","L","x","(","1",",","H",")","]",")"]
code: def batch_select_state(
      self, batch_states: List[torch.Tensor], idx: int
  ) -> List[List[torch.Tensor]]:
      """Get decoder state from batch of states, for given id.
  
      Args:
          batch_states (list): batch of decoder states
              ([L x (B, H)], [L x (B, H)])
  
          idx (int): index to extract state from batch of states
  
      Returns:
          (tuple): decoder states for given id
              ([L x (1, H)], [L x (1, H)])
      """
      raise NotImplementedError()
  
imports: from abc import ABC, abstractmethod
  from typing import Any, Dict, List, Optional, Tuple
  import torch
  from nemo.collections.asr.parts.utils.rnnt_utils import Hypothesis
  from nemo.core import NeuralModule
label_desc: Use image node_id 7 for calling the AbstractRNNTDecoder obj's underlying member method code with example usage: obj.batch_select_state(batch_states, idx) without return types