From 503f5c8ed569a4fa2d1284d91abfdace82fba0c8 Mon Sep 17 00:00:00 2001 From: PetrichorHlacyon <2262345951@qq.com> Date: Wed, 22 Apr 2026 12:33:15 +0800 Subject: [PATCH] run_evolution function with checkpoint parameter --- openevolve/api.py | 8 ++++++-- openevolve/controller.py | 1 - 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openevolve/api.py b/openevolve/api.py index 65c3702064..a265b19ab5 100644 --- a/openevolve/api.py +++ b/openevolve/api.py @@ -37,6 +37,8 @@ def run_evolution( iterations: Optional[int] = None, output_dir: Optional[str] = None, cleanup: bool = True, + target_score: Optional[float] = None, + checkpoint_path: Optional[str] = None, ) -> EvolutionResult: """ Run evolution with flexible inputs - the main library API @@ -90,7 +92,7 @@ def my_evaluator(program_path): ) """ return asyncio.run( - _run_evolution_async(initial_program, evaluator, config, iterations, output_dir, cleanup) + _run_evolution_async(initial_program, evaluator, config, iterations, output_dir, cleanup, target_score, checkpoint_path) ) @@ -101,6 +103,8 @@ async def _run_evolution_async( iterations: Optional[int], output_dir: Optional[str], cleanup: bool, + target_score: Optional[float] = None, + checkpoint_path: Optional[str] = None, ) -> EvolutionResult: """Async implementation of run_evolution""" @@ -156,7 +160,7 @@ async def _run_evolution_async( output_dir=actual_output_dir, ) - best_program = await controller.run(iterations=iterations) + best_program = await controller.run(iterations=iterations,target_score=target_score,checkpoint_path=checkpoint_path) # Prepare result best_score = 0.0 diff --git a/openevolve/controller.py b/openevolve/controller.py index 01ffec73c3..7d58b502c5 100644 --- a/openevolve/controller.py +++ b/openevolve/controller.py @@ -264,7 +264,6 @@ async def run( Best program found """ max_iterations = iterations or self.config.max_iterations - # Determine starting iteration start_iteration = 0 if checkpoint_path and os.path.exists(checkpoint_path):