Skip to content

Commit 8f2f1d6

Browse files
committed
avoid "unknown parameter value" on run upload
1 parent 7b58b8c commit 8f2f1d6

1 file changed

Lines changed: 16 additions & 6 deletions

File tree

openml/runs/run.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -210,12 +210,22 @@ def get_flow_dict(_flow):
210210
subflow = flow.components[param]
211211
openml_param_settings += _parse_parameters(python_param_settings[param], subflow)
212212

213-
# add parameter setting (also the subflow. Just because we can)
214-
param_dict = OrderedDict()
215-
param_dict['oml:name'] = param
216-
param_dict['oml:value'] = str(python_param_settings[param])
217-
param_dict['oml:component'] = flow_dict[flow.name]
218-
openml_param_settings.append(param_dict)
213+
# add parameter setting (in some cases also the subflow. Just because we can)
214+
if param in flow.parameters.keys():
215+
param_dict = OrderedDict()
216+
param_dict['oml:name'] = param
217+
param_dict['oml:value'] = str(python_param_settings[param])
218+
param_dict['oml:component'] = flow_dict[flow.name]
219+
openml_param_settings.append(param_dict)
220+
else:
221+
if flow.name.startswith("sklearn.pipeline.Pipeline"):
222+
# tolerate
223+
pass
224+
elif flow.name.startswith("sklearn.pipeline.FeatureUnion"):
225+
# tolerate
226+
pass
227+
else:
228+
raise ValueError("parameter %s not in flow description of flow %s" %(param,flow.name))
219229

220230
return openml_param_settings
221231

0 commit comments

Comments
 (0)