class_docstr: The Attentional RNN encoder-decoder model
  
  Arguments
  ---------
  enc: torch.nn.Module
      the encoder module
  encoder_emb: torch.nn.Module
      the encoder_embedding_module
  emb: torch.nn.Module
      the embedding module
  dec: torch.nn.Module
      the decoder module
  lin: torch.nn.Module
      the linear module
  out: torch.nn.Module
      the output layer (typically log_softmax)
  use_word_emb: bool
      whether or not to use word embedding
  bos_token: int
      the index of teh Beginning-of-Sentence token
  word_emb_enc: nn.Module
      a module to encode word embeddings
  
  
  Returns
  -------
  result: tuple
      a (p_seq, char_lens) tuple
code: def __init__(
      self,
      enc,
      encoder_emb,
      emb,
      dec,
      lin,
      out,
      bos_token=0,
      use_word_emb=False,
      word_emb_enc=None,
  ):
      super().__init__()
      self.enc = enc
      self.encoder_emb = encoder_emb
      self.emb = emb
      self.dec = dec
      self.lin = lin
      self.out = out
      self.bos_token = bos_token
      self.use_word_emb = use_word_emb
      self.word_emb_enc = word_emb_enc if use_word_emb else None
  
imports: from speechbrain.lobes.models.transformer.Transformer import TransformerInterface, get_lookahead_mask, get_key_padding_mask
  import torch
  from torch import nn
  from speechbrain.nnet.linear import Linear
  from speechbrain.nnet import normalization
label_desc: Use image node_id 1 to create a new AttentionSeq2Seq object from inherited base classes: nn with example: obj = AttentionSeq2Seq(enc, encoder_emb, emb, dec, lin, out, bos_token, use_word_emb, word_emb_enc)