From db8eec7394a87fa6fe99e7ec2f886be7fb64efa2 Mon Sep 17 00:00:00 2001 From: you-n-g Date: Fri, 16 May 2025 14:39:47 +0800 Subject: [PATCH] fix: use fallback messages for missing submission and scores files (#882) --- .../coder/data_science/share/eval.py | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/rdagent/components/coder/data_science/share/eval.py b/rdagent/components/coder/data_science/share/eval.py index be9b77a3..8583941e 100644 --- a/rdagent/components/coder/data_science/share/eval.py +++ b/rdagent/components/coder/data_science/share/eval.py @@ -21,6 +21,9 @@ DIRNAME = Path(__file__).absolute().resolve().parent PipelineSingleFeedback = CoSTEERSingleFeedback PipelineMultiFeedback = CoSTEERMultiFeedback +NO_SUB = "" +NO_SCORE = "" + class ModelDumpEvaluator(CoSTEEREvaluator): """This evaluator assumes that it runs after the model""" @@ -43,6 +46,7 @@ class ModelDumpEvaluator(CoSTEEREvaluator): code=err_msg, final_decision=False, ) + data_source_path = ( f"{DS_RD_SETTING.local_data_path}/{self.scen.competition}" if self.data_type == "full" @@ -61,12 +65,12 @@ class ModelDumpEvaluator(CoSTEEREvaluator): submission_content_before = ( (implementation.workspace_path / "submission.csv").read_text() if (implementation.workspace_path / "submission.csv").exists() - else None + else NO_SUB ) scores_content_before = ( (implementation.workspace_path / "scores.csv").read_text() if (implementation.workspace_path / "scores.csv").exists() - else None + else NO_SCORE ) # Remove the files submission.csv and scores.csv @@ -103,11 +107,16 @@ class ModelDumpEvaluator(CoSTEEREvaluator): final_decision=False, ) - assert submission_content_before is not None - assert scores_content_before is not None - - submission_content_after = (implementation.workspace_path / "submission.csv").read_text() - scores_content_after = (implementation.workspace_path / "scores.csv").read_text() + submission_content_after = ( + (implementation.workspace_path / "submission.csv").read_text() + if (implementation.workspace_path / "submission.csv").exists() + else NO_SUB + ) + scores_content_after = ( + (implementation.workspace_path / "scores.csv").read_text() + if (implementation.workspace_path / "scores.csv").exists() + else NO_SCORE + ) system_prompt = T(".prompts:dump_model_eval.system").r() user_prompt = T(".prompts:dump_model_eval.user").r(