code: def validate_tuner_adivosr_assessor(self, experiment_config):
      if experiment_config.get("advisor"):
          if experiment_config.get("assessor") or experiment_config.get(
              "tuner"
          ):
              raise SchemaError(
                  "advisor could not be set with assessor or tuner simultaneously!"
              )
          self.validate_annotation_content(
              experiment_config, "advisor", "builtinAdvisorName"
          )
      else:
          if not experiment_config.get("tuner"):
              raise SchemaError("Please provide tuner spec!")
          self.validate_annotation_content(
              experiment_config, "tuner", "builtinTunerName"
          )
  
imports: import json
  import os
  from schema import And, Optional, Or, Regex, Schema, SchemaError
  from nni.tools.package_utils.tuner_factory import create_validator_instance
  from .common_utils import get_yml_content, print_warning
  from .constants import SCHEMA_PATH_ERROR, SCHEMA_RANGE_ERROR, SCHEMA_TYPE_ERROR
label_desc: Use image node_id 3 for calling the NNIConfigSchema obj's underlying member method code with example usage: obj.validate_tuner_adivosr_assessor(experiment_config) without return types