code: def setup_config():  # pragma: no cover
      config = []
      try:
          print(
              "start adding hyperparameters, use 'stop' or ctrl+c to exit"
          )
          while True:
              name = input("variable name:")
              if name == "stop":
                  break
              vrange = literal_eval(
                  "[" + input("range (separated by ,):") + "]"
              )
              if len(vrange) == 0:
                  raise ValueError("range needs at least one element")
              vtype = get_from_options(
                  "type:", ("choice", "float", "int")
              )
              c = {"name": name, "range": vrange, "type": vtype}
              if vtype != "choice":
                  interval = input(
                      "interval for grid search, or skip to use total number for this variable:"
                  )
                  if not interval:
                      n = int(
                          input(
                              "number of values for this variable [2]:"
                          )
                          or 2
                      )
                      if n < 2:
                          raise ValueError(
                              "number of values should be larger than 2, or use choice type"
                          )
                      c["n"] = n
                  else:
                      if vtype == "float":
                          c["interval"] = float(interval)
                      else:
                          c["interval"] = int(interval)
              config.append(c)
      except KeyboardInterrupt:
          pass
      return {"parameter_config": config}
  
imports: import abc
  import logging
  from ast import literal_eval
  from math import floor
  from six.moves import reduce, input
  from .AbstractProposer import AbstractProposer
  from ..utils import check_missing_key, get_from_options
label_desc: Use image node_id 2 for calling the SequenceProposer obj's underlying member method code with example usage: obj.setup_config() and returns: dict