#!/usr/bin/env python3 """Fill the KLD table into ALIA README.md + render charts (reference = Q8_0).""" import csv, os import matplotlib; matplotlib.use("Agg") import matplotlib.pyplot as plt W = "/Users/kikocisneros/coco_ppl/aq_alia40" PUB = f"{W}/publish" CSV = f"{W}/metrics/quant-summary.csv" os.makedirs(f"{PUB}/metrics", exist_ok=True) rows = list(csv.DictReader(open(CSV))) def f(x, d=0.0): try: return float(x) except: return d order = sorted(rows, key=lambda r: -f(r["size_gb"])) hdr = "| Model | Size GB | KLD mean | KLD p95 | KLD max | Top-1 match |\n|---|---:|---:|---:|---:|---:|" lines = [hdr] for r in order: n = r["name"] if "ref" in n.lower() or n == "Q8_0-ref": lines.append(f"| **Q8_0 (reference)** | {f(r['size_gb']):.1f} | 0.0000 | 0.0000 | 0.0000 | 100.0% |") else: lines.append(f"| {n} | {f(r['size_gb']):.2f} | {f(r['kld_mean']):.4f} | {f(r['kld_p95']):.4f} | {f(r['kld_max']):.3f} | {f(r['top1_match_pct']):.2f}% |") table = "\n".join(lines) rd = open(f"{PUB}/README.md").read().replace("", table) open(f"{PUB}/README.md", "w").write(rd) print("table:\n"+table) q = [r for r in order if "ref" not in r["name"].lower()] q = sorted(q, key=lambda r: f(r["size_gb"])) names=[r["name"] for r in q]; sizes=[f(r["size_gb"]) for r in q]; klds=[f(r["kld_mean"]) for r in q]; t1=[f(r["top1_match_pct"]) for r in q] plt.figure(figsize=(7,4.2)); plt.plot(sizes,klds,"o-",color="#d62728",lw=2,ms=7) for x,y,nm in zip(sizes,klds,names): plt.annotate(nm,(x,y),textcoords="offset points",xytext=(6,6),fontsize=8) plt.yscale("log"); plt.xlabel("file size (GB)"); plt.ylabel("KLD mean (nats, log) — lower = closer to Q8") plt.title("ALIA-40b GGUF — fidelity vs size (KLD vs Q8, es)"); plt.grid(True,which="both",alpha=0.3); plt.tight_layout() plt.savefig(f"{PUB}/metrics/chart-kld-vs-size.png",dpi=130); plt.close() plt.figure(figsize=(7,4.2)); b=plt.bar(names,t1,color="#ff7f0e") for bb,v in zip(b,t1): plt.text(bb.get_x()+bb.get_width()/2,v+0.4,f"{v:.1f}",ha="center",fontsize=8) plt.ylabel("Top-1 match vs Q8 (%)"); plt.ylim(min(t1)-3,100.5); plt.title("ALIA-40b GGUF — top-1 agreement with Q8"); plt.grid(True,axis="y",alpha=0.3); plt.tight_layout() plt.savefig(f"{PUB}/metrics/chart-top1.png",dpi=130); plt.close() import shutil; shutil.copy(CSV, f"{PUB}/metrics/quant-summary.csv") print("charts + csv ->", f"{PUB}/metrics/")