WigtnOCR v1
A LoRA adapter over Qwen3-VL-2B-Instruct that reads Korean government documents, with the 294-page KoGovDoc-Bench set and the training and evaluation code, all Apache 2.0.
WigtnOCR is public, and this is the first release of it. The model lives at Wigtn/Qwen3-VL-2B-WigtnOCR on HuggingFace, the 294-page evaluation set beside it as Wigtn/KoGovDoc-Bench, and the training and evaluation code on GitHub. Apache 2.0, all of it.
What it does
It is a LoRA adapter over Qwen3-VL-2B-Instruct, trained to turn Korean government PDFs into structured Markdown, with headings, tables, forms and reading order preserved in one pass rather than a bag of recovered characters. The structure is the point: what a downstream retriever gets is a document it can chunk, not a page of loose characters in reading order it has to guess at.
Get it
The model id is Wigtn/Qwen3-VL-2B-WigtnOCR. To serve it:
vllm serve Wigtn/Qwen3-VL-2B-WigtnOCR --max-model-len 16384 --trust-remote-code
It is an adapter and not merged weights, so Qwen/Qwen3-VL-2B-Instruct comes down with it. The transformers loading snippet is on the model card. Feed it pages at 200 DPI: that is the resolution the card lists as the one it performs best at, and lower inputs degrade the output.
What shipped
- Wigtn/Qwen3-VL-2B-WigtnOCR on HuggingFace, a LoRA adapter at rank 8, alpha 32, applied to the language model's linear layers. The vision encoder and the aligner were frozen during training and are unchanged from the base model.
- Wigtn/KoGovDoc-Bench on HuggingFace: the 294-page Korean government document set held out of training.
- github.com/wigtn/wigtnOCR-v1: the training recipe (ms-swift with DeepSpeed ZeRO-2) and the evaluation code.
- Apache 2.0 across the model, the dataset and the code.
What is not in it: a pip package. The unified parse → Markdown → chunk library, wigtnocr, is the next layer of this project and is still under development. Today you get an adapter and an evaluation harness, not a one-line document pipeline.
Read the report
The pseudo-label pipeline, the judge design and why it scores text without the source image, the LoRA rank ablation, and the full OmniDocBench and retrieval breakdowns are all in the WigtnOCR tech report. The repository carries the code those tables were produced with.
Working on something like this? Let's talk.
Talk to us