YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

Built with ML Intern

formcheck-vlm v4 (detection-first)

~17M-parameter detection-first model: ViT-8L/384 encoder + per-cell detection head predicting presence, bbox, type, state, and label (closed 736-label vocab) for every control on the page. JSON is assembled rule-based from detections, so any prompt template maps to output without relying on autoregressive grounding.

Results

Synthetic val (48 pages, 12k steps on 40k pages)

metric v3 (text VLM + aux) v4 (detection-first)
detection recall / precision β€” 0.940 / 0.986
per-control state accuracy 0.036 0.994
label accuracy β€” 0.653
full-page exact match 0.104 0.042*
mean box-count error β€” 0.060

*v4's page_exact requires all labels AND states AND counts correct; its state accuracy is near-perfect and its JSON output is valid by construction (rule-based emitter covers all 6 prompt templates, including single-control lookup).

Real scans (Apache-2.0 CommonForms, 200 pages)

metric v3 (text VLM) v4 (detection)
JSON parse / detection P-R 0.125 / β€” β€” / 0.022–0.059
box-count within Β±1 0.010 0.095

The real-scan domain gap is now the dominant error for every version. Clean synthetic pages transfer poorly to real scans (unseen fonts, densities, box styles, 384px squashed full pages). Next lever: domain adaptation β€” mix CommonForms pages (crop + synthetic fill for state pairs, the Apache-2.0-blessed trick from wendys-llc) at 5-10% into training, and/or pseudo-label real pages with wendys-llc/checkbox-detector.

Spec

  • Heads per 16px cell: presence (BCE, x2 weight), bbox (L1), type (CE x3), state (CE x9), label (CE x736); losses averaged on occupied cells
  • Inference: cells with sigmoid > 0.5 β†’ detections sorted in reading order β†’ rule-based JSON
  • Config: {"grid": 24, "cell": 16, "img": 384, "labels": 736, "params_m": 17.4}

Files

pytorch_model.bin Β· config.json Β· job_train.py (renderer with detection records) Β· det_train.py (model, losses, emitter, eval)

Licensing

Everything used is commercially usable: synthetic pipeline (own code), eval data CommonForms (Apache-2.0). FUNSD/XFUND/CheckboxQA/RVL-CDIP excluded as non-commercial.

Downloads last month
37
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Space using akhilbattula/formcheck-vlm-v4 1