@@ -273,7 +273,7 @@ async def benchmark(
273
273
await asyncio .gather (* tasks )
274
274
275
275
276
- def save_json_results (args : argparse .Namespace , benchmark_result ):
276
+ def save_json_results (args : argparse .Namespace , benchmark_result , server_metrics ):
277
277
# Setup
278
278
start_dt_proto = Timestamp ()
279
279
start_dt_proto .FromDatetime (args .start_datetime )
@@ -285,8 +285,9 @@ def save_json_results(args: argparse.Namespace, benchmark_result):
285
285
"num_prompts" : args .num_prompts ,
286
286
"request_rate" : args .request_rate ,
287
287
'server_metrics' : {
288
- ** benchmark_result .get ("metric_names" , {})
289
- }
288
+ ** server_metrics .get ("metric_names" , {})
289
+ },
290
+ ** benchmark_result
290
291
},
291
292
# dimensions values are strings
292
293
"dimensions" : {
@@ -303,7 +304,7 @@ def save_json_results(args: argparse.Namespace, benchmark_result):
303
304
},
304
305
"summary_stats" : {
305
306
"stats" : {
306
- ** benchmark_result .get ("metric_aliases" , {})
307
+ ** server_metrics .get ("metric_aliases" , {})
307
308
}
308
309
}
309
310
}
@@ -534,15 +535,11 @@ def main(args: argparse.Namespace):
534
535
)
535
536
benchmark_result ['avg_output_len' ] = avg_output_len
536
537
538
+ server_metrics = {}
537
539
if args .scrape_server_metrics :
538
540
server_metrics = print_metrics (metrics_to_scrape (args .backend ), benchmark_time , args .backend )
539
- benchmark_result = {
540
- ** benchmark_result ,
541
- ** (server_metrics if server_metrics else {}),
542
- }
543
-
544
541
if args .save_json_results :
545
- save_json_results (args , benchmark_result )
542
+ save_json_results (args , benchmark_result , server_metrics )
546
543
547
544
548
545
if __name__ == "__main__" :
@@ -672,4 +669,4 @@ def main(args: argparse.Namespace):
672
669
help = "Whether to scrape server metrics." ,
673
670
)
674
671
cmd_args = parser .parse_args ()
675
- main (cmd_args )
672
+ main (cmd_args )
0 commit comments