From c9ccdca9bca7be49afc943d398bfea9c3cfad935 Mon Sep 17 00:00:00 2001 From: "alan.cl" Date: Mon, 8 Dec 2025 20:41:25 +0800 Subject: [PATCH] fix: create benchmark task first --- .../service/benchmark/benchmark_service.py | 29 +++++++++++-------- .../fetchdata/benchmark_data_manager.py | 3 -- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/benchmark/benchmark_service.py b/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/benchmark/benchmark_service.py index 28fd24e4c..1f0eb5a05 100644 --- a/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/benchmark/benchmark_service.py +++ b/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/benchmark/benchmark_service.py @@ -252,17 +252,6 @@ class BenchmarkService( if not scene_key: scene_key = EvaluationScene.DATASET.value - try: - manager = get_benchmark_manager(self._system_app) - await manager.load_data() - logger.info( - f"Benchmark dataset loaded from {manager._config.repo_url} " - f"dir={manager._config.data_dir}" - ) - except Exception as e: - logger.error(f"Failed to load benchmark dataset before run: {e}") - raise e - output_file_path = self._generate_output_file_full_path( output_file_path, evaluate_code ) @@ -282,6 +271,7 @@ class BenchmarkService( response_mapping, ) logger.info(f"run benchmark with benchmarkConfig={config}") + start_time = time.time() # save benchmark task self.create_benchmark_task( @@ -293,8 +283,23 @@ class BenchmarkService( output_file_path, ) + # Priority: load Falcon github benchmark dataset + try: + manager = get_benchmark_manager(self._system_app) + await manager.load_data() + logger.info( + f"Benchmark dataset loaded from {manager._config.repo_url} " + f"dir={manager._config.data_dir}" + ) + except Exception as e: + logger.error(f"Failed to load Falcon benchmark dataset before run task: {e}") + cost_time = int(time.time() - start_time) + self._update_benchmark_task_status( + evaluate_code, Status.FAILED.value, cost_time, error_message=str(e) + ) + raise e + result_list = [] - start_time = time.time() try: # read input file input_list: List[BaseInputModel] = ( diff --git a/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/fetchdata/benchmark_data_manager.py b/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/fetchdata/benchmark_data_manager.py index 5c32d1a8a..205383b85 100644 --- a/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/fetchdata/benchmark_data_manager.py +++ b/packages/dbgpt-serve/src/dbgpt_serve/evaluate/service/fetchdata/benchmark_data_manager.py @@ -71,9 +71,6 @@ class BenchmarkDataManager(BaseComponent): """Initialize the AgentManager.""" self.system_app = system_app - async def async_after_start(self): - logger.info("BenchmarkDataManager: async_after_start.") - async def async_before_stop(self): try: logger.info("BenchmarkDataManager: closing resources before stop...")