Calibração e congelamento da configuração (tarefas 60–62)

- config/calibration.json: temperatura e limiar de abstenção por candidato e
  dispositivo, ajustados só na partição de calibração.
- config/frozen.json: hashes de configuração, calibração, partições,
  adaptadores, contrato e ambientes; libera a partição de teste.
- Q6: lote de produção = 1; tarefa 65 não se aplica neste ciclo (D4).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Marcos Lohmann
2026-10-07 18:54:20 -03:00
parent 8e5e78b841
commit d4564d9c1d
19 changed files with 7338 additions and 12 deletions

View File

@@ -163,6 +163,7 @@ def main():
"candidate": adapter.describe(), "precision": model_precision(adapter), "device": args.device,
"split": args.split, "examples": len(rows), "seed": args.seed, "warmup": args.warmup,
"batch_size": 1, "state_budget_tokens": args.state_budget, **guard,
"repetition": int(os.environ.get("DMB_REP", "1")),
"load_seconds": round(load_s, 2),
"warmup_latency_ms": [round(r["latency_ms"], 1) for r in rows if r["warmup"]],
"latency_ms": latency_summary([r["latency_ms"] for r in measured if r.get("pred") is not None]),