The Problem
2 / 17
The Edison Papers Digital Edition hosts ∼154,000 digitized documents.
Browsing works. Metadata is rich.
But almost none of it is transcribed — so none of it is searchable as text.
149,619 documents without a transcription
4,147 done
2.7% transcribed.
Why This Is Hard
3 / 17
One real page from the archive (et0976):
This is the normal case, not the worst case.
How Transcriptions are Measured
4 / 17
Both metrics are edit distance, normalized by the reference length:
CER =
S + D + I
Nchars
S + D + I
WER =
N
words
S, D, I = substitutions, deletions, insertions.
Note: insertions count on top but not below — so CER can exceed 1.0. A model that hallucinates scores 6.11, not 1.0.
Worked example
reference: dear sir, i enclose the report
prediction: dear si, i enclose the report now
| Characters | Words |
Deleted | 1 (r) | 0 |
Inserted | 4 ( now) | 1 (now) |
Substituted | 0 | 1 (sir,) |
Reference length | 30 | 6 |
Score | 0.167 | 0.333 |
WER is harsher — one wrong character condemns a whole word.
Benchmarked 8 Methods
5 / 17
Method | Type | Docs | CER↓ | WER↓ | $/doc |
| | | | | |
PaddleOCR-VL → Qwen | Hybrid | 26 | 0.198 | 0.261 | 0.0076 |
docTR → Qwen | Hybrid | 26 | 0.220 | 0.278 | 0.090 |
Qwen3.6-27B | VLM | 26 | 0.218 | 0.276 | 0.0223 |
Qwen3.6-Flash | VLM | 26 | 0.235 | 0.299 | 0.0069 |
Llama-4-Scout | VLM | 26 | 0.234 | 0.324 | 0.0005 |
PaddleOCR-VL | OCR-VL | 26 | 0.244 | 0.320 | free |
Mistral-Small-3.2 | VLM | 26 | 0.452 | 0.503 | 0.0003 |
docTR | OCR | 26 | 0.516 | 0.823 | free |
26 documents from Volume 9, ground truth from the published book edition, every document hand-labeled with challenge tags.
Where Each Method Breaks Down
6 / 17
Green = lower error = better.
19th-century script
Why the Hybrid Performs Best in Our Benchmark
7 / 17
PaddleOCR-VL
local, free
+ faithful to the page – garbles hard glyphs
Qwen3.6-27B
cloud, paid
+ reads context – can hallucinate
Hybrid
draft anchors the model model repairs the draft
CER 0.199
draft text
+ page image
Archive Specific Prompting and Guardrails
Tag what the author didn’t write, inline: [Letterhead] [Stamp] [Marginal note]. Otherwise a researcher can’t tell Edison’s words from a mailroom stamp.
A curated gazetteer repairs “Leadowcroft” → “Meadowcroft” – but only where the page image supports the correction
“When uncertain, prefer continuation over inventing a split” — a missed boundary is one click to fix; a spurious one is a mess. Duplicate scans are flagged on a separate axis.
Titles follow a fixed pattern on the live site, so they’re computed in code, never generated.
page image
shows “Meadowcroft”
OCR draft
“Leadowcroft”
gazetteer
contains “Meadowcroft”
output
“Meadowcroft”
only because the image supports it
9 / 17
All three prompts are versioned files; every stored transcription records which version produced it.
What Was Built: Two Pipelines
9 / 17
Existing Documents (transcription)
Discover
Extract
Transcribe
Review
Export
New Documents (transcription + indexing)
Upload
Split
Confirm
Draft
+ index
Review
Export
Shared: the same hybrid engine, the same storage layer (file:// today, s3:// by config), the same review UI.
New on the bottom row: bulk scans have no document boundaries and no metadata — both have to be produced.
Where Does One Document End?
10 / 17
A scan folder is an ordered pile of images. Nothing records where one letter ends and the next begins.
The model proposes boundaries page by page; the reviewer confirms or corrects every one before anything is transcribed.
Scaling: a 70-page folder exceeds the request-size limit, so it is split into overlapping windows dispatched 3 at a time — 2.26× faster on a real 71-page batch.
Nothing Counts Until a Human Accepts It
11 / 17
Real output — the same 1888 page from earlier. It read the cursive, tagged the letterhead, pulled the angled marginal note, dated it 1888-02-04. Cost $0.0016.
Every field editable, raw AI output never overwritten, export takes only accepted documents.
What It Costs to Run
12 / 17
Measured cost
One single-page letter Benchmark avg (multi-page) PaddleOCR-VL draft pass
$0.0016
$0.0076
Free
Projected: all 149,619 documents
If mostly single-page
If multi-page average
∼$245
∼$1,420
Why it can’t run away
mid-batch failure never re-bills finished pages
The bottleneck isn’t cost — it’s review throughput.
What’s Done
against the live archive
13 / 17
149,619 documents
have a working path to transcription
$245 – $1,420
projected for the entire backlog
Every output provisional
a human accepts it before it counts
For Future Development: Archive → Research Platform
14 / 17
154,000 scanned documents
Omeka S — already existed
Machine-readable text + index
this summer’s work
Semantic search · APIs
future development
Each layer needs the one beneath it to exist first.
The original goal was to move the site from a static repository to a dynamic research platform. Semantic search and public APIs were always the destination — but neither is possible over images.
Now that the text and metadata exist:
Questions?
15 / 17