Skip to content

Commit 1c6e951

Browse files
committed
we should always have an executor
1 parent 1b6e046 commit 1c6e951

2 files changed

Lines changed: 6 additions & 5 deletions

File tree

codeflash/api/aiservice.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
from codeflash.models.models import AIServiceCodeRepairRequest, AIServiceRefinerRequest
3636
from codeflash.result.explanation import Explanation
3737

38+
3839
class AiServiceClient:
3940
def __init__(self) -> None:
4041
self.base_url = self.get_aiservice_base_url()
@@ -244,11 +245,11 @@ def optimize_python_code_multi_model(
244245
dependency_code: str,
245246
base_trace_id: str,
246247
model_distribution: list[tuple[str, int]],
248+
executor: concurrent.futures.ThreadPoolExecutor,
247249
experiment_metadata: ExperimentMetadata | None = None,
248250
*,
249251
is_async: bool = False,
250252
sequence_offset: int = 0,
251-
executor: concurrent.futures.ThreadPoolExecutor | None = None,
252253
) -> tuple[list[OptimizedCandidate], int]:
253254
"""Generate optimizations using multiple models in parallel."""
254255
logger.info("Generating optimized candidates…")
@@ -295,9 +296,9 @@ def optimize_python_code_line_profiler_multi_model(
295296
base_trace_id: str,
296297
line_profiler_results: str,
297298
model_distribution: list[tuple[str, int]],
299+
executor: concurrent.futures.ThreadPoolExecutor,
298300
experiment_metadata: ExperimentMetadata | None = None,
299301
sequence_offset: int = 0,
300-
executor: concurrent.futures.ThreadPoolExecutor | None = None,
301302
) -> tuple[list[OptimizedCandidate], int]:
302303
"""Generate line profiler optimizations using multiple models in parallel."""
303304
logger.info("Generating optimized candidates with line profiler…")

codeflash/optimization/function_optimizer.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -955,13 +955,13 @@ def determine_best_candidate(
955955
base_trace_id=self.get_trace_id(exp_type),
956956
line_profiler_results=original_code_baseline.line_profile_results["str_out"],
957957
model_distribution=MODEL_DISTRIBUTION_LP_EFFECTIVE,
958+
executor=self.executor,
958959
experiment_metadata=ExperimentMetadata(
959960
id=self.experiment_id, group="control" if exp_type == "EXP0" else "experiment"
960961
)
961962
if self.experiment_id
962963
else None,
963964
sequence_offset=self.optimize_calls_count,
964-
executor=self.executor,
965965
)
966966

967967
processor = CandidateProcessor(
@@ -1393,10 +1393,10 @@ def generate_optimizations(
13931393
read_only_context_code,
13941394
self.function_trace_id[:-4] + "EXP0" if run_experiment else self.function_trace_id,
13951395
MODEL_DISTRIBUTION_EFFECTIVE,
1396+
self.executor,
13961397
ExperimentMetadata(id=self.experiment_id, group="control") if run_experiment else None,
13971398
is_async=self.function_to_optimize.is_async,
13981399
sequence_offset=N_TESTS_TO_GENERATE_EFFECTIVE,
1399-
executor=self.executor,
14001400
)
14011401

14021402
future_references = self.executor.submit(
@@ -1418,10 +1418,10 @@ def generate_optimizations(
14181418
read_only_context_code,
14191419
self.function_trace_id[:-4] + "EXP1",
14201420
MODEL_DISTRIBUTION_EFFECTIVE,
1421+
self.executor,
14211422
ExperimentMetadata(id=self.experiment_id, group="experiment"),
14221423
is_async=self.function_to_optimize.is_async,
14231424
sequence_offset=N_TESTS_TO_GENERATE_EFFECTIVE,
1424-
executor=self.executor,
14251425
)
14261426
futures.append(future_candidates_exp)
14271427

0 commit comments

Comments
 (0)