Содержание
Коротко: что выбрать
RAG-пайплайн стоит на двух китах: хорошая векторная база и качественный парсинг документов. Если PDF или DOCX превращаются в кашу — LLM выдаёт мусор. В 2026 году выбор open-source инструментов для парсинга документов огромен: от лёгких утилит до enterprise-платформ. Вот основные варианты:
MinerU (69K ★ на GitHub) — самый популярный инструмент, поддерживает PDF, DOCX, PPTX, XLSX и изображения. Docling (62K ★) от IBM Research — лучшая точность извлечения таблиц (97.9%) и 8 форматов. Marker (36K ★) — быстрый конвертер PDF в Markdown с OCR через Surya. Surya (20K ★) — отдельная модель OCR и layout analysis на 650M параметров, 5 страниц/с. Unstructured (15K ★) — enterprise ETL c 40+ коннекторами и 64+ форматами.
MinerU — это open-source инструмент от команды OpenDataLab, который конвертирует PDF, изображения и офисные документы в Markdown и JSON для RAG-пайплайнов
MinerU — самый звёздный проект в этой нише: 69 112 звёзд на GitHub и почти 6 000 форков. Он появился как инструмент для парсинга PDF, но к версии 3.1.0 дорос до полноценной мультиформатной системы: PDF, изображения, DOCX, PPTX, XLSX.
Главная особенность MinerU — автоматическое удаление колонтитулов, номеров страниц и сносок. Многие RAG-системы спотыкаются на том, что «верхний колонтитул — Наименование документа» попадает в середину семантического чанка. MinerU чистит это на этапе парсинга. Выходной формат — Markdown или JSON, которые напрямую идут в сплиттер и векторную БД.
Установка через pip: pip install mineru. Но есть нюанс — MinerU тянет за собой модельные веса (детекция layout, распознавание формул) и требует GPU для нормальной скорости. На CPU одна страница обрабатывается 3-5 секунд, на GPU — 0.5-1 секунда. Документация рекомендует минимум 8 GB VRAM.
MinerU умеет распознавать математические формулы (преобразует в LaTeX), таблицы с объединёнными ячейками и многоязычный текст. Для русского языка показывает хорошие результаты благодаря модели layout analysis, обученной на мультиязычных данных.
Docling — это open-source библиотека от IBM Research, которая парсит PDF, DOCX, PPTX, XLSX, HTML, изображения и аудио в едином пайплайне
Docling родился внутри IBM Research и в 2026 году перешёл под управление Linux Foundation (LF AI & Data). На GitHub у него 62 132 звезды. Текущая версия — 2.94.0 (май 2026). Лицензия — MIT, хотя веса моделей распространяются под отдельными лицензиями.
Ключевое преимущество Docling — TableFormer. Это модель, которая восстанавливает структуру таблиц с точностью 97.9%, сохраняя объединённые ячейки, вложенные заголовки и многострочный текст. По данным Procycons Benchmark (2025), Docling обходит LlamaParse и Unstructured по качеству извлечения таблиц из отчётов устойчивого развития.
Docling поддерживает 8 форматов на входе: PDF, DOCX, PPTX, XLSX, HTML, изображения, аудио (через VLM), WebVTT, LaTeX и XBRL. На выходе — Markdown, HTML, JSON, DocTags (lossless-формат для round-tripping) и plain text.
OCR подключается модульно: EasyOCR, Tesseract, RapidOCR, macOS Vision или VLM. Это значит, что для сканированных PDF можно поставить Tesseract (самый лёгкий), а для архивных документов с плохим качеством — VLM.
Инфраструктурная нагрузка высокая: Docling тянет PyTorch и несколько сотен мегабайт модельных весов. Типичный расход памяти — 2-4 GB. Lambda, Vercel и Cloud Run не подходят. Деплой — долгоживущий контейнер на Fly, Render, EC2 или собственном сервере. Для упрощения есть Docling Serve — готовый REST API в контейнере.
Marker — это open-source утилита для быстрого преобразования PDF в Markdown и JSON с использованием нейросетевого OCR
Marker от команды VikParuchuri (они же сделали Surya) — 36 387 звёзд на GitHub. Основная специализация: PDF в Markdown и JSON. Лицензия — GPLv3, что может быть проблемой для коммерческого встраивания.
Marker использует Surya для OCR, детекции layout и определения порядка чтения. Дополнительно подключает TableConverter для таблиц и опционально LLM для сложных случаев. Скорость: ~1 страница в секунду на GPU, 3-5 секунд на CPU.
Формат установки:
pip install marker-pdf
marker /path/to/input.pdf /path/to/output/
Marker автоматически определяет, нужен ли OCR. Для цифровых PDF (с текстовым слоем) он извлекает текст напрямую. Для сканов запускает Surya OCR. Есть флаг --force-ocr, если нужно принудительно прогнать через распознавание.
Из коробки Marker поддерживает только PDF. Для DOCX, PPTX и XLSX нужна полная установка с дополнительными зависимостями. На практике сообщество использует Marker как быстрый конвертер PDF в Markdown для RAG, а другие форматы обрабатывает отдельными инструментами.
Parsebridge сравнивает Marker с Docling и LlamaParse и отмечает, что Marker — лучший выбор для простых PDF (текст + базовые таблицы), где не нужна тяжёлая инфраструктура Docling.
Surya — это нейросетевая модель OCR и layout analysis на 650 миллионов параметров, которая обрабатывает 5 страниц в секунду на RTX 5090
Surya (20 915 звёзд) — не самостоятельный инструмент парсинга, а движок OCR и layout analysis, который используется внутри Marker. Но его можно подключать отдельно, если нужен только OCR без конвертации в Markdown.
Характеристики: 650M параметров, 83.3% на бенчмарке olmOCR-bench (лучший результат среди моделей до 3B параметров), 87.2% на внутреннем мультиязычном тесте (91 язык), скорость 5 страниц/с на RTX 5090.
Surya выполняет несколько задач одновременно: распознавание символов (OCR), определение layout (таблица, изображение, заголовок, колонтитул), определение порядка чтения (reading order) и распознавание таблиц. Для русского языка Surya показывает высокое качество — входит в топ-3 open-source OCR-решений по отзывам сообщества.
Установка: pip install surya-ocr. Для работы требуется PyTorch с CUDA. На CPU скорость падает до 0.3-0.5 страницы/с, поэтому для продакшена GPU обязателен.
Surya часто используют в связке: Surya делает OCR и layout analysis, а отдельный скрипт собирает Markdown из распознанных блоков. Это даёт больше контроля, чем Marker, но требует дополнительного кода.
Unstructured — это open-source ETL-платформа для преобразования документов в структурированные данные для языковых моделей
Unstructured (14 995 звёзд) — самый зрелый инструмент в списке с точки зрения enterprise-функций. Это не просто парсер, а полноценный ETL: коннекторы к 40+ источникам (S3, Confluence, SharePoint, Google Drive, Dropbox, Box, Azure Blob), поддержка 64+ форматов файлов, встроенные стратегии чанкинга и очистки.
Unstructured существует в двух версиях: open-source библиотека (Apache 2.0) и облачная платформа (SaaS). В open-source версии доступна базовая функциональность: функция partition(), которая определяет тип файла и запускает соответствующий парсер. Платформа добавляет коннекторы, VLM-стратегии, автоматическое обновление и инкрементальную обработку.
Цены SaaS: 15 000 страниц бесплатно, далее $0.03/страница (Pay-As-You-Go) или custom для Business (VPC, dedicated instance). Unstructured Pricing позиционирует сервис как «единое окно» для всех форматов документов.
Unstructured выигрывает в сценариях, где документы приходят из разных источников и в разных форматах: PDF, DOCX, XLSX, PPTX, HTML, XML, EPUB, изображения, аудио. Один API-вызов — и документ превращается в JSON с метаданными, готовый для загрузки в векторную БД.
Из минусов: Unstructured медленнее конкурентов на сложных PDF (51-141 секунда на документ по данным Procycons), и качество извлечения таблиц уступает Docling (75% против 97.9%). Для простых текстовых документов разница незаметна.
Сравнительная таблица инструментов
| Параметр | MinerU | Docling | Marker | Surya | Unstructured |
|---|---|---|---|---|---|
| GitHub звёзд | 69 112 | 62 132 | 36 387 | 20 915 | 14 995 |
| Лицензия | MIT | MIT (код) | GPLv3 | GPLv3 | Apache 2.0 |
| Форматы входа | PDF, DOCX, PPTX, XLSX, IMG | PDF, DOCX, PPTX, XLSX, HTML, IMG, аудио, LaTeX, XBRL | PDF (основной) | PDF, IMG | 64+ формата |
| Форматы выхода | Markdown, JSON | Markdown, HTML, JSON, DocTags | Markdown, JSON | Сырые данные | JSON, Markdown |
| OCR | Встроен | EasyOCR, Tesseract, RapidOCR, macOS Vision, VLM | Surya OCR | Собственная модель | Встроен + VLM |
| Точность таблиц | Высокая | 97.9% | Средняя | Средняя | 75% |
| Скорость (стр/с) | 1-2 (GPU) | 1-2 (GPU) | ~1 (GPU) | 5 (RTX 5090) | 0.3-1 |
| Инфраструктура | 2-4 GB, GPU | 2-4 GB, GPU | 1-2 GB, GPU опционально | 2 GB, GPU | 1-2 GB |
| SaaS / Cloud | Нет | Docling Serve | Datalab hosted | Нет | Да (15K стр. бесплатно) |
| Лучший сценарий | Сложные PDF с layout | Enterprise, таблицы | Быстрый PDF->MD | OCR + layout | Мультиформатный ETL |
Как выбрать инструмент для парсинга документов
Универсального ответа нет — выбор упирается в типы ваших документов, инфраструктуру и бюджет на GPU. Вот три типовых сценария:
Сценарий 1: простые PDF с текстом. Если ваши документы — это Digital PDF с текстовым слоем, без сложных таблиц и формул, Marker справится лучше всех. Он лёгкий, быстрый, ставится одной командой pip и не требует GPU. Для 100-200 страниц в день CPU-версии достаточно.
Сценарий 2: сканы, таблицы, многоколоночная вёрстка. Тут нужен полноценный парсер с OCR и layout analysis. MinerU или Docling — лучший выбор. Оба удаляют колонтитулы и номера страниц, оба понимают сложную структуру. MinerU выигрывает по количеству форматов (Office-документы из коробки), Docling — по качеству таблиц (TableFormer, 97.9% точности).
Сценарий 3: enterprise-пайплайн, 40+ источников. Unstructured — единственный вариант, который даёт коннекторы к SharePoint, Confluence, S3 и коробочную интеграцию с векторными БД. Если вам нужно «включил и забыл» — это он. Но готовьтесь к $0.03/страница после бесплатных 15 000 страниц.
Если вы только начинаете и не знаете, какие документы будут — начните с MinerU. Он самый популярный (69K звёзд — не просто так), с ним больше всего гайдов и примеров в сообществе. А по мере усложнения пайплайна легко добавить Docling для таблиц или Surya для OCR.
Для RAG-пайплайна выбор векторной БД не менее важен, чем качество парсинга. Ошибки на этапе парсинга не исправляются векторным поиском — мусор на входе даёт мусор на выходе. Поэтому тестируйте инструмент на своих реальных документах, а не на демо-файлах из README.