()
| 359 | |
| 360 | |
| 361 | async def main(): |
| 362 | parser = argparse.ArgumentParser(description='Test Benchmark Loop') |
| 363 | parser.add_argument("--config", default=os.path.join(root, "configs", "tool_calling_agent.py"), help="config file path") |
| 364 | parser.add_argument("--benchmark", default="leetcode", help="benchmark name to test") |
| 365 | parser.add_argument("--max-concurrency", type=int, default=4, help="Maximum number of concurrent tasks (default: 5)") |
| 366 | parser.add_argument( |
| 367 | '--cfg-options', |
| 368 | nargs='+', |
| 369 | action=DictAction, |
| 370 | help='override settings') |
| 371 | args = parser.parse_args() |
| 372 | |
| 373 | config.initialize(config_path=args.config, args=args) |
| 374 | logger.initialize(config=config) |
| 375 | |
| 376 | logger.info("| 🧠 Initializing model manager...") |
| 377 | if hasattr(model_manager, 'initialize'): |
| 378 | await model_manager.initialize() |
| 379 | |
| 380 | benchmark_name = args.benchmark |
| 381 | logger.info(f"| 🛠️ Initializing benchmark manager for {benchmark_name}...") |
| 382 | await benchmark_manager.initialize(benchmark_names=[benchmark_name]) |
| 383 | |
| 384 | # Initialize result saver |
| 385 | logger.info(f"| 💾 Initializing result saver...") |
| 386 | result_saver = BenchmarkResultSaver(benchmark_name, args.max_concurrency, 0, TARGET_MODEL) # We'll update total_tasks later |
| 387 | logger.info(f"| ✅ Results will be saved to: {result_saver.get_file_path()}") |
| 388 | |
| 389 | await test_math_benchmark(benchmark_name, max_concurrency=args.max_concurrency, result_saver=result_saver) |
| 390 | |
| 391 | print("| 🧹 Cleaning up...") |
| 392 | await benchmark_manager.cleanup() |
| 393 | print("| 🚪 Test completed") |
| 394 | |
| 395 | if __name__ == "__main__": |
| 396 | asyncio.run(main()) |
no test coverage detected