A newer version of the Gradio SDK is available: 6.20.0
title: Reconciliation Workbench
emoji: π§Ύ
colorFrom: indigo
colorTo: green
sdk: gradio
sdk_version: 6.16.0
app_file: space_app.py
pinned: false
short_description: Small model reads financials; engine catches OCR errors
tags:
- build-small-hackathon
- gradio
- track:backyard
- sponsor:openbmb
- achievement:offbrand
- achievement:fieldnotes
- backyard-ai
- tiny-titan
- best-demo
- bonus-quest-champion
- off-brand
- field-notes
- minicpm
- small-models
- ocr
- document-understanding
- finance
Reconciliation Workbench
An audit "tie-out" desk on a live statement. A small model (MiniCPM-V 4.6, ~1.3B) reads the financial report; a deterministic engine does every piece of arithmetic to catch the numeric errors OCR introduces β leading-digit insertions, trailing truncations, column misalignment, garbled characters. Every number traces back to its place in the source PDF, explains its reconciliation relationship, and (in the full version) can be hand-corrected and re-checked, leaving an exportable audit trail.
Backyard AI track. The unglamorous, real-world problem an auditor faces every day: a 300-page Chinese annual report or prospectus is OCR'd, and a single misread digit silently breaks a balance sheet. This catches those β and never "helpfully" rewrites the source.
Why "small" (Build Small Hackathon Β· β€ 32B)
You do not need a giant LLM to audit a financial statement. Reading is for a small model (MiniCPM-V 4.6, ~1.3B, well under the Tiny Titan β€ 4B bar). Arithmetic is for code: every add, subtotal and cross-foot happens in a pure-function deterministic engine. Moving the error-prone math out of the model is exactly why it catches OCR errors instead of inventing new ones β a model that "reads and computes" would hallucinate a plausible-but-wrong total.
Try it (two bundled samples, zero keys)
- Sanmu Group 2024 Annual Report β real PDF with per-digit pixel highlighting; tri-state overlay (green = reconciled Β· red = suspected OCR error Β· grey = not covered by rules).
- A Prospectus β the engine catches subtotal reconciliation errors on the consolidated balance sheet; a verification queue you can step through.
Pick a sample on the top-right; open each finding; click a flagged number to see it light up in the PDF, the live sheet and the focus card at once.
βΉοΈ This is a read-only public demo. Live PDF upload and the human-correction β recompute β audit-trail loop run the deterministic engine, which is proprietary and not shipped in this public demo. See the demo video below for those in action.
How it works
A single custom gr.HTML island (pdf.js + live sheet + verification panel + all interaction)
ββ payload: small model reads + structures β deterministic engine reconciles β tri-state findings
- Off-Brand UI: not a stack of default Gradio components β one custom
gr.HTMLisland withserver_functions, a realpdf.jsviewer, tri-state bbox overlays, a keyboard-driven review queue. - Iron rule: extraction and arithmetic are separated; the raw OCR value is immutable; a human correction is a new, traceable transaction β the original is always kept as a reference column.
- Fail-loud: "N tables dropped during location Β· 0 findings β error-free" β never disguises "couldn't extract" as "nothing wrong."
Demo video
πΉ Watch the 3-minute demo β also bundled in this Space as demo.mp4.
A 1.3B model reads a real annual-report PDF β the deterministic engine flags a balance-sheet subtotal that doesn't tie β apply the engine-inferred correction β it recomputes and re-ties (β Closed), with a full, tamper-proof audit trail.
π£ Social post: https://x.com/kl8lk0111/status/2066478477570883983
What this submission targets
- Track β Backyard AI (
track:backyard): a real document/bill-parsing tool for a real job. - Best MiniCPM Build (
sponsor:openbmb): MiniCPM-V 4.6 is the reading engine. - Tiny Titan (
tiny-titan): the only model is ~1.3B β biggest impact from the smallest weights. - Off Brand (
achievement:offbrand): a fully custom island UI viagr.HTML+ server functions. - Best Demo / Field Notes: see the demo video and this write-up.
Source note: this public demo ships the frontend + pre-computed sample results only. The deterministic reconciliation engine and the extraction pipeline are proprietary and not included.