class_docstr: TFX Tuner component executor.
code: def Do(
      self,
      input_dict: Dict[str, List[types.Artifact]],
      output_dict: Dict[str, List[types.Artifact]],
      exec_properties: Dict[str, Any],
  ) -> None:
      if get_tune_args(exec_properties):
          raise ValueError(
              "TuneArgs is not supported by this Tuner's Executor."
          )
  
      tuner = search(input_dict, exec_properties, self._get_tmp_dir())
  
      write_best_hyperparameters(tuner, output_dict)
  
imports: import json
  import os
  from typing import Any, Callable, Dict, List, Optional
  from absl import logging
  from keras_tuner.engine import base_tuner
  from keras_tuner.engine import trial
  from tfx import types
  from tfx.components.trainer import fn_args_utils
  from tfx.components.util import udf_utils
  from tfx.dsl.components.base import base_executor
  from tfx.proto import tuner_pb2
  from tfx.types import artifact_utils
  from tfx.types import standard_component_specs
  from tfx.utils import io_utils
  from tfx.utils import proto_utils
label_desc: Use image node_id 1 for calling the Executor obj's underlying member method code with example usage: obj.Do(input_dict, output_dict, exec_properties) without return types