kiruluta's picture
Upload folder using huggingface_hub
1398681 verified
Raw History Blame
2.96 kB
#!/usr/bin/env python3
import argparse
import csv
import json
from pathlib import Path
p = argparse.ArgumentParser()
p.add_argument("results_dir", nargs="?", default="results")
p.add_argument("--out", default="results/leaderboard.csv")
p.add_argument(
"--manifest",
default=None,
help="Optional text file listing result JSON filenames to include.",
)
a = p.parse_args()
rows = []
results_dir = Path(a.results_dir)
if a.manifest:
manifest = Path(a.manifest)
names = [
line.strip()
for line in manifest.read_text().splitlines()
if line.strip() and not line.lstrip().startswith("#")
]
result_files = [results_dir / name for name in names]
else:
result_files = sorted(results_dir.glob("*.json"))
for f in result_files:
try:
x = json.loads(f.read_text())
c = x.get("config", {})
s = x.get("system", {})
rows.append({
"file": f.name,
"candidate": x.get("candidate"),
"seed": c.get("seed"),
"candidate_seed": c.get("candidate_seed"),
"n_slices": c.get("n_slices"),
"n_experts": c.get("n_experts"),
"rank": c.get("rank"),
"m_coarse": c.get("m_coarse"),
"m_focused": c.get("m_focused"),
"items_per_row": c.get("items_per_row"),
"bootstrap_reps": c.get("bootstrap_reps"),
"lambda_l1": c.get("lambda_l1"),
"lambda_group": c.get("lambda_group"),
"gpu_count": s.get("gpu_count"),
"gpus": "; ".join(s.get("gpus", []) or []),
"wall_seconds": x.get("wall_seconds"),
"pilot_residual": x.get("pilot_residual"),
"dense_fallback": x.get("dense_fallback"),
"gate_decision": x.get("gate_decision"),
"support_f1": x.get("support_f1"),
"normalized_delta_error": x.get("normalized_delta_error"),
"regression_recall": x.get("regression_recall"),
"items_probe": x.get("items_probe"),
"items_sense": x.get("items_sense"),
"items_anchor": x.get("items_anchor"),
"true_experts": ";".join(
map(str, x.get("true_experts", []) or [])
),
"nominated_experts": ";".join(
map(str, x.get("nominated_experts", []) or [])
),
"recovered_experts": ";".join(
map(str, x.get("recovered_experts", []) or [])
),
"bootstrap_frequencies": ";".join(
map(str, x.get("bootstrap_frequencies", []) or [])
),
})
except Exception as e:
print(f"warning: skipped {f}: {e}")
Path(a.out).parent.mkdir(parents=True, exist_ok=True)
if rows:
with open(a.out, "w", newline="") as h:
w = csv.DictWriter(h, fieldnames=rows[0].keys())
w.writeheader()
w.writerows(rows)
print(f"wrote {len(rows)} rows to {a.out}")