Document extraction — at1 docextract
Document extractors fail silently: a supplier changes their layout and the reader hands back a confident wrong cell that lands in your ledger. at1 docextractlearns a template from a handful of sample statements or reports — one inference path, no per-vendor code — then extracts each cell bound to its page and byte offset in the source, with a certificate. When a document stops matching its learned template, a drift alarm trips instead of returning garbage.
Use it
# 1) learn a template from a few sample documents of the same kind
at1 docextract learn samples/*.pdf -o statement.template
# 2) extract each cell bound to its page + byte offset, with a certificate
at1 docextract extract invoice_2026-07.pdf --template statement.template -o cells.json
# 3) re-check a prior extraction still binds to the source
# (trips a DRIFT ALARM, exit 3, if the document no longer matches the template)
at1 docextract verify cells.json invoice_2026-07.pdfWhat it gives you
- Provenance — every extracted cell carries the exact page and byte offset it was read from, so a disputed value traces back to its spot in the original.
- A certificate — a signed record of where each value came from, re-checkable with
verify. - A drift alarm — when a layout diverges from the template, extraction refuses (exit 3) rather than confidently mis-reading a field.
Honest scope
This is strongest on consistent, templateddocuments — the same statement or report from the same source. It reads what the source actually contains and binds it to bytes; it does not correct a value that was wrong in the original. The right check is your acceptance test on real data: feed it a genuinely re-laid-out document and confirm it alarms. Validated on synthetic templated documents; partner acceptance on real statements is pending.
Pairs naturally with the verifiable analytics receipt and the AT-1 Ledger. See the marketing overview at Document Extraction.