Longlichi is the vision-language model behind Hashtee's document products. This page is a working overview of what it does, why we built our stack around a VLM rather than a classical OCR pipeline, and where the research is heading.
The problem with reading paper as text
Classical OCR answers one question: what characters are on this page? That's the wrong question for most business paperwork. An invoice is not a wall of characters — it's a set of typed fields, a line-item table, a stamp that changes the document's meaning, and a handwritten correction in the margin that overrides the printed value.
A vision-language model answers a better question: what does this document say? Given a scan and a schema of what you need — invoice number, party names, line items with quantities — Longlichi returns typed, structured fields directly. There is no brittle chain of detect-then-recognise-then-parse stages to break when the layout shifts.
What it handles
Fields against a schema
Tables and line items
Handwriting, stamps, and mess
Described captures
Where it runs
Longlichi serves every Hashtee document surface: the Dodo scan appliance and app, the cloud extraction API, and the SDK paths (TypeScript and Python, plus a browser embed). The record shape is identical everywhere, so anything that reads one Longlichi record reads them all.
What we're working on
Current research directions, in plain terms:
- Multi-page documents — carrying context across pages so a six-page purchase order extracts as one record, not six.
- Confidence you can act on — per-field signals that are honest enough to drive review-only-what's-doubtful workflows.
- Smaller, closer models — pushing more of the read toward the edge, so documents can be processed without leaving the building.
If any of this overlaps with a problem you have in production, we'd like to hear about it — the fastest way is a short call.