code: def validate_config(self, **kwargs):
      invalidInputError(
          kwargs["approach"] in self.valid_approaches,
          errMsg="{} is invalid.".format(kwargs["approach"]),
          fixMsg="Choose from {}.".format(self.valid_approaches),
      )
      invalidInputError(
          kwargs["framework"] in self.valid_frameworks,
          errMsg="{} is invalid.".format(kwargs["framework"]),
          fixMsg="Choose from {}.".format(self.valid_frameworks),
      )
      invalidInputError(
          kwargs["tuning_strategy"] in self.valid_tuning_strategies,
          errMsg="{} is invalid.".format(kwargs["tuning_strategy"]),
          fixMsg="Choose from {}.".format(self.valid_tuning_strategies),
      )
  
      invalidInputError(
          isinstance(kwargs["accuracy_criterion"], dict),
          errMsg="accuracy_criterion should be a dictionary.",
      )
      is_drop_type_defined = False
      for k, v in kwargs["accuracy_criterion"].items():
          if k in self.valid_drop_type:
              # either of 'relative'/'absolute' can be in the dict
              invalidInputError(
                  not is_drop_type_defined,
                  errMsg="Drop type should be defined only once.",
                  fixMsg="There multiple 'relative'/'absolute' in "
                  "accuracy_criterion, only one is required.",
              )
              is_drop_type_defined = True
              invalidInputError(
                  0 <= v < 1,
                  errMsg="The value of {} for {} drop is invalid.".format(
                      v, k
                  ),
                  fixMsg="Value should be within [0, 1).",
              )
          else:
              invalidInputError(
                  k == "higher_is_better",
                  errMsg="Key {} is not valid".format(k),
                  fixMsg="Keys for accuracy_criterion should be"
                  " 'relative'/'absolute' and 'higher_is_better'.",
              )
  
      invalidInputError(
          isinstance(kwargs["timeout"], int) and kwargs["timeout"] >= 0,
          errMsg="Argument timeout should be an integer >= 0",
      )
      invalidInputError(
          isinstance(kwargs["max_trials"], int)
          and kwargs["max_trials"] >= 0,
          errMsg="Argument max_trials should be an integer >= 0",
      )
  
file_path: BigDL/python/nano/src/bigdl/nano/deps/neural_compressor/core/quantization.py
imports: from bigdl.nano.utils.common import invalidInputError
  from neural_compressor.conf.config import Quantization_Conf
  from neural_compressor.experimental import Quantization, common
label_desc: Use image node_id 11 for calling the BaseQuantization obj's underlying member method code with example usage: obj.validate_config() without return types