NuExtract 2.0: Outclassing Frontier LLMs in Information Extraction

Alexandre Constantin
Machine Learning Scientist

Liam Cripwell
Machine Learning Scientist

Nathan Fradet
Machine Learning Scientist

Sören Dréano
Machine Learning Engineer

Etienne Bernard
Co-Founder & CEO
July 16, 2025
We introduce NuExtract 2.0, the latest version of our LLM specialized in extracting structured information (document to JSON). NuExtract 2.0 brings vision, abstraction, and in-context learning abilities. We release open-source versions in the 2B-8B parameter range, and give access via API to our biggest model — NuExtract 2.0 PRO — which largely outperforms GPT-4.1 (+9 F-Score) and other frontier models.
Quick Links
- 🖥️ NuExtract Platform — to use NuExtract
- 🤗 NuExtract 2.0 Models on HuggingFace
- 📁 GitHub Repository — inference & fine-tuning scripts
- 🗣️ Discord — support & updates
NuExtract Goes On!
NuExtract is an LLM specialized in extracting structured information from documents: it returns a JSON output from a document and a template (a.k.a. schema). We released NuExtract 1.0 about a year ago, NuExtract 1.5 about 6 months ago, and have been pleased to see their popularity (several million downloads) and performance (similar to GPT-4o while much smaller).
Nevertheless, NuExtract 1.0 and 1.5 had important limitations: they could only perform pure extraction (copy-paste of the input) on text documents. We thus decided to add 3 key features to NuExtract 2.0:
- Vision: to process documents as images, allowing extraction from scanned documents, PDFs, Excel files, etc.
- Abstraction: to perform classification, reformulation, formatting, etc.
- In-context learning: to customize the model by adding examples in the prompt.
On top of that, we gave a strong push on the performance side of things — better datasets, better training procedures, and better base models.
We are releasing 3 open-source versions of NuExtract 2.0:
- NuExtract 2.0 2B (Qwen 2.0 VL 2B base, MIT license)
- NuExtract 2.0 4B (Qwen 2.5 VL 3B base, research license)
- NuExtract 2.0 8B (Qwen 2.5 VL 7B base, MIT license)
All have a 32k token context.
These models perform impressively well. But what if we go bigger? We trained a substantially bigger model — NuExtract 2.0 PRO — and were stunned by the results: the model simply outclasses frontier LLMs like GPT-4.1 and Claude 4 Opus.

Driven by these results, we created a platform entirely dedicated to NuExtract 2.0 PRO — nuextract.ai — where you can define extraction tasks and use NuExtract via API.
Giving Eyes to NuExtract
Documents are not just text — they can be formatted (PDFs, spreadsheets) or scanned. The traditional approach captures their raw text via OCR, which loses formatting information: titles merge with paragraphs, tables lose structure, diagrams disappear.

A recent way to solve this is to directly extract from images with a Vision Language Model (VLM). VLMs have made enough progress that traditional OCR is now largely unnecessary. We thus made NuExtract 2.0 a VLM, using Qwen 2.5 VL and Qwen 2.0 VL as base models.
Images are tokenized by patches of 28×28 pixels and embedded via a vision module. The unified sequence of token embeddings is then processed by a regular transformer. There is no hard limit on image size: NuExtract 2.0 can process arbitrarily large (or high-resolution) images.
We find the resulting model can correctly extract information from all kinds of image documents — receipts, floor plans, multi-page PDFs, even handwritten prescriptions (with fine-tuning for difficult cases).




Importantly, the multimodal transition does not affect performance on text documents, so we only release a multimodal model.
Abstraction & New Template Format
NuExtract 1.0 and 1.5 were pure extractors: they copy-pasted text from the input. Pure extraction is a common use case, but you sometimes need to go beyond it:
- Reformat an output — dates, country codes, numbers.
- Deduce an answer — country from capital, number of rooms from a floor plan.
- Predict a class — sentiment, job mode (remote/on-site/hybrid).
- Generate new text — translation, summarization.
To get the best of both worlds, we updated the template format to include type specifications. In particular, the "verbatim-string" type tells the model to perform a pure extraction, while "string" allows free generation. We also added "choice" (enum), date, and number types. null now represents missing information.



This is a minimalist template format, designed to be easy to read and write, both for humans and LLMs, while being precise about what to extract.
In-Context Learning
Templates resolve a lot, but not everything: in {"address": "string"}, the format is unspecified. Providing examples in the prompt — In-Context Learning (ICL) — is the natural answer.
We taught NuExtract to perform ICL by adding examples-in-prompt to the training set, both for text and images.

Even 3 examples can substantially improve performance: NuExtract 2.0 PRO gains 6 F-Score points, which is a lot at this level of performance.

ICL is a great way to provide a light but efficient fine-tuning to NuExtract.
Performance
We use our extraction benchmark composed of 1000+ extraction examples grouped into 21 extraction problems. Documents are text or images, and span multiple languages.
Open-source models — transforming generic models into extraction specialists massively increases performance. NuExtract 2.0 8B reaches 73 F-Score (a bit better than non-reasoning frontier models). These small specialized language models are well suited for high-volume applications with resource-limited infrastructure.

NuExtract 2.0 PRO vs frontier models — NuExtract 2.0 PRO largely outperforms frontier models, with a +9 F-Score margin over GPT-4.1.
vs reasoning models — NuExtract 2.0 PRO is also ahead of frontier reasoning models: +5 F-Score over reasoning Claude 4 Opus, +2 F-Score over Gemini 2.5 PRO. And it costs at least 10× less to use on extraction tasks.

Precision vs recall — for structured extraction, precision is king: you prefer not having information rather than polluting your database with wrong information. NuExtract 2.0 PRO has a higher precision than recall, in part because we specifically teach it to say "I don't know" (null) when information is missing.

Failure Points
- Long documents — context size of 32k tokens (~60 pages of text or 20 pages of images) is the most obvious shortcoming. All LLMs also tend to have issues with long lists.
- Laziness — on complex templates with long lists and many missing properties, NuExtract may return very little. Workaround: simpler templates or split documents.
- Looping — rarely, NuExtract repeats the same element. This mainly happens on low-resolution images with non-Latin characters. The platform detects and corrects this.
- Invalid JSONs — very rare (e.g.
07instead of7). The platform guarantees valid JSON output. Off-platform, use a library like jsonrepair.
Conclusion & Next Steps
NuExtract 2.0 is the highest-performing extraction LLM, usable for pretty much any extraction task, on any kind of document, in any language.
The road is not over: better uncertainty estimates, longer documents, and reasoning are on the roadmap. In the meantime, we hope you'll make good use of this model. Feedback always welcome 😊