class_docstr: A Wrapper to shield user from Optuna specific configurations and API      Later may support other HPO search engines.
class_docstr_tok: ["A","Wrapper","to","shield","user","from","Optuna","specific","configurations","and","API","Later","may","support","other","HPO","search","engines","."]
docstr: Get hyper parameter suggestions from search space settings.
docstr_tok: ["Get","hyper","parameter","suggestions","from","search","space","settings","."]
code: def get_hpo_config(trial, configspace):
      """Get hyper parameter suggestions from search space settings."""
      # TODO better ways to map ConfigSpace to optuna spaces
      hp_ordering = configspace.get_hyperparameter_names()
      config = {}
      # hp_prefix = _get_cs_prefix(configspace)
      for hp_name in hp_ordering:
          hp = configspace.get_hyperparameter(hp_name)
          # TODO generate meaningful prefix for user in AutoObj
          hp_prefix = _get_hp_prefix(hp)
          optuna_hp_name = OptunaBackend._format_hp_name(
              hp_prefix, hp_name
          )
          hp_dimension = OptunaBackend._sample_space(
              trial, optuna_hp_name, hp
          )
          config[hp_name] = hp_dimension
      return config
  
file_path: BigDL/python/nano/src/bigdl/nano/deps/automl/optuna_backend.py
imports: from bigdl.nano.automl.hpo.backend import PrunerType, SamplerType
  from bigdl.nano.utils.common import invalidInputError
  from bigdl.nano.automl.hpo.space import SimpleSpace, NestedSpace, AutoObject
  from bigdl.nano.automl.hpo.space import AutoObject, Space, SingleParam, _get_hp_prefix
  import optuna
label_desc: Use image node_id 3 for calling the OptunaBackend obj's underlying member method code with example usage: obj.get_hpo_config(trial, configspace) and returns: config