Prepare remaining Qwen30 latency cases

This commit is contained in:
2026-07-18 01:00:41 +08:00
parent 65fee8450a
commit 44104bd96e
6 changed files with 650 additions and 15 deletions

View File

@@ -279,19 +279,23 @@ def score(path: Path, expected_shapes: list[tuple[int, int]]) -> dict[str, Any]:
ttfts = [float(row["ttft_ms"]) for row in request_metrics]
tpots = [float(row["tpot_ms"]) for row in request_metrics if row["tpot_ms"] is not None]
e2es = [float(row["e2e_ms"]) for row in request_metrics]
def summary(values: list[float]) -> dict[str, float | None]:
if not values:
return {"mean": None, "p50": None, "p90": None, "p95": None}
return {
"mean": sum(values) / len(values),
"p50": percentile(values, 0.50),
"p90": percentile(values, 0.90),
"p95": percentile(values, 0.95),
}
ttft_summary = summary(ttfts)
tpot_summary = summary(tpots)
e2e_summary = summary(e2es)
return {
"ttft_mean_ms": sum(ttfts) / len(ttfts),
"ttft_p50_ms": percentile(ttfts, 0.50),
"ttft_p90_ms": percentile(ttfts, 0.90),
"ttft_p95_ms": percentile(ttfts, 0.95),
"tpot_mean_ms": sum(tpots) / len(tpots),
"tpot_p50_ms": percentile(tpots, 0.50),
"tpot_p90_ms": percentile(tpots, 0.90),
"tpot_p95_ms": percentile(tpots, 0.95),
"e2e_mean_ms": sum(e2es) / len(e2es),
"e2e_p50_ms": percentile(e2es, 0.50),
"e2e_p90_ms": percentile(e2es, 0.90),
"e2e_p95_ms": percentile(e2es, 0.95),
**{f"ttft_{name}_ms": value for name, value in ttft_summary.items()},
**{f"tpot_{name}_ms": value for name, value in tpot_summary.items()},
**{f"e2e_{name}_ms": value for name, value in e2e_summary.items()},
"slos": slos,
}