diff --git a/ax/preview/api/client.py b/ax/preview/api/client.py index 8d4ad6ed150..ba750eeebad 100644 --- a/ax/preview/api/client.py +++ b/ax/preview/api/client.py @@ -21,6 +21,7 @@ ) from ax.analysis.utils import choose_analyses from ax.core.experiment import Experiment +from ax.core.map_metric import MapMetric from ax.core.metric import Metric from ax.core.objective import MultiObjective, Objective, ScalarizedObjective from ax.core.observation import ObservationFeatures @@ -438,6 +439,11 @@ def attach_data( Saves to database on completion if storage_config is present. """ + # If any metric is not present on the Experiment, add it as a tracking metric + for metric_name in raw_data.keys(): + if metric_name not in self._experiment.metrics: + self._experiment.add_tracking_metric(metric=MapMetric(name=metric_name)) + # If no progression is provided assume the data is not timeseries-like and # set step=NaN data_with_progression = [