code: def forward(self, decoder_state, source_hids, src_lengths):
      """
      Input
          decoder_state: bsz x decoder_hidden_state_dim
          source_hids: srclen x bsz x context_dim
          src_lengths: bsz x 1, actual sequence lengths
      Output
          output: bsz x context_dim
          attn_scores: max_src_len x bsz
      """
      raise NotImplementedError
  
imports: import torch.nn
label_desc: Use image node_id 2 for calling the BaseAttention obj's underlying member method code with example usage: obj.forward(decoder_state, source_hids, src_lengths) without return types