Skip to content

Commit 71f51ce

Browse files
committed
enable report title
1 parent c7d3b3d commit 71f51ce

File tree

2 files changed

+38
-12
lines changed

2 files changed

+38
-12
lines changed

ads/opctl/operator/lowcode/forecast/model/base_model.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
seconds_to_datetime,
3030
write_data,
3131
)
32-
from ads.opctl.operator.lowcode.forecast.model.forecast_datasets import TestData
3332
from ads.opctl.operator.lowcode.forecast.utils import (
3433
_build_metrics_df,
3534
_build_metrics_per_horizon,
@@ -132,11 +131,10 @@ def generate_report(self):
132131

133132
if self.datasets.test_data is not None:
134133
try:
135-
(
136-
self.test_eval_metrics,
137-
summary_metrics
138-
) = self._test_evaluate_metrics(
139-
elapsed_time=elapsed_time,
134+
(self.test_eval_metrics, summary_metrics) = (
135+
self._test_evaluate_metrics(
136+
elapsed_time=elapsed_time,
137+
)
140138
)
141139
if not self.target_cat_col:
142140
self.test_eval_metrics.rename(
@@ -155,9 +153,9 @@ def generate_report(self):
155153
model_description,
156154
other_sections,
157155
) = self._generate_report()
158-
156+
report_title = self.config.spec.report_title or "Forecast Report"
159157
header_section = rc.Block(
160-
rc.Heading("Forecast Report", level=1),
158+
rc.Heading(report_title, level=1),
161159
rc.Text(
162160
f"You selected the {self.spec.model} model.\nBased on your dataset, you could have also selected any of the models: {SupportedModels.keys()}."
163161
),
@@ -471,7 +469,7 @@ def _save_report(
471469
result_df: pd.DataFrame,
472470
metrics_df: pd.DataFrame,
473471
test_metrics_df: pd.DataFrame,
474-
test_data: pd.DataFrame,
472+
# test_data: pd.DataFrame,
475473
):
476474
"""Saves resulting reports to the given folder."""
477475

tests/operators/forecast/test_errors.py

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -835,9 +835,9 @@ def test_what_if_analysis(operator_setup, model):
835835
historical_data = pd.read_csv(historical_data_path, parse_dates=["Date"])
836836
historical_filtered = historical_data[historical_data["Date"] > "2013-03-01"]
837837
additional_data = pd.read_csv(additional_data_path, parse_dates=["Date"])
838-
add_filtered = additional_data[additional_data['Date'] > "2013-03-01"]
839-
add_filtered.to_csv(f'{additional_test_path}', index=False)
840-
historical_filtered.to_csv(f'{historical_test_path}', index=False)
838+
add_filtered = additional_data[additional_data["Date"] > "2013-03-01"]
839+
add_filtered.to_csv(f"{additional_test_path}", index=False)
840+
historical_filtered.to_csv(f"{historical_test_path}", index=False)
841841

842842
yaml_i, output_data_path = populate_yaml(
843843
tmpdirname=tmpdirname,
@@ -893,5 +893,33 @@ def test_auto_select(operator_setup):
893893
report_path = f"{output_data_path}/report.html"
894894
assert os.path.exists(report_path), f"Report file not found at {report_path}"
895895

896+
897+
@pytest.mark.parametrize("model", ["prophet"])
898+
def test_report_title(operator_setup, model):
899+
from ads.opctl.operator.lowcode.forecast.__main__ import operate
900+
from ads.opctl.operator.lowcode.forecast.operator_config import (
901+
ForecastOperatorConfig,
902+
)
903+
904+
yaml_i = TEMPLATE_YAML.copy()
905+
yaml_i["spec"]["horizon"] = 10
906+
yaml_i["spec"]["model"] = model
907+
yaml_i["spec"]["historical_data"] = {"format": "pandas"}
908+
yaml_i["spec"]["target_column"] = TARGET_COL.name
909+
yaml_i["spec"]["datetime_column"]["name"] = HISTORICAL_DATETIME_COL.name
910+
yaml_i["spec"]["report_title"] = "Skibidi ADS Skibidi"
911+
yaml_i["spec"]["output_directory"]["url"] = operator_setup
912+
913+
df = pd.concat([HISTORICAL_DATETIME_COL[:15], TARGET_COL[:15]], axis=1)
914+
yaml_i["spec"]["historical_data"]["data"] = df
915+
operator_config = ForecastOperatorConfig.from_dict(yaml_i)
916+
results = operate(operator_config)
917+
with open(os.path.join(operator_setup, "report.html")) as f:
918+
for line in f:
919+
if "Skibidi ADS Skibidi" in line:
920+
return True
921+
assert False, "Report Title was not set"
922+
923+
896924
if __name__ == "__main__":
897925
pass

0 commit comments

Comments
 (0)