code: def test_asr_forward_unfrozen_adapters(self, model, name):
      model.eval()
      original_num_params = model.num_weights
  
      dim = 10
      model.add_adapter(name=name, cfg=get_adapter_cfg(dim=dim))
      model.freeze()
      model.unfreeze_enabled_adapters()
  
      assert original_num_params == 5443
  
      original_params = 0
      adapter_params = 0
      for name, param in model.named_parameters():
          if "adapter" not in name:
              assert param.requires_grad is False
              original_params += param.numel()
          else:
              assert param.requires_grad is True
              adapter_params += param.numel()
  
      for mname, module in model.named_modules():
          if isinstance(
              module,
              (
                  torch.nn.BatchNorm1d,
                  torch.nn.BatchNorm2d,
                  torch.nn.BatchNorm3d,
              ),
          ):
              assert module.track_running_stats is False
  
      assert original_params > adapter_params
  
imports: import pytest
  import torch
  from omegaconf import DictConfig, ListConfig, OmegaConf
  from nemo.collections.asr.models import ASRModel, EncDecCTCModel, EncDecRNNTModel
  from nemo.collections.asr.parts.submodules.adapters import multi_head_attention_adapter_module
  from nemo.collections.asr.parts.utils import adapter_utils
  from nemo.collections.common.parts import adapter_modules
  from nemo.core.classes.mixins.access_mixins import AccessMixin
  from nemo.core.classes.mixins.adapter_mixins import AdapterModuleMixin, get_registered_adapter
  from nemo.core.utils import numba_utils
  from nemo.core.utils.numba_utils import __NUMBA_MINIMUM_VERSION__
  from nemo.utils import config_utils, model_utils
label_desc: Use image node_id 18 for calling the TestASRAdapterMixin obj's underlying member method code with example usage: obj.test_asr_forward_unfrozen_adapters(model, name) without return types