Read receipts and handwriting more accurately than Mistral OCR 4.1, for 93% less
Send a photo of a receipt or a handwritten note and get its text back, with amounts, dates and names as written. SIE runs GLM‑OCR, an open model built to read documents, and charges per photo.
GLM-OCR on SIE
Every amount as printed
1 Nila Bakar/Goreng 27,500 1 Sop Gurame 87,000 1 Teh Poci 25,000
GPT‑6 Luna and Mistral OCR 4.1 change and drop receipt amounts
GPT-6 Luna, max reasoning
Amounts changed in 3 of 5 runs
1 Nila Bakar/Goreng 77.500 1 Sop Durian 37.000 1 Teh Poci 25.000
Mistral OCR 4.1
5 of 7 amounts missing
79,000 1 BLACK PEPPER MEATBALL PAS 1 TRUFFLE CREAM 1 EARL GREY MILK TEA SUBTTL Service Charge 6% TAX 10% TOTAL 250,690
Not in the reply: 77,000 · 59,000 · 215,000 · 12,900 · 22,790
- arXiv:2605.22413 Study of 10,656 receipts: AI models change line-item prices to make the total add up
From Recognition to Reasoning: Benchmarking and Enhancing MLLMs on Real-World Receipt Document Understanding
“To force the sum of detail items to match the std_total, models occasionally alter the price of a line item”
- arXiv:2608.18586 CIKM 2026 Study of 13 AI models on handwriting: they may correct, complete or invent text instead of copying it
OmniHandwritingOCR: A Diagnostic Benchmark for Evaluating Multimodal LLMs in Handwritten OCR Scenarios
“models may correct, complete, or fabricate content rather than transcribe what is visually present”
Ahead of Mistral OCR 4.1 and GPT‑6 Luna, at the lowest price tested
| Model | Photos read correctly | Cost per 1,000 photos |
|---|---|---|
| GLM-OCR on SIE | 71.0% | $0.25 |
| Claude Haiku 5.5 | 72.3% | $0.31 |
| GPT-6 Luna (max reasoning) | 66.1% | $2.39 |
| Mistral OCR 4.1 | 62.1% | $4.00 |
| Claude Sonnet 5.5 | 78.0% | $6.40 |
| GPT-6.1 Sol (low reasoning) | 78.2% | $6.64 |
372 public photos: 200 receipts and 172 handwritten pages
- Correct
- Every line read, with every amount, date, name and number as written
- Lead
- 8.9 points more photos correct than Mistral OCR 4.1 (95% interval 4.0 to 13.7)
- Prices
- Real-time list prices on each model's recorded usage; SIE Serverless from 2026-10-13
Send a photo, get its text back
from pathlib import Pathfrom sie_sdk import SIEClientclient = SIEClient(api_key="API keysk-sie-…")image = {"data": Path(imagereceipt.jpgbrowse).read_bytes(), "format": "jpeg"}result = client.extract( "modelzai-org/GLM-OCR", {"images": [image]},)print(result["entities"][0]["text"])import { readFile } from 'node:fs/promises';
import { SIEClient } from '@superlinked/sie-sdk';
const client = new SIEClient(undefined, { apiKey: 'sk-sie-…' });
const image = await readFile("receipt.jpg");
const result = await client.extract(
'zai-org/GLM-OCR',
{ images: [image] },
{ labels: [] },
);
console.log(result.entities[0].text);images_bytes=$(base64 < 'receipt.jpg' | tr -d '\n')
curl https://api.superlinked.com/v1/extract/zai-org%2FGLM-OCR \
-H "Authorization: Bearer sk-sie-…" \
-H "Content-Type: application/json" \
-d "{\"items\":[{\"images\":[{\"data\":\"$images_bytes\",\"format\":\"jpeg\"}]}]}"Build the "OCR" capability into my app using the Superlinked Inference Engine (SIE).
Context
- SIE is an OpenAI-style inference API. Python SDK: `from sie_sdk import SIEClient`; TypeScript: `@superlinked/sie-sdk`.
- Base URL: https://api.superlinked.com (or my regional endpoint). Auth: Bearer key from env `SIE_API_KEY` (never hard-code it).
- Model: zai-org/GLM-OCR (SIE primitive: /extract). Keep the model id configurable.
Task
- Input: an uploaded image containing text.
- Behaviour: return the text visible in the image
- Call the selected SIE primitive once per request and map the response into your domain type.
Deliverables
- A typed client wrapper, an application-level function for this task, error handling for timeouts/empty input, and unit tests with a stubbed client.
- Wire it into my existing stack (ask me which framework if unclear) and add a short usage example.2 Ayam Bakar 55,000 2 Nasi Putih 20,000 1 Nila Bakar/Goreng 27,500 1 Sop Gurame 87,000 1 Teh Poci 25,000 SUBTOTAL 214,500 Service 12,870 Pajak Restoran 22,737 TOTAL 250,107
Read a million photos for $250
Serverless API
We host the models; you call one API.
- No idle GPUs, pay for what you use
- SOC 2 Type 2, US or EU data residency
- $50 of credit to start, no card required
Self-hosted (Kubernetes)
SIE in your clusters, backed by our engineers.
- Data stays in your own cloud account
- Same models and API as Serverless
- Terraform to your cloud in minutes
Run locally
The open-source server on your own machine.
docker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cuda12-sglang-vision-extract