Skip to content

Document intelligence

The ugly scan, made workable

Upload the PDF as it arrived; get structured Markdown, tables intact.

Documents · Financial statements 1403.pdf
Financial statements 1403.pdf48 pages
Done0 pages lost
  • ## Statement of financial position
  • | Account | 1403 | 1402 |
  • | Cash and equivalents | 84,120 | 61,540 |
  • | Trade receivables | 402,880 | 366,210 |

Page 12 validated by Sara

The path a document takes

Four steps, and you can see the state at each one

  1. Upload

    Streamed to disk under a size cap your workspace admin sets. The job is queued, not run inside the web request.

  2. Prepare

    Pages render at the DPI you choose. Scanned documents are detected, and embedded images are extracted where that reads better.

  3. Read

    Pages are sent to the model concurrently, with retries and backoff for transient failures. Temperature stays at zero — this is transcription, not creativity.

  4. Validate

    A reviewer works page by page, edits what the model got wrong, and completes the document. Validated copies are kept separately from the raw output.

Capabilities

The details that decide whether it survives real files

  • Two reading modes

    Page-by-page for control and per-page evidence, or the whole PDF in a single call when the document is short and the model supports it.

  • Scanned-document detection

    The engine decides whether a PDF has a usable text layer or is a picture of a page, and takes the right path for each.

  • DPI and concurrency you control

    Render resolution and how many pages are in flight are tuning values, not guesses baked into code — with the rationale kept beside them.

  • Failures are named

    A page that fails is reported with its page number and reason. A run that produces nothing is marked failed, never quietly done.

  • Retry that merges

    Re-running a lossy document processes only the missing pages and merges them into the existing output, keeping the numbering you already cited.

  • Prompts are configuration

    The transcription instructions live in a YAML file, not in code — including the strict table rules and the faster, plainer variant.

Validation

The model drafts. A person signs.

Validation is a first-class state, not a checkbox. Each page is saved against a hash of what was reviewed, so two people cannot silently overwrite each other's work.

When the last page is done, the validated document is assembled as its own artefact — the raw model output stays untouched beside it for audit.

  • Per-page save, hash-checked
  • Validated copies separate from raw output
  • Assembly on completion
  • Users act on their own documents; the workspace pool stays visible to the team
Documents · Financial statements 1403.pdf
Financial statements 1403.pdf48 pages
Done0 pages lost
  • ## Statement of financial position
  • | Account | 1403 | 1402 |
  • | Cash and equivalents | 84,120 | 61,540 |
  • | Trade receivables | 402,880 | 366,210 |

Page 12 validated by Sara

Choosing a mode

Page-by-page or one call

Page-by-pageSingle call
Best forLong or scanned documentsShort, clean PDFs
Per-page evidence
Partial recovery on failure
Validation workflow
Model requirementAny vision modelMust accept a whole PDF

What you get back

The output is a working artefact, not a blob

  • One Markdown file per page, numbered with a pad derived from the page count
  • A combined document you can search, cite and spread
  • A run report: pages read, pages failed with reasons, truncation flags, time and cost
  • The validated document, assembled separately from the raw output
  • A retry path that adds recovered pages instead of restarting the job
  • Every result attached to the client and engagement it belongs to

About reading documents

  • How accurate is it on Persian scans?
    Good enough to work from, and never trusted blindly — which is why validation exists. Accuracy depends on the scan and the model you point at; the engine's job is to make what the model missed visible instead of hiding it.
  • Can we use our own model?
    Yes. The endpoint, model name and sampling settings are configuration. Teams run hosted vision models, their own gateway, or a model inside their network for on-premises deployments.
  • What happens to the file after processing?
    It stays in your workspace's storage — one directory on the deployment you chose — alongside the rendered pages and results. Nothing is sent anywhere except the model endpoint you configured.
  • Is there a page limit?
    There is an upload size cap that your workspace admin sets, and a fair-use page allowance on cloud plans. Long documents are processed page by page, so a 400-page file is a scheduling question, not a wall.

See it read your own document

Bring one file you already know well. Thirty minutes is enough to tell whether this belongs in your firm.