diff --git a/rdagent/components/benchmark/eval_method.py b/rdagent/components/benchmark/eval_method.py index c94a0e3e..3bf998b6 100644 --- a/rdagent/components/benchmark/eval_method.py +++ b/rdagent/components/benchmark/eval_method.py @@ -104,7 +104,7 @@ class BaseEval: try: eval_res.append((ev, ev.evaluate(implementation=case_gen, gt_implementation=case_gt))) # if the corr ev is successfully evaluated and achieve the best performance, then break - except CoderError as e: + except (CoderError, AttributeError) as e: return e except Exception as e: # exception when evaluation diff --git a/rdagent/scenarios/qlib/factor_experiment_loader/json_loader.py b/rdagent/scenarios/qlib/factor_experiment_loader/json_loader.py index 5f080f80..5e04a0d4 100644 --- a/rdagent/scenarios/qlib/factor_experiment_loader/json_loader.py +++ b/rdagent/scenarios/qlib/factor_experiment_loader/json_loader.py @@ -55,10 +55,9 @@ class FactorTestCaseLoaderFromJsonFile: factor_formulation=factor_data["formulation"], variables=factor_data["variables"], ) - gt = FactorFBWorkspace(task) + gt = FactorFBWorkspace(task, raise_exception=True) code = {"factor.py": factor_data["gt_code"]} gt.inject_code(**code) - gt.execute() TestData.target_task.sub_tasks.append(task) TestData.ground_truth.append(gt)