@@ -881,8 +881,8 @@ def extract_all(results: dict):
881881
882882                env_info  =  content .get ("environment_info" , {})
883883                row  =  {
884-                     "Timestamp" : safe_score (env_info , "timestamp_utc" ),
885884                    "Model" : safe_score (env_info .get ("parsed_arguments" , {}), "model" ),
885+                     "Timestamp" : safe_score (env_info , "timestamp_utc" ),
886886                }
887887
888888                results  =  content .get ("results" , {})
@@ -933,6 +933,16 @@ def setup_summarization_parser() -> argparse.ArgumentParser:
933933        help = "Group to filter results to. Requires specifying a subset. Default: first group." ,
934934    )
935935
936+     parser .add_argument (
937+         "--output" ,
938+         "-o" ,
939+         type = str ,
940+         choices = ["markdown" , "csv" ],
941+         dest = "output" ,
942+         default = "markdown" ,
943+         help = "Output format. Can be markdown or csv. Default: markdown" ,
944+     )
945+ 
936946    return  parser 
937947
938948
@@ -941,7 +951,13 @@ def summarize_cli():
941951    args  =  parser .parse_args ()
942952
943953    df  =  extract_scores (args .folder , args .subset , args .group )
944-     logger .info (df .to_markdown (index = False ))
954+ 
955+     if  args .output  ==  "markdown" :
956+         logger .info (df .to_markdown (index = False ))
957+     elif  args .output  ==  "csv" :
958+         logger .info (df .to_csv (index = False ))
959+     else :
960+         logger .error (f"Unsupported output format: { args .output }  " )
945961
946962
947963if  __name__  ==  "__main__" :
0 commit comments