Проблема стандартного RAG с PDF
Традиционные системы RAG (Retrieval-Augmented Generation) часто страдают от потери контекста при работе с PDF-документами. Стандартный подход — разбивка текста на чанки (chunks) — игнорирует семантическую структуру документа: оглавление, таблицы, заголовки и связи между разделами. Это приводит к неточным или «размытым» ответам, особенно в корпоративной среде, где важна точность данных.
Решение: Реляционный парсинг и TOC Retrieval
Авторы предлагают архитектуру Enterprise Document Intelligence, которая обрабатывает документ как реляционную базу данных. Ключевые компоненты пайплайна:
- Document Parsing: Извлечение не только текста, но и структуры (оглавление, иерархия заголовков, таблицы).
- Question Parsing: Анализ запроса пользователя для определения типа ответа (число, дата, список, текст).
- TOC Retrieval: Использование оглавления (Table of Contents) для навигации по документу, а не просто поиска по векторам.
- Typed Answers: Генерация ответа строго в требуемом формате, что упрощает дальнейшую обработку.
Технические детали и метрики
Подход позволяет системе «понимать», где находится ответ в структуре документа, а не просто искать совпадения по ключевым словам. Это критически важно для документов с повторяющимися терминами в разных контекстах (например, финансовые отчеты или юридические акты).
| Компонент | Стандартный RAG | Предлагаемый подход |
|---|---|---|
| Структура документа | Игнорируется (только текст) | Реляционная модель (OG, таблицы) |
| Поиск | Векторный поиск по чанкам | Гибридный: TOC + векторы |
| Формат ответа | Свободный текст | Типизированный (Typed) |
| Точность в сложных документах | Низкая/Средняя | Высокая (за счет контекста) |
Почему это важно для бизнеса
Внедрение такой системы снижает количество ошибок при извлечении данных из неструктурированных документов. Для компаний, работающих с тысячами PDF-файлов (контракты, отчеты, инструкции), это означает переход от «поиска текста» к «пониманию документа». Система готова к продакшену, так как обрабатывает каждый этап (парсинг, запрос, ретривал, генерация) как отдельный, оптимизированный контракт.
Источник: Towards Data Science ↗