chunkr vs unstract
Document intelligence API in Rust: layout analysis, OCR with bounding boxes, and semantic chunking that turn PDFs, PPTs and Word docs into RAG-ready structured chunks. — versus — LLM-driven platform turning unstructured documents into structured data: a no-code Prompt Studio to define extractions, then deploy as APIs or ETL pipelines. Self-hosted, AGPL + enterprise.
Both are self-hostable document-intelligence services, split by output: Chunkr produces layout-aware RAG-ready chunks; Unstract produces schema-shaped structured fields via prompt-defined extraction, deployable as APIs and ETL.
| chunkr | unstract | |
|---|---|---|
| Stars | 4.1k | 6.9k |
| Forks | 266 | 661 |
| Language | Rust | Python |
| License | AGPL-3.0 | AGPL-3.0 |
| Last activity | 3 months ago | today |
| Topics | ocr, rag | ocr, rag |
| Curated connections | 7 | 2 |
chunkr — the curator's take
The RAG-ingestion specialist: where OCR tools stop at text, Chunkr does layout analysis and SEMANTIC chunking — the chunks arrive respecting document structure, with bounding boxes for citation-grounding. Self-hosted via Docker Compose. Read the split carefully though: the AGPL open-source version runs community models while the paid cloud runs proprietary ones — the README says plainly the accuracy differs; benchmark the OSS tier on YOUR documents before committing. Also ~3 months quiet at review time, and AGPL matters if you embed.
unstract — the curator's take
The platform play in document extraction: where parsers hand you markdown, Unstract hands you the FIELDS — Prompt Studio lets a domain expert define and test per-document-type extraction prompts, then ships them as stable APIs or ETL pipelines into warehouses, with the connector surface (S3, databases, DMS) that ops teams actually need. Docker-compose up and it runs. NOT a parsing engine: quality rides on the LLM you wire in and per-page LLM calls at volume cost real money — for clean-layout bulk conversion a deterministic parser is cheaper; and mind the AGPL + enterprise split when embedding.