code: def __init__(self, cfg):
      mlp_infused_adapter_cfg = MLPInfusedAdapterConfig(
          in_features=cfg.ffn_hidden_size
          // cfg.tensor_model_parallel_size
      )
      infused_adapter_cfg = InfusedAdapterConfig(
          in_features=cfg.hidden_size // cfg.tensor_model_parallel_size
      )
  
      name_key_to_cfg = {
          AdapterName.KEY_INFUSED: infused_adapter_cfg,
          AdapterName.VALUE_INFUSED: infused_adapter_cfg,
          AdapterName.MLP_INFUSED: mlp_infused_adapter_cfg,
      }
      self.name_key_to_mcore_mixins = {
          AdapterName.KEY_INFUSED: [
              ("self_attention", MCoreSelfAttentionMixin)
          ],
          AdapterName.VALUE_INFUSED: [
              ("self_attention", MCoreSelfAttentionMixin)
          ],
          AdapterName.MLP_INFUSED: [("mlp", MCoreMLPMixin)],
      }
  
      super().__init__(cfg.peft.ia3_tuning, name_key_to_cfg)
  
imports: from typing import Dict
  from omegaconf import DictConfig
  from nemo.collections.nlp.modules.common.megatron.adapters.parallel_adapters import AdapterName, InfusedAdapterConfig, LoraKQVAdapterConfig, LoraKQVAdapterWeightTyingConfig, MLPInfusedAdapterConfig, ParallelLinearAdapterConfig, ParallelLinearAdapterWeightTyingConfig, PromptEncoderAdapterConfig
label_desc: Use image node_id 1 to create a new IA3PEFTConfig object from inherited base classes: PEFTConfig with example: obj = IA3PEFTConfig(cfg)