code: def __init__(
      self,
      embed_dim,
      ffn_dim,
      self_attn_cls,
      enc_dec_attn_cls,
      ffn_cls,
      n_head=8,
      dropout=0.1,
  ):
      super().__init__()
      self.embed_dim = embed_dim
      self.self_attn = self_attn_cls(
          embed_dim,
          n_head=n_head,
          dropout=dropout,
      )
      self.multihead_attn = enc_dec_attn_cls(
          embed_dim,
          n_head=n_head,
          dropout=dropout,
      )
      self.ffn = ffn_cls(embed_dim, ffn_dim=ffn_dim, dropout=dropout)
  
file_path: ml-ane-transformers/ane_transformers/reference/decoder.py
imports: import logging
  import copy
  import torch
  import torch.nn
  from .layer_norm import LayerNormANE
label_desc: Use image node_id 1 to create a new TransformerDecoderLayer object from inherited base classes: nn with example: obj = TransformerDecoderLayer(embed_dim, ffn_dim, _attn_cls, enc_dec_attn_cls, ffn_cls, n_head, dropout)