class_docstr: A class providing methods for saving and loading AdapterFusion modules from the file system.
class_docstr_tok: ["A","class","providing","methods","for","saving","and","loading","AdapterFusion","modules","from","the","file","system","."]
docstr: Saves a AdapterFusion module into the given directory.
  
  Args:
      save_directory (str): The directory to save the weights in.
      name (str, optional): The AdapterFusion name.
code: def save(self, save_directory: str, name: str, meta_dict=None):
      """
      Saves a AdapterFusion module into the given directory.
  
      Args:
          save_directory (str): The directory to save the weights in.
          name (str, optional): The AdapterFusion name.
      """
  
      if name not in self.model.adapters_config.fusions:
          if self.error_on_missing:
              raise ValueError(f"Unknown AdapterFusion '{name}'.")
          else:
              logger.debug(
                  f"No AdapterFusion with name '{name}' available."
              )
              return
  
      if not exists(save_directory):
          mkdir(save_directory)
      else:
          assert isdir(
              save_directory
          ), "Saving path should be a directory where the head can be saved."
  
      adapter_fusion_config = self.model.adapters_config.get_fusion(
          name
      )
  
      # Save the adapter fusion configuration
      config_dict = build_full_config(
          adapter_fusion_config,
          self.model.config,
          name=name,
          model_name=self.model.model_name,
          model_class=self.model.__class__.__name__,
      )
      self.weights_helper.save_weights_config(
          save_directory, config_dict, meta_dict=meta_dict
      )
  
      # Save head weights
      filter_func = self.filter_func(name)
      self.weights_helper.save_weights(save_directory, filter_func)
  
imports: import json
  import logging
  from abc import ABC, abstractmethod
  from os import mkdir
  from os.path import exists, isdir, isfile, join
  from typing import Callable, Mapping, Sequence, Tuple
  import torch
  from .configuration import AdapterConfig, build_full_config
  from .head_utils import STATIC_TO_FLEX_HEAD_MAP, get_head_config_and_rename_list
  from .utils import ACTIVATION_RENAME, ADAPTERFUSION_CONFIG_NAME, ADAPTERFUSION_WEIGHTS_NAME, CONFIG_NAME, HEAD_CONFIG_NAME, HEAD_WEIGHTS_NAME, WEIGHTS_NAME, AdapterType, resolve_adapter_path
label_desc: Use image node_id 5 for calling the AdapterFusionLoader obj's underlying member method code with example usage: obj.save(save_directory, name, meta_dict) without return types