@@ -110,17 +110,11 @@ def build_prompt(
110110
111111 if self .config .programs_as_changes_description :
112112 if self .config .system_message_changes_description :
113- system_message_changes_description = (
114- self .config .system_message_changes_description .strip ()
115- )
113+ system_message_changes_description = self .config .system_message_changes_description .strip ()
116114 else :
117- system_message_changes_description = self .template_manager .get_template (
118- "system_message_changes_description"
119- )
115+ system_message_changes_description = self .template_manager .get_template ("system_message_changes_description" )
120116
121- system_message = self .template_manager .get_template (
122- "system_message_with_changes_description"
123- ).format (
117+ system_message = self .template_manager .get_template ("system_message_with_changes_description" ).format (
124118 system_message = system_message ,
125119 system_message_changes_description = system_message_changes_description ,
126120 )
@@ -167,9 +161,7 @@ def build_prompt(
167161 )
168162
169163 if self .config .programs_as_changes_description and current_changes_description is not None :
170- user_message = self .template_manager .get_template (
171- "user_message_with_changes_description"
172- ).format (
164+ user_message = self .template_manager .get_template ("user_message_with_changes_description" ).format (
173165 user_message = user_message ,
174166 changes_description = current_changes_description .rstrip (),
175167 )
@@ -273,8 +265,11 @@ def _format_evolution_history(
273265
274266 for i , program in enumerate (reversed (selected_previous )):
275267 attempt_number = len (previous_programs ) - i
276- changes = program .get ("changes_description" ) or program .get ("metadata" , {}).get (
277- "changes" , self .template_manager .get_fragment ("attempt_unknown_changes" )
268+ changes = (
269+ program .get ("changes_description" )
270+ or program .get ("metadata" , {}).get (
271+ "changes" , self .template_manager .get_fragment ("attempt_unknown_changes" )
272+ )
278273 )
279274
280275 # Format performance metrics using safe formatting
@@ -339,7 +334,9 @@ def _format_evolution_history(
339334 for i , program in enumerate (selected_top ):
340335 use_changes = self .config .programs_as_changes_description
341336 program_code = (
342- program .get ("changes_description" , "" ) if use_changes else program .get ("code" , "" )
337+ program .get ("changes_description" , "" )
338+ if use_changes
339+ else program .get ("code" , "" )
343340 )
344341 if not program_code :
345342 program_code = "<missing changes_description>" if use_changes else ""
@@ -354,20 +351,11 @@ def _format_evolution_history(
354351 for name , value in program .get ("metrics" , {}).items ():
355352 if isinstance (value , (int , float )):
356353 try :
357- key_features .append (
358- self .template_manager .get_fragment ("top_program_metrics_prefix" )
359- + f" { name } ({ value :.4f} )"
360- )
354+ key_features .append (self .template_manager .get_fragment ("top_program_metrics_prefix" ) + f" { name } ({ value :.4f} )" )
361355 except (ValueError , TypeError ):
362- key_features .append (
363- self .template_manager .get_fragment ("top_program_metrics_prefix" )
364- + f" { name } ({ value } )"
365- )
356+ key_features .append (self .template_manager .get_fragment ("top_program_metrics_prefix" ) + f" { name } ({ value } )" )
366357 else :
367- key_features .append (
368- self .template_manager .get_fragment ("top_program_metrics_prefix" )
369- + f" { name } ({ value } )"
370- )
358+ key_features .append (self .template_manager .get_fragment ("top_program_metrics_prefix" ) + f" { name } ({ value } )" )
371359
372360 key_features_str = ", " .join (key_features )
373361
@@ -397,11 +385,7 @@ def _format_evolution_history(
397385 # Use random sampling to get diverse programs
398386 diverse_programs = random .sample (remaining_programs , num_diverse )
399387
400- diverse_programs_str += (
401- "\n \n ## "
402- + self .template_manager .get_fragment ("diverse_programs_title" )
403- + "\n \n "
404- )
388+ diverse_programs_str += "\n \n ## " + self .template_manager .get_fragment ("diverse_programs_title" ) + "\n \n "
405389
406390 for i , program in enumerate (diverse_programs ):
407391 use_changes = self .config .programs_as_changes_description
@@ -420,8 +404,7 @@ def _format_evolution_history(
420404 key_features = program .get ("key_features" , [])
421405 if not key_features :
422406 key_features = [
423- self .template_manager .get_fragment ("diverse_program_metrics_prefix" )
424- + f" { name } "
407+ self .template_manager .get_fragment ("diverse_program_metrics_prefix" ) + f" { name } "
425408 for name in list (program .get ("metrics" , {}).keys ())[
426409 :2
427410 ] # Just first 2 metrics
@@ -433,9 +416,7 @@ def _format_evolution_history(
433416 top_program_template .format (
434417 program_number = f"D{ i + 1 } " ,
435418 score = f"{ score :.4f} " ,
436- language = (
437- "text" if self .config .programs_as_changes_description else language
438- ),
419+ language = ("text" if self .config .programs_as_changes_description else language ),
439420 program_snippet = program_code ,
440421 key_features = key_features_str ,
441422 )
@@ -485,7 +466,9 @@ def _format_inspirations_section(
485466 for i , program in enumerate (inspirations ):
486467 use_changes = self .config .programs_as_changes_description
487468 program_code = (
488- program .get ("changes_description" , "" ) if use_changes else program .get ("code" , "" )
469+ program .get ("changes_description" , "" )
470+ if use_changes
471+ else program .get ("code" , "" )
489472 )
490473 if not program_code :
491474 program_code = "<missing changes_description>" if use_changes else ""
@@ -568,24 +551,16 @@ def _extract_unique_features(self, program: Dict[str, Any]) -> str:
568551 and self .config .include_changes_under_chars
569552 and len (changes ) < self .config .include_changes_under_chars
570553 ):
571- features .append (
572- self .template_manager .get_fragment ("inspiration_changes_prefix" ).format (
573- changes = changes
574- )
575- )
554+ features .append (self .template_manager .get_fragment ("inspiration_changes_prefix" ).format (changes = changes ))
576555
577556 # Analyze metrics for standout characteristics
578557 metrics = program .get ("metrics" , {})
579558 for metric_name , value in metrics .items ():
580559 if isinstance (value , (int , float )):
581560 if value >= 0.9 :
582- features .append (
583- f"{ self .template_manager .get_fragment ('inspiration_metrics_excellent' ).format (metric_name = metric_name , value = value )} "
584- )
561+ features .append (f"{ self .template_manager .get_fragment ('inspiration_metrics_excellent' ).format (metric_name = metric_name , value = value )} " )
585562 elif value <= 0.3 :
586- features .append (
587- f"{ self .template_manager .get_fragment ('inspiration_metrics_alternative' ).format (metric_name = metric_name )} "
588- )
563+ features .append (f"{ self .template_manager .get_fragment ('inspiration_metrics_alternative' ).format (metric_name = metric_name )} " )
589564
590565 # Code-based features (simple heuristics)
591566 code = program .get ("code" , "" )
@@ -596,32 +571,22 @@ def _extract_unique_features(self, program: Dict[str, Any]) -> str:
596571 if "numpy" in code_lower or "np." in code_lower :
597572 features .append (self .template_manager .get_fragment ("inspiration_code_with_numpy" ))
598573 if "for" in code_lower and "while" in code_lower :
599- features .append (
600- self .template_manager .get_fragment ("inspiration_code_with_mixed_iteration" )
601- )
574+ features .append (self .template_manager .get_fragment ("inspiration_code_with_mixed_iteration" ))
602575 if (
603576 self .config .concise_implementation_max_lines
604577 and len (code .split ("\n " )) <= self .config .concise_implementation_max_lines
605578 ):
606- features .append (
607- self .template_manager .get_fragment ("inspiration_code_with_concise_line" )
608- )
579+ features .append (self .template_manager .get_fragment ("inspiration_code_with_concise_line" ))
609580 elif (
610581 self .config .comprehensive_implementation_min_lines
611582 and len (code .split ("\n " )) >= self .config .comprehensive_implementation_min_lines
612583 ):
613- features .append (
614- self .template_manager .get_fragment ("inspiration_code_with_comprehensive_line" )
615- )
584+ features .append (self .template_manager .get_fragment ("inspiration_code_with_comprehensive_line" ))
616585
617586 # Default if no specific features found
618587 if not features :
619588 program_type = self ._determine_program_type (program )
620- features .append (
621- self .template_manager .get_fragment ("inspiration_no_features_postfix" ).format (
622- program_type = program_type
623- )
624- )
589+ features .append (self .template_manager .get_fragment ("inspiration_no_features_postfix" ).format (program_type = program_type ))
625590
626591 # Use num_top_programs as limit for features (similar to how we limit programs)
627592 feature_limit = self .config .num_top_programs
@@ -664,12 +629,7 @@ def _render_artifacts(self, artifacts: Dict[str, Union[str, bytes]]) -> str:
664629 sections .append (f"### { key } \n ```\n { content } \n ```" )
665630
666631 if sections :
667- return (
668- "## "
669- + self .template_manager .get_fragment ("artifact_title" )
670- + "\n \n "
671- + "\n \n " .join (sections )
672- )
632+ return "## " + self .template_manager .get_fragment ("artifact_title" ) + "\n \n " + "\n \n " .join (sections )
673633 else :
674634 return ""
675635
0 commit comments