Проблемы масштабного извлечения данных из структурированных документов с помощью LLMs
Одна из ключевых проблем при применении больших языковых моделей (LLMs) заключается на этапе обработки данных, особенно при работе с различными форматами данных. Обычно данные можно классифицировать на три типа: структурированные, полуструктурированные или неструктурированные. Поскольку LLMs в основном работают с текстом, их часто применяют к неструктурированным данным, если данные уже не организованы в реляционную таблицу.
В недавнем вебинаре Тим Спанн, Principal Developer Advocate в Zilliz, представил Unstract — платформу с открытым исходным кодом, предназначенную для упрощения извлечения неструктурированных данных и преобразования их в структурированные форматы. Этот инструмент призван упростить управление данными за счет автоматизации процесса структурирования.
В этом блоге мы подробно рассмотрим основные проблемы извлечения структурированных данных из документов, как их описал Шувеб Хуссейн, сооснователь и генеральный директор Unstract. Мы также изучим, как Unstract справляется с различными сценариями, включая интеграцию с векторными базами данных, такими как Milvus, чтобы придать структуру ранее неуправляемым данным.
Текущие ограничения
Структурирование данных уже давно является сложным и трудоемким процессом, особенно по мере того, как модели машинного обучения требуют все больших объемов данных. Исторически значительная часть этой работы по извлечению выполнялась вручную — например, в случае отсканированных рукописных документов, — поскольку автоматизация не могла полностью удовлетворить разнообразные потребности моделей.
Хотя большие языковые модели (LLMs) улучшили способность анализировать и извлекать информацию из документов, у них есть заметные ограничения. Документы часто представлены в различных форматах, таких как таблицы, формы, диаграммы и сканы, где качество и согласованность данных играют ключевую роль в успешном извлечении. Кроме того, многие приложения требуют обработки огромных объемов документов, и не все они придерживаются единой структуры. Это может потребовать дополнительной настройки в процессе извлечения, поскольку LLMs могут испытывать трудности при работе с сильно варьирующимися или сложными макетами без вмешательства человека.
Рисунок 1: Проблемы структурирования данных
Рисунок 1 иллюстрирует пузырьковую диаграмму проблем, показывающую ландшафт текущих разработок в области извлечения структурированных данных из документов. Диаграмма выделяет три ключевые области:
Небольшой набор вариантов использования, которые были успешно решены с помощью текущих технологий.
Значительная часть рынка активно осваивается большими языковыми моделями (LLMs).
Огромный потенциал нерешенных бизнес-кейсов, которые остаются открытыми. Эти кейсы могут быть решены в будущем в зависимости от достижений в различных технологиях.
Эта визуализация подчеркивает разрыв между тем, что достижимо сейчас, и потенциальными прорывами в ближайшем будущем, такими как разработка приложений AI agents.
Извлечение данных из документов
Любой, кто пытался извлекать текст из документов с помощью LLMs, знает, насколько сложно бывает получить всю необходимую информацию всего несколькими строками кода. Хотя такие инструменты, как Co-pilots, могут помочь в этом процессе, они часто не обеспечивают полностью автоматизированного решения. Извлеченные данные не всегда имеют желаемую структуру, и часто требуется этап вмешательства человека, чтобы организовать информацию в правильный формат.
Именно здесь Unstract предоставляет полностью автоматизированное решение, в рамках которого неструктурированные документы могут быть преобразованы в структурированные данные без необходимости человеческого контроля. Unstract использует технологию на основе LLM для извлечения информации.
Рисунок 2: Извлечение документов
Unstract Cloud
Unstract — это no-code LLM-платформа, относящаяся к категории интеллектуальной обработки документов (IDP). Она оптимизирует извлечение данных из документов, разделяя процесс на два основных этапа:
Prompt Engineering: Prompt Studio от Unstract позволяет пользователям разрабатывать универсальные промпты для конкретных типов документов, которые затем можно повторно использовать для извлечения структурированных данных из других документов того же типа.
Этап развертывания: После создания промптов их можно развернуть различными способами, включая ETL-конвейер, конечную точку API или часть очереди ручной проверки для дальнейшего анализа.
Unstract предлагает два подхода для достижения точного извлечения данных:
Повышенная точность (LLM Challenge): Этот метод предполагает обработку документа с помощью одной LLM и использование второй LLM для проверки результата первой. Если две модели не приходят к консенсусу, конкретное извлекаемое поле устанавливается в null, что позволяет избежать риска заполнения некорректными данными. Это значительно снижает риск галлюцинаций, поскольку две модели от разных поставщиков вряд ли выдадут один и тот же неверный результат.
Снижение затрат
SinglePass Extraction: Вместо отправки нескольких промптов для отдельных полей этот подход объединяет все промпты в один запрос. LLM возвращает JSON-вывод, содержащий все необходимые поля за один проход, что снижает использование токенов и задержку.
Summarized Extraction: Этот метод создает краткое содержание входного документа с помощью LLM на основе промптов пользователя. Затем краткое содержание используется для извлечения необходимых полей, оптимизируя использование токенов и дополнительно снижая задержку.
Рисунок 3: Стратегии извлечения Unstract
Рисунки 4 и 5 показывают пример проекта Single Pass Extraction, где видно, что несколько промптов объединяются для получения единого JSON-вывода.
Рисунок 4: Unstract Prompt Studio (парсер документов)
Рисунок 5: Unstract Prompt Studio (объединенный вывод)
Кроме того, пользователи могут настраивать различные параметры, чтобы адаптировать процесс извлечения. К ним относятся выбор векторной базы данных, такой как Milvus или Zilliz Cloud, для хранения и извлечения векторных эмбеддингов, выбор второй модели LLM для сравнения результатов, таких как затраты или задержка, либо выбор опции challenge LLM, если точность имеет приоритет над затратами.
Рисунок 6: Unstract Prompt Studio: настройки
После того как настройки определены и результаты извлечения текста удовлетворительны, вы можете экспортировать рабочий процесс как инструмент (рисунок 7), выбрать рабочий процесс для развертывания (рисунок 8) и получить конечную точку API (рисунок 9).
Рисунок 7: Экспорт рабочего процесса как инструмента
Рисунок 8: Экспорт рабочего процесса как инструмента
Рисунок 9: Развертывание конечной точки API
Стратегии поиска Unstract
В разделе Settings пользователи могут выбрать одну из двух стратегий поиска:
Простой: Эта стратегия использует один запрос для извлечения релевантных фрагментов информации, применяя комбинацию сопоставления по ключевым словам и векторного поиска для обеспечения точности.
Подвопрос: Этот подход предполагает разбиение сложного запроса на более простые подвопросы. Каждый подвопрос извлекает релевантную информацию, которая затем агрегируется для предоставления исчерпывающего ответа на исходный сложный запрос.
Хотя простой подход к извлечению обеспечивает скорость и экономическую эффективность, он может не охватывать нюансированное понимание, которое могут предоставить более сложные модели.
Ретривер подвопросов особенно ценен для решения сложных вопросов, которым необходимо интегрировать информацию из различных контекстов или доменов. Сосредотачиваясь на конкретных информационных требованиях каждого подвопроса, этот подход повышает способность модели эффективно обрабатывать детальные запросы.
Заключение
Область извлечения структурированных данных из документов быстро меняется благодаря достижениям в области больших языковых моделей и инновационным инструментам, таким как Unstract. Unstract предлагает эффективный способ преобразования неструктурированных данных в структурированные форматы в сочетании с векторными базами данных, такими как Zilliz Cloud, уделяя внимание как точности, так и экономии затрат. Благодаря различным стратегиям извлечения он помогает пользователям работать со сложными вопросами в удобном для пользователя формате.
Заглядывая вперед, потенциал для дальнейших улучшений в интеллектуальной обработке документов огромен, как отметил Shuveb Hussain во время вебинара. По мере роста потребности в эффективном извлечении данных такие платформы, как Unstract, готовы занять лидирующие позиции. Улучшая эти технологии, они помогают организациям превращать неструктурированные данные в полезные инсайты.
Этот переход к полностью автоматизированной обработке документов связан не только с технологиями; он меняет подход к управлению данными в разных отраслях. Внедряя эти достижения, организации могут открывать новые возможности для роста в мире, который всё больше ориентируется на данные.
Читать далее

Smarter Autoscaling in Zilliz Cloud: Always Optimized for Every Workload
With the latest upgrade, Zilliz Cloud introduces smarter autoscaling—a fully automated, more streamlined, elastic resource management system.

Expanding Our Global Reach: Zilliz Cloud Launches in Azure Central India
Zilliz Cloud expands to Azure Central India. This new region helps customers meet compliance, reduce latency, and optimize cloud costs when building AI applications.

8 Latest RAG Advancements Every Developer Should Know
Explore eight advanced RAG variants that can solve real problems you might be facing: slow retrieval, poor context understanding, multimodal data handling, and resource optimization.



