code: def test_metamultiheadattention_meta_named_parameters(
      bias, add_bias_kv, kdim, vdim
  ):
      meta_model = MetaMultiheadAttention(
          3 * 5,
          3,
          bias=bias,
          add_bias_kv=add_bias_kv,
          kdim=kdim,
          vdim=vdim,
      )
      params = OrderedDict(meta_model.meta_named_parameters())
      param_names = set(params)
  
      if not meta_model._qkv_same_embed_dim:
          assert {
              "q_proj_weight",
              "k_proj_weight",
              "v_proj_weight",
          } <= param_names
      else:
          assert "in_proj_weight" in param_names
  
      if bias:
          {"in_proj_bias", "out_proj.bias"} <= param_names
  
      if add_bias_kv:
          assert {"bias_k", "bias_v"} <= param_names
  
      assert "out_proj.weight" in param_names
  
file_path: pytorch-meta/torchmeta/tests/modules/test_activation.py
imports: import pytest
  import numpy
  import torch
  import torch.nn
  from collections import OrderedDict
  from torchmeta.modules import MetaModule
  from torchmeta.modules.activation import MetaMultiheadAttention
label_desc: Use image node_id 3 for calling a global function with example usage: test_metamultiheadattention_meta_named_parameters(bias, add_bias_kv, kdim, vdim) without return types