class_docstr: A mixin class containing methods related to a drift detector's configuration dictionary.
class_docstr_tok: ["A","mixin","class","containing","methods","related","to","a","drift","detector","'s","configuration","dictionary","."]
docstr: Set a detectors `config` attribute upon detector instantiation.
  
  Large artefacts are overwritten with `None` in order to avoid memory duplication. They're added back into
  the config later on by `get_config()`.
  
  Parameters
  ----------
  inputs
      The inputs (args/kwargs) given to the detector at instantiation.
docstr_tok: ["Set","a","detectors","`","config","`","attribute","upon","detector","instantiation",".","Large","artefacts","are","overwritten","with","`","None","`","in","order","to","avoid","memory","duplication",".","They","'re","added","back","into","the","config","later","on","by","`","get_config","(",")","`",".","Parameters","--","--","--","--","--","inputs","The","inputs","(","args\/kwargs",")","given","to","the","detector","at","instantiation","."]
code: def _set_config(
      self, inputs: dict
  ):  # TODO - move to BaseDetector once config save/load implemented for non-drift
      """
      Set a detectors `config` attribute upon detector instantiation.
  
      Large artefacts are overwritten with `None` in order to avoid memory duplication. They're added back into
      the config later on by `get_config()`.
  
      Parameters
      ----------
      inputs
          The inputs (args/kwargs) given to the detector at instantiation.
      """
      # Set config metadata
      name = self.__class__.__name__
  
      # Init config dict
      self.config = {
          "name": name,
          "meta": {
              "version": __version__,
          },
      }
  
      # args and kwargs
      pop_inputs = ["self", "__class__", "__len__", "name", "meta"]
      [inputs.pop(k, None) for k in pop_inputs]
  
      # Overwrite any large artefacts with None to save memory. They'll be added back by get_config()
      for key in LARGE_ARTEFACTS:
          if key in inputs and hasattr(self._nested_detector, key):
              inputs[key] = None
  
      self.config.update(inputs)
  
imports: from abc import ABC, abstractmethod
  import os
  import copy
  import json
  import numpy
  from typing import Dict, Any, Optional, Union
  from typing_extensions import Protocol, runtime_checkable
  from alibi_detect.version import __version__
label_desc: Use image node_id 3 for calling the DriftConfigMixin obj's underlying member method code with example usage: obj._set_config(inputs) without return types