def _try_resolve(v) -> Tuple[bool, Any]: if isinstance(v, Domain): # Domain to sample from return False, v elif isinstance(v, dict) and len(v) == 1 and "eval" in v: # Lambda function in eval syntax return False, Function( lambda spec: eval(v["eval"], _STANDARD_IMPORTS, {"spec": spec}) ) elif isinstance(v, dict) and len(v) == 1 and "grid_search" in v: # Grid search values grid_values = v["grid_search"] return False, Categorical(grid_values).grid() return True, v
def _try_resolve(v) -> Tuple[bool, Any]: if isinstance(v, Domain): # Domain to sample from return False, v elif isinstance(v, dict) and len(v) == 1 and "eval" in v: # Lambda function in eval syntax return False, Function( lambda spec: eval(v["eval"], _STANDARD_IMPORTS, {"spec": spec})) elif isinstance(v, dict) and len(v) == 1 and "grid_search" in v: # Grid search values grid_values = v["grid_search"] if not isinstance(grid_values, list): raise TuneError( "Grid search expected list of values, got: {}".format( grid_values)) return False, Categorical(grid_values).grid() return True, v