Skip to content
Snippets Groups Projects
Commit a1cd45a7 authored by leufen1's avatar leufen1
Browse files

IntelliO3 reference model is downloaded during preprocessing if required,...

IntelliO3 reference model is downloaded during preprocessing if required, IntelliO3 is now fully available as reference model!
parent 9986b1b0
Branches
No related tags found
3 merge requests!253include current develop,!252Resolve "release v1.3.0",!232Resolve "Make IntelliO3-ts v1.0 available as reference"
Pipeline #58942 failed
...@@ -65,6 +65,7 @@ class PreProcessing(RunEnvironment): ...@@ -65,6 +65,7 @@ class PreProcessing(RunEnvironment):
self.data_store.set("stations", valid_stations) self.data_store.set("stations", valid_stations)
self.split_train_val_test() self.split_train_val_test()
self.report_pre_processing() self.report_pre_processing()
self.prepare_competitors()
def report_pre_processing(self): def report_pre_processing(self):
"""Log some metrics on data and create latex report.""" """Log some metrics on data and create latex report."""
...@@ -325,6 +326,25 @@ class PreProcessing(RunEnvironment): ...@@ -325,6 +326,25 @@ class PreProcessing(RunEnvironment):
if transformation_dict is not None: if transformation_dict is not None:
self.data_store.set("transformation", transformation_dict) self.data_store.set("transformation", transformation_dict)
def prepare_competitors(self):
"""
Prepare competitor models already in the preprocessing stage. This is performed here, because some models might
need to have internet access, which is depending on the operating system not possible during postprocessing.
This method checks currently only, if the Intelli03-ts-v1 model is requested as competitor and downloads the
data if required.
"""
logging.info("Searching for competitors to be prepared for use.")
competitors = self.data_store.get_default("competitors", default=None)
if competitors is not None:
for competitor_name in competitors:
if competitor_name.lower() == "IntelliO3-ts-v1".lower():
logging.info("Prepare IntelliO3-ts-v1 model")
from mlair.reference_models.reference_model_intellio3_v1 import IntelliO3_ts_v1
path = os.path.join(self.data_store.get("competitor_path"), competitor_name)
IntelliO3_ts_v1("IntelliO3-ts-v1", path).make_reference_available_locally(remove_tmp_dir=False)
else:
logging.info("No preparation required because no competitor was provided to the workflow.")
def f_proc(data_handler, station, name_affix, store, **kwargs): def f_proc(data_handler, station, name_affix, store, **kwargs):
""" """
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment