code: def init_adapters(self, model_config, adapters_config):
      self.q_proj = LoRALinear.wrap(
          self.q_proj,
          "selfattn",
          model_config,
          adapters_config,
          attn_key="q",
      )
      self.k_proj = LoRALinear.wrap(
          self.k_proj,
          "selfattn",
          model_config,
          adapters_config,
          attn_key="k",
      )
      self.v_proj = LoRALinear.wrap(
          self.v_proj,
          "selfattn",
          model_config,
          adapters_config,
          attn_key="v",
      )
  
      self.prefix_tuning = PrefixTuningLayer(
          "self_prefix", model_config, adapters_config
      )
  
file_path: adapters/src/adapters/models/llama/mixin_llama.py
imports: from typing import Iterable, Tuple
  import torch.nn
  from ...methods.bottleneck import BottleneckLayer
  from ...methods.lora import LoRALinear
  from ...methods.prefix_tuning import PrefixTuningLayer
  from ...model_mixin import EmbeddingAdaptersMixin, InvertibleAdaptersMixin, ModelBaseAdaptersMixin
label_desc: Use image node_id 1 for calling the LlamaAttentionMixin obj's underlying member method code with example usage: obj.init_adapters(model_config, adapters_config) without return types