← Ко всем open source проектам

Docling

docling-project/docling

Docling — Python-инструмент для преобразования документов в структурированные данные для поиска и ИИ-систем.

Форки 4,368
Автор docling-project
Язык Python
Лицензия MIT
Обновлено 2026-06-27

Что это такое

Docling — инструмент для преобразования документов в структурированный вид. Он помогает извлекать текст, таблицы, структуру и элементы из PDF, офисных документов и других форматов, чтобы дальше использовать их в поиске, аналитике или ИИ-системах.

Проект решает проблему, знакомую почти всем командам с документами: файл выглядит читаемым для человека, но для программы это сложная смесь страниц, координат, таблиц, изображений и форматирования.

Как устроен процесс

Docling принимает документ, анализирует его содержимое и возвращает результат в форме, пригодной для дальнейшей обработки. Это может быть конвертация в Markdown, JSON или внутреннюю структуру, которую затем передают в индекс, хранилище или пайплайн обработки.

Особенно полезен такой слой перед RAG-системами. Если плохо разобрать документ, модель будет отвечать по битому тексту, потерянным таблицам и неверным фрагментам.

Конвертация документа

Пример показывает Python-сценарий: документ превращается в Markdown, который затем можно сохранить, проиндексировать или отдать следующему этапу обработки.

Язык: Python
from docling.document_converter import DocumentConverter

converter = DocumentConverter()
result = converter.convert("report.pdf")

markdown = result.document.export_to_markdown()
print(markdown[:1000])

Что внутри репозитория

В репозитории есть библиотека, командный интерфейс, документация, примеры, интеграции и ссылка на технический отчет. Проект ориентирован не только на PDF, а на подготовку документов к машинной обработке.

Docling полезен тем, что делает разбор документов отдельным этапом. Это позволяет проверять качество извлечения до того, как данные попадут в поиск или модель.

Сильные стороны

Сильная сторона — фокус на структуре. Для документов важны не только слова, но и заголовки, таблицы, списки и порядок блоков.

Вторая сильная сторона — удобство для Python-экосистемы. Инструмент можно встроить в обработку данных, индексацию, аналитику и ИИ-приложения.

Ограничения

Документы бывают очень разными. Скан плохого качества, нестандартная таблица или сложный макет могут требовать ручной проверки результата.

Docling не решает смысловую интерпретацию сам по себе. Он готовит данные, но качество ответа или анализа зависит от следующего этапа системы.