Spaces:
Configuration error
Configuration error
Upload stratego/benchmarking/summary_writer.py with huggingface_hub
Browse files
stratego/benchmarking/summary_writer.py
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# stratego/benchmarking/summary_csv_logger.py
|
| 2 |
+
|
| 3 |
+
import csv
|
| 4 |
+
import os
|
| 5 |
+
from datetime import datetime
|
| 6 |
+
|
| 7 |
+
OUTPUT_DIR = "stratego/benchmarking/output/summaries"
|
| 8 |
+
|
| 9 |
+
|
| 10 |
+
def write_summary_csv(
|
| 11 |
+
summary: dict,
|
| 12 |
+
games: int,
|
| 13 |
+
size: int,
|
| 14 |
+
model_p0: str,
|
| 15 |
+
model_p1: str,
|
| 16 |
+
source_benchmark_csv: str
|
| 17 |
+
):
|
| 18 |
+
os.makedirs(OUTPUT_DIR, exist_ok=True)
|
| 19 |
+
|
| 20 |
+
timestamp = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
|
| 21 |
+
filename = f"summary_{timestamp}_{games}games.csv"
|
| 22 |
+
|
| 23 |
+
with open(os.path.join(OUTPUT_DIR, filename), "w", newline="", encoding="utf-8") as f:
|
| 24 |
+
writer = csv.writer(f)
|
| 25 |
+
|
| 26 |
+
writer.writerow([
|
| 27 |
+
"games",
|
| 28 |
+
"board_size",
|
| 29 |
+
"model_p0",
|
| 30 |
+
"model_p1",
|
| 31 |
+
"source_benchmark_csv",
|
| 32 |
+
"wins_p0",
|
| 33 |
+
"wins_p1",
|
| 34 |
+
"draws",
|
| 35 |
+
"win_rate_p0",
|
| 36 |
+
"win_rate_p1",
|
| 37 |
+
"ended_invalid",
|
| 38 |
+
"ended_flag",
|
| 39 |
+
"ended_no_moves",
|
| 40 |
+
"ended_turn_limit",
|
| 41 |
+
"avg_game_length",
|
| 42 |
+
"avg_invalid_moves_p0",
|
| 43 |
+
"avg_invalid_moves_p1",
|
| 44 |
+
"avg_repetitions"
|
| 45 |
+
])
|
| 46 |
+
|
| 47 |
+
writer.writerow([
|
| 48 |
+
games,
|
| 49 |
+
size,
|
| 50 |
+
model_p0,
|
| 51 |
+
model_p1,
|
| 52 |
+
source_benchmark_csv,
|
| 53 |
+
summary["Wins P0"],
|
| 54 |
+
summary["Wins P1"],
|
| 55 |
+
summary["Draws"],
|
| 56 |
+
summary["Win Rate P0"],
|
| 57 |
+
summary["Win Rate P1"],
|
| 58 |
+
summary["Ended by Invalid Move"],
|
| 59 |
+
summary["Ended by Flag"],
|
| 60 |
+
summary["Ended by No Moves"],
|
| 61 |
+
summary["Ended by Turn Limit"],
|
| 62 |
+
summary["Avg Game Length"],
|
| 63 |
+
summary["Avg Invalid Moves P0"],
|
| 64 |
+
summary["Avg Invalid Moves P1"],
|
| 65 |
+
summary["Avg Repetitions"]
|
| 66 |
+
])
|