3535 from codeflash .models .models import AIServiceCodeRepairRequest , AIServiceRefinerRequest
3636 from codeflash .result .explanation import Explanation
3737
38- multi_model_executor = concurrent .futures .ThreadPoolExecutor (max_workers = 10 , thread_name_prefix = "multi_model" )
39-
40-
4138class AiServiceClient :
4239 def __init__ (self ) -> None :
4340 self .base_url = self .get_aiservice_base_url ()
@@ -251,6 +248,7 @@ def optimize_python_code_multi_model(
251248 * ,
252249 is_async : bool = False ,
253250 sequence_offset : int = 0 ,
251+ executor : concurrent .futures .ThreadPoolExecutor | None = None ,
254252 ) -> tuple [list [OptimizedCandidate ], int ]:
255253 """Generate optimizations using multiple models in parallel."""
256254 logger .info ("Generating optimized candidates…" )
@@ -264,7 +262,7 @@ def optimize_python_code_multi_model(
264262 call_trace_id = f"{ base_trace_id [:- 3 ]} 0{ call_index :02x} "
265263 call_sequence = sequence_offset + call_index + 1
266264 call_index += 1
267- future = multi_model_executor .submit (
265+ future = executor .submit (
268266 self .optimize_python_code ,
269267 source_code ,
270268 dependency_code ,
@@ -299,6 +297,7 @@ def optimize_python_code_line_profiler_multi_model(
299297 model_distribution : list [tuple [str , int ]],
300298 experiment_metadata : ExperimentMetadata | None = None ,
301299 sequence_offset : int = 0 ,
300+ executor : concurrent .futures .ThreadPoolExecutor | None = None ,
302301 ) -> tuple [list [OptimizedCandidate ], int ]:
303302 """Generate line profiler optimizations using multiple models in parallel."""
304303 logger .info ("Generating optimized candidates with line profiler…" )
@@ -312,7 +311,7 @@ def optimize_python_code_line_profiler_multi_model(
312311 call_trace_id = f"{ base_trace_id [:- 3 ]} 1{ call_index :02x} "
313312 call_sequence = sequence_offset + call_index + 1
314313 call_index += 1
315- future = multi_model_executor .submit (
314+ future = executor .submit (
316315 self .optimize_python_code_line_profiler ,
317316 source_code ,
318317 dependency_code ,
0 commit comments