()
| 440 | |
| 441 | |
| 442 | async def main(): |
| 443 | args = parse_args() |
| 444 | |
| 445 | config.initialize(config_path=args.config, args=args) |
| 446 | # Disable logging during experiments for cleaner output |
| 447 | # logger.initialize(config=config, level=logging.CRITICAL) |
| 448 | logger.initialize(config=config) |
| 449 | logger.info(f"| Config: {config.pretty_text}") |
| 450 | |
| 451 | # Initialize model manager |
| 452 | logger.info("| 🧠 Initializing model manager...") |
| 453 | await model_manager.initialize() |
| 454 | logger.info(f"| ✅ Model manager initialized: {await model_manager.list()}") |
| 455 | |
| 456 | # Initialize prompt manager |
| 457 | logger.info("| 📁 Initializing prompt manager...") |
| 458 | await prompt_manager.initialize() |
| 459 | logger.info(f"| ✅ Prompt manager initialized: {await prompt_manager.list()}") |
| 460 | |
| 461 | # Initialize memory manager |
| 462 | logger.info("| 📁 Initializing memory manager...") |
| 463 | await memory_manager.initialize(memory_names=config.memory_names) |
| 464 | logger.info(f"| ✅ Memory manager initialized: {await memory_manager.list()}") |
| 465 | |
| 466 | # Initialize tools |
| 467 | logger.info("| 🛠️ Initializing tools...") |
| 468 | await tcp.initialize(tool_names=config.tool_names) |
| 469 | logger.info(f"| ✅ Tools initialized: {await tcp.list()}") |
| 470 | |
| 471 | # Initialize environments |
| 472 | logger.info("| 🎮 Initializing environments...") |
| 473 | await ecp.initialize(env_names=config.env_names) |
| 474 | logger.info(f"| ✅ Environments initialized: {ecp.list()}") |
| 475 | |
| 476 | # Initialize agents |
| 477 | logger.info("| 🤖 Initializing agents...") |
| 478 | await acp.initialize(agent_names=config.agent_names) |
| 479 | logger.info(f"| ✅ Agents initialized: {await acp.list()}") |
| 480 | |
| 481 | # Initialize benchmark manager |
| 482 | logger.info("| 🧪 Initializing benchmark manager...") |
| 483 | await benchmark_manager.initialize(benchmark_names=[args.benchmark]) |
| 484 | logger.info(f"| ✅ Benchmark manager initialized: {await benchmark_manager.list()}") |
| 485 | |
| 486 | # Initialize version manager, must after tool, agent, environment initialized |
| 487 | logger.info("| 📁 Initializing version manager...") |
| 488 | await version_manager.initialize() |
| 489 | logger.info(f"| ✅ Version manager initialized") |
| 490 | |
| 491 | # Test specified optimizer on benchmark |
| 492 | await run_optimizer_on_benchmark(args.optimizer, args.benchmark, args.experiment_file, args.concurrency) |
| 493 | |
| 494 | logger.info("| 🧹 Cleaning up...") |
| 495 | await benchmark_manager.cleanup() |
| 496 | logger.shutdown() # 确保所有日志都被写入文件 |
| 497 | logger.info("| 🚪 Experiment completed") |
| 498 | |
| 499 |
no test coverage detected