@@ -17,6 +17,7 @@ def log_detailed_metrics_after_discovering_new_program(
1717 linear_pareto_front_program_idx ,
1818 valset_size : int ,
1919 val_evaluation_policy : EvaluationPolicy [DataId , DataInst ],
20+ log_individual_valset_scores_and_programs : bool = False
2021):
2122 # best_prog_per_agg_val_score = idxmax(gepa_state.program_full_scores_val_set)
2223 best_prog_per_agg_val_score = val_evaluation_policy .get_best_program (gepa_state )
@@ -60,8 +61,6 @@ def log_detailed_metrics_after_discovering_new_program(
6061 metrics = {
6162 "iteration" : gepa_state .i + 1 ,
6263 "new_program_idx" : new_program_idx ,
63- "valset_pareto_front_scores" : dict (gepa_state .pareto_front_valset ),
64- "individual_valset_score_new_program" : dict (valset_subscores ),
6564 "valset_pareto_front_agg" : pareto_avg ,
6665 "valset_pareto_front_programs" : {k : list (v ) for k , v in gepa_state .program_at_pareto_front_valset .items ()},
6766 "best_valset_agg_score" : best_score_on_valset ,
@@ -72,5 +71,10 @@ def log_detailed_metrics_after_discovering_new_program(
7271 "val_total_count" : valset_size ,
7372 "val_program_average" : valset_score ,
7473 }
74+ if log_individual_valset_scores_and_programs :
75+ metrics .update ({
76+ "valset_pareto_front_scores" : dict (gepa_state .pareto_front_valset ),
77+ "individual_valset_score_new_program" : dict (valset_subscores ),
78+ })
7579
7680 experiment_tracker .log_metrics (metrics , step = gepa_state .i + 1 )
0 commit comments