Text-extract-api: когда нужно вытащить текст из любого документа
Репозиторий давно не обновлялся
Последнее обновление было 7 месяцев назад.
Представьте: вам скинули сканы договоров, прайс-листов или медицинских заключений, а вам нужно получить структурированные данные. Ручной ввод? Слишком долго. Обычный OCR? Часто ошибается с таблицами и формулами. text-extract-api решает эту проблему раз и навсегда.
Что это за инструмент?
Text-extract-api — это open-source решение на Python для конвертации документов (PDF, Word, изображений) в:
- Чистый Markdown
- Структурированный JSON
Причем делает это с впечатляющей точностью, даже для сложных случаев вроде:
- Табличных данных
- Математических формул
- Медицинских отчетов
- Финансовых документов
Главный козырь — все работает локально, без отправки ваших данных в облачные сервисы.

Почему это лучше обычного OCR?
1. Комбо из OCR и LLM
Проект использует каскадную обработку:
- Сначала работает OCR (EasyOCR, MiniCPM-V или LLama Vision)
- Затем LLM (например, LLama 3.1) дорабатывает результат:
- Исправляет ошибки распознавания
- Улучшает форматирование
- Может удалять персональные данные (PII)
2. Полная локальность
В отличие от многих сервисов:
- Нет зависимости от облачных API
- Все модели работают локально через Docker
- Данные не уходят за пределы вашего сервера
3. Гибкость форматов
На выходе получаете:
- Markdown для вики и документации
- JSON для интеграции с другими системами
Как это работает технически?
Стек технологий:
- FastAPI — веб-интерфейс
- Celery — асинхронная обработка задач
- Redis — кэширование результатов
- Ollama — локальные LLM-модели
Поддерживаемые стратегии OCR:
- EasyOCR — быстрый и точный для английского
- MiniCPM-V — хорош для мультиязычных документов
- LLama Vision — самый точный, но требовательный к ресурсам
- Marker (как внешний сервис) — лидер точности для PDF
Практические кейсы
1. Обработка медицинских отчетов
python client/cli.py ocr_upload --file mri_report.pdf --prompt_file extract_to_json.txt
На выходе — готовый JSON с ключевыми показателями.

2. Анонимизация документов
python client/cli.py ocr_upload --file invoice.pdf --prompt_file remove_pii.txt
Удаляет персональные данные из счетов и договоров.
3. Парсинг табличных данных
Отлично справляется с Excel и PDF-таблицами, сохраняя структуру в Markdown.
Как начать использовать?
- Клонируем репозиторий:
git clone https://github.com/CatchTheTornado/text-extract-api.git
cd text-extract-api
- Запускаем через Docker:
docker-compose up --build
Или без Docker для Mac с M1/M2:
make install
make run
Есть и облачная демо-версия, но для рабочих проектов лучше локальный вариант.
Кому особенно пригодится?
- Разработчикам, которые интегрируют документы в свои системы
- Аналитикам, работающим с PDF-отчетами
- Юристам и бухгалтерам для обработки сканов
- Техническим писателям, конвертирующим документы в Markdown
Text-extract-api — это: ✅ Локальный (ваши данные в безопасности) ✅ Точно работающий с таблицами и формулами ✅ Гибкий (поддержка разных OCR и LLM) ✅ Открытый исходный код (MIT License)
Если вы регулярно работаете с документами в PDF/Word/сканами — этот инструмент сэкономит вам часы ручной работы.
