class_docstr: A specialized wrapper for the automlbenchmark framework.
  Abstracts the different behaviors of tuners and advisors into a tuner API. 
class_docstr_tok: ["A","specialized","wrapper","for","the","automlbenchmark","framework",".","Abstracts","the","different","behaviors","of","tuners","and","advisors","into","a","tuner","API","."]
code: def __init__(self, config: TaskConfig):
      self.config = config
      self.core, self.description = get_tuner(config)
  
      # 'tuner' or 'advisor'
      self.core_type = None
      if isinstance(self.core, Tuner):
          self.core_type = "tuner"
      elif isinstance(self.core, MsgDispatcherBase):
          self.core_type = "advisor"
      else:
          raise RuntimeError("Unsupported tuner or advisor type")
  
      # note: tuners and advisors use this variable differently
      self.cur_param_id = 0
  
file_path: nni/examples/trials/benchmarking/automlbenchmark/nni/extensions/NNI/tuners.py
imports: import os
  import yaml
  import importlib
  import nni
  from nni.runtime.config import get_config_file
  from nni.utils import MetricType
  from nni.tuner import Tuner
  from nni.runtime.msg_dispatcher_base import MsgDispatcherBase
  from amlb.benchmark import TaskConfig
label_desc: Use image node_id 1 to create a new NNITuner object  with example: obj = NNITuner(config)