class_docstr: A ready-to-use Encoder-Decoder ASR model
  
  The class can be used either to run only the encoder (encode()) to extract
  features or to run the entire encoder-decoder model
  (transcribe()) to transcribe speech. The given YAML must contain the fields
  specified in the *_NEEDED[] lists.
  
  Example
  -------
  >>> from speechbrain.inference.ASR import EncoderDecoderASR
  >>> tmpdir = getfixture("tmpdir")
  >>> asr_model = EncoderDecoderASR.from_hparams(
  ...     source="speechbrain/asr-crdnn-rnnlm-librispeech",
  ...     savedir=tmpdir,
  ... )  # doctest: +SKIP
  >>> asr_model.transcribe_file("tests/samples/single-mic/example2.flac")  # doctest: +SKIP
  "MY FATHER HAS REVEALED THE CULPRIT'S NAME"
class_docstr_tok: ["A","ready-to-use","Encoder-Decoder","ASR","model","The","class","can","be","used","either","to","run","only","the","encoder","(","encode","(",")",")","to","extract","features","or","to","run","the","entire","encoder-decoder","model","(","transcribe","(",")",")","to","transcribe","speech",".","The","given","YAML","must","contain","the","fields","specified","in","the","*","_NEEDED","[","]","lists",".","Example","--","--","--","-",">",">",">","from","speechbrain.inference.ASR","import","EncoderDecoderASR",">",">",">","tmpdir","=","getfixture","(","``","tmpdir","''",")",">",">",">","asr_model","=","EncoderDecoderASR.from_hparams","(","...","source=","''","speechbrain\/asr-crdnn-rnnlm-librispeech","''",",","...","savedir=tmpdir",",","...",")","#","doctest",":","+SKIP",">",">",">","asr_model.transcribe_file","(","``","tests\/samples\/single-mic\/example2.flac","''",")","#","doctest",":","+SKIP","''","MY","FATHER","HAS","REVEALED","THE","CULPRIT","'S","NAME","''"]
docstr: Transcribes the input audio into a sequence of words
  
  The waveforms should already be in the model's desired format.
  You can call:
  ``normalized = EncoderDecoderASR.normalizer(signal, sample_rate)``
  to get a correctly converted signal in most cases.
  
  Arguments
  ---------
  wavs : torch.Tensor
      Batch of waveforms [batch, time, channels] or [batch, time]
      depending on the model.
  wav_lens : torch.Tensor
      Lengths of the waveforms relative to the longest one in the
      batch, tensor of shape [batch]. The longest one should have
      relative length 1.0 and others len(waveform) / max_length.
      Used for ignoring padding.
  
  Returns
  -------
  list
      Each waveform in the batch transcribed.
  tensor
      Each predicted token id.
docstr_tok: ["Transcribes","the","input","audio","into","a","sequence","of","words","The","waveforms","should","already","be","in","the","model","'s","desired","format",".","You","can","call",":","``","normalized","=","EncoderDecoderASR.normalizer","(","signal",",","sample_rate",")","``","to","get","a","correctly","converted","signal","in","most","cases",".","Arguments","--","--","--","--","-","wavs",":","torch.Tensor","Batch","of","waveforms","[","batch",",","time",",","channels","]","or","[","batch",",","time","]","depending","on","the","model",".","wav_lens",":","torch.Tensor","Lengths","of","the","waveforms","relative","to","the","longest","one","in","the","batch",",","tensor","of","shape","[","batch","]",".","The","longest","one","should","have","relative","length","1.0","and","others","len","(","waveform",")","\/","max_length",".","Used","for","ignoring","padding",".","Returns","--","--","--","-","list","Each","waveform","in","the","batch","transcribed",".","tensor","Each","predicted","token","id","."]
code: def transcribe_batch(self, wavs, wav_lens):
      """Transcribes the input audio into a sequence of words
  
      The waveforms should already be in the model's desired format.
      You can call:
      ``normalized = EncoderDecoderASR.normalizer(signal, sample_rate)``
      to get a correctly converted signal in most cases.
  
      Arguments
      ---------
      wavs : torch.Tensor
          Batch of waveforms [batch, time, channels] or [batch, time]
          depending on the model.
      wav_lens : torch.Tensor
          Lengths of the waveforms relative to the longest one in the
          batch, tensor of shape [batch]. The longest one should have
          relative length 1.0 and others len(waveform) / max_length.
          Used for ignoring padding.
  
      Returns
      -------
      list
          Each waveform in the batch transcribed.
      tensor
          Each predicted token id.
      """
      with torch.no_grad():
          wav_lens = wav_lens.to(self.device)
          encoder_out = self.encode_batch(wavs, wav_lens)
          if self.transducer_beam_search:
              inputs = [encoder_out]
          else:
              inputs = [encoder_out, wav_lens]
          predicted_tokens, _, _, _ = self.mods.decoder(*inputs)
          predicted_words = [
              self.tokenizer.decode_ids(token_seq)
              for token_seq in predicted_tokens
          ]
      return predicted_words, predicted_tokens
  
imports: import torch
  import sentencepiece
  import speechbrain
  from speechbrain.inference.interfaces import Pretrained
  from speechbrain.utils.fetching import fetch
  from speechbrain.utils.data_utils import split_path
label_desc: Use image node_id 4 for calling the EncoderDecoderASR obj's underlying member method code with example usage: obj.transcribe_batch(wavs, wav_lens) and returns: predicted_words,  predicted_tokens