Суть обновления: Open Source vs Transform v2
Команда Unstructured-IO подтвердила, что их open-source библиотека для предобработки неструктурированных данных (PDF, HTML, Word) останется полностью бесплатной. Однако они опубликовали результаты бенчмарков, демонстрирующие существенное отставание OSS-версии от их платного Transform v2 API в задачах извлечения данных.
Ключевые метрики производительности Transform v2 по сравнению с Unstructured OSS:
| Метрика | Transform (Best) | Unstructured OSS |
|---|---|---|
| Точность содержимого ячеек таблиц | 0.866 | 0.426 |
| Точность пространственного расположения | 0.853 | 0.498 |
| Adjusted CCT (точность текста) | 0.878 | 0.715 |
| Добавленные токены (меньше — лучше) | 0.050 | 0.119 |
Разработчики отмечают, что Transform v2 обеспечивает 2x точность извлечения контента из таблиц и генерирует на 58% меньше вымышленного (hallucinated) контента. Тестирование проводилось на выборке из 1,000+ страниц для OSS и 224 страницах (SCOREBench, сентябрь 2026) для Transform.
Быстрый старт и установка
Для локального использования библиотеки доступны два основных пути:
- Через Docker: Поддерживаются архитектуры x86_64 и Apple Silicon. Образы собираются для каждого пуша в ветку
mainс тегами версии (например,0.5.5-dev1) иlatest. Базовый образ —wolfi-base. - Через pip: Установка всех зависимостей для работы с любыми типами документов:
pip install "unstructured[all-docs]". Для базовых форматов (текст, HTML, XML, JSON, Email) достаточноpip install unstructured.
Системные зависимости
Для корректной работы с различными типами файлов требуется установка внешних утилит:
- libmagic-dev: Определение типа файла.
- poppler-utils: Работа с изображениями и PDF.
- tesseract-ocr: Распознавание текста на изображениях и в PDF (рекомендуется также
tesseract-langдля поддержки языков). - libreoffice: Конвертация документов MS Office.
- pandoc: Устанавливается автоматически через пакет
pypandoc-binary.
Разработка и вклад в проект
Для локальной разработки проект использует менеджер зависимостей uv. Установка всех групп зависимостей (base, extras, dev, test, lint) выполняется одной командой:
make install
Для изоляции окружения также доступен Docker-контейнер с примонтированным локальным репозиторием: make docker-start-dev. Это позволяет избежать проблем с совместимостью ОС и зависимостей.
Источник: Github ↗
