Satchel Hamilton
← Projects
AI

Bonafide — calibrated detection of AI-generated media

A provenance-first framework for judging whether media is AI-generated — it fuses cryptographic provenance, watermarks, and ML detectors into one calibrated probability with a confidence interval, and abstains when the evidence is weak instead of guessing.

Source ↗

Most "AI-or-not" detectors return a confident number and hope you don't check its track record. Bonafide is built the other way around: it fuses hard cryptographic provenance (C2PA / Content Credentials), watermark signals, and ML detectors into a single calibrated probability with a confidence interval — and when the evidence is thin, it abstains rather than guess. The thesis is the same one that runs through everything here: be honest about what you know and what you don't.

What's technically interesting

The interesting engineering is the calibration and abstention core, not the detectors. A raw model score isn't a probability; Bonafide runs isotonic calibration so the number means something — measured, its expected calibration error dropped from 0.069 to 0.008 — and a conformal-abstention layer converts "not sure" into an explicit abstain instead of a misleading 50%. The image path is real today: a trust-verified C2PA / Content Credentials signal, so a cryptographically-signed provenance claim is treated as hard evidence rather than one more guess. It's a Python framework (Pydantic v2, a FastAPI service, a Typer CLI) with 81 tests, published to PyPI as bonafide.

Status

Honest about its own maturity: the image provenance signal and the calibration/abstention core are built and tested (milestone M2a); the neural text-detection ensemble is the next milestone, so on text Bonafide currently leans on a placeholder and mostly, correctly, abstains. That's the intended behavior for an unfinished signal — a detector that abstains beats one that bluffs.