code: def get_hyperparameter_search_space(
      self,
      feat_type: FEAT_TYPE_TYPE,
      dataset_properties=None,
      default=None,
      include=None,
      exclude=None,
  ):
      if include is not None and exclude is not None:
          raise ValueError(
              "The argument include and exclude cannot be used together."
          )
  
      cs = ConfigurationSpace()
  
      # Compile a list of all estimator objects for this problem
      available_estimators = self.get_available_components(
          dataset_properties=dataset_properties,
          include=include,
          exclude=exclude,
      )
  
      if len(available_estimators) == 0:
          raise ValueError("No regressors found")
  
      if default is None:
          defaults = [
              "random_forest",
              "support_vector_regression",
          ] + list(available_estimators.keys())
          for default_ in defaults:
              if default_ in available_estimators:
                  if include is not None and default_ not in include:
                      continue
                  if exclude is not None and default_ in exclude:
                      continue
                  default = default_
                  break
  
      estimator = CategoricalHyperparameter(
          "__choice__",
          list(available_estimators.keys()),
          default_value=default,
      )
      cs.add_hyperparameter(estimator)
      for estimator_name in available_estimators.keys():
          estimator_configuration_space = available_estimators[
              estimator_name
          ].get_hyperparameter_search_space(
              feat_type=feat_type, dataset_properties=dataset_properties
          )
          parent_hyperparameter = {
              "parent": estimator,
              "value": estimator_name,
          }
          cs.add_configuration_space(
              estimator_name,
              estimator_configuration_space,
              parent_hyperparameter=parent_hyperparameter,
          )
  
      return cs
  
file_path: auto-sklearn/autosklearn/pipeline/components/regression/__init__.py
imports: from typing import Type
  import os
  from collections import OrderedDict
  from ConfigSpace.configuration_space import ConfigurationSpace
  from ConfigSpace.hyperparameters import CategoricalHyperparameter
  from autosklearn.askl_typing import FEAT_TYPE_TYPE
  from ..base import AutoSklearnChoice, AutoSklearnRegressionAlgorithm, ThirdPartyComponents, _addons, find_components
label_desc: Use image node_id 3 for calling the RegressorChoice obj's underlying member method code with example usage: obj.get_hyperparameter_search_space(feat_type, dataset_properties, default, include, exclude) and returns: cs