Docling преобразует PDF и DOCX в структурированное представление перед загрузкой в RAG, выделяя текст, заголовки и таблицы для дальнейшей проверки. Качество конвертации оценивают по эталонным фрагментам исходных файлов, а ссылку на страницу PDF сохраняют вместе с найденным фрагментом. Инструмент подходит, когда системе поиска важно вернуть содержимое с проверяемым источником и сохранить структуру раздела.
Входные документы
Официальная документация Docling перечисляет PDF и DOCX среди поддерживаемых форматов; результат можно получить как структурированный DoclingDocument. Для RAG ключевая проверка — совпадение таблицы, заголовка и источника с оригиналом.
Соберите небольшой набор документов с разными сложностями: PDF с колонками, PDF с таблицей и DOCX со вложенными заголовками. Для каждого сохраните исходный файл, версию, понятное имя и допустимый круг читателей. Укажите вопрос, ответ на который должен опираться на конкретный фрагмент. Например, для внутреннего регламента это может быть условие согласования, рядом с которым находится таблица ролей. Такой набор создаёт проверяемую задачу конвертации. В эталон включайте особенно те страницы, где смысл зависит от подписи столбца, сноски или порядка чтения. Если таких мест нет в наборе, проверка покажет лишь качество обычных абзацев.
Документация проекта Docling описывает извлечение структуры PDF, таблиц и порядка чтения, а также единое представление документа. Это даёт основу для процесса проверки; точность разбора каждого файла подтверждают сравнением с оригиналом. Скан низкого качества, объединённые ячейки или нестандартная вёрстка способны исказить смысл. Владелец документа должен выбрать эталонные участки и отметить, какие ошибки опасны для ответа сотруднику.
Docling занимает этап подготовки источника. Схема поиска, индекс и генерация ответа идут дальше; их обсуждает материал о LlamaIndex и поиске по документам. Здесь задача уже: извлечь структуру, проверить её и передать индексатору фрагменты с метаданными. Если исходный документ закрыт для части сотрудников, ограничение доступа сохраняют и на уровне будущего поиска.
Эталон извлечения
Эталон готовят вручную по исходным страницам. Для таблицы выпишите заголовки столбцов, несколько характерных строк, объединённые ячейки, подпись и примечание под таблицей. Для раздела сохраните точный заголовок и подчинённость абзацев. Затем сравните результат Docling с этим описанием. Совпадение отдельных слов мало говорит о качестве: переставленный столбец может превратить корректные значения в ошибочные условия.
| Фрагмент | Что сравнить с оригиналом | Когда остановить загрузку |
|---|---|---|
| Заголовок раздела | Текст, уровень и соседние абзацы | Раздел получил чужое содержание |
| Таблица | Столбцы, строки, объединения и примечание | Значения связались с неверным столбцом |
| Ссылка на источник | Файл, версия и страница PDF | Фрагмент потерял проверяемый адрес |
| Текстовый блок | Порядок чтения и границы абзаца | Соседние колонки смешались |
Официальный пример выгрузки таблиц показывает получение таблиц из документа и экспорт для дальнейшей обработки. Сопоставлять полную выгрузку с эталоном лучше скриптом: он проверит наличие ожидаемых строк, порядок колонок и пустые значения. Языковая модель может объяснить расхождение и предложить гипотезу о сломанной разметке, но решение о пригодности файла принимает сотрудник после просмотра оригинала.
Проверка заголовков требует внимания к уровню раздела. В PDF крупный шрифт способен обозначать название таблицы, а в другом файле такой же вид имеет заголовок главы. Если уровень извлечён неверно, поиск объединит чужие абзацы. В документации Docling отдельно описаны настройки восстановления уровней заголовков PDF; включение такой настройки проверяют на собственном эталоне. Демонстрационный файл показывает работу функции; качество разбора вашего корпуса подтверждает только собственный эталон.
Привязка к странице
У фрагмента для RAG должен быть адрес источника. Для PDF храните идентификатор файла, версию, номер страницы и ссылку на элемент структуры. В модели DoclingDocument предусмотрены сведения о происхождении элементов, включая номер страницы там, где он доступен. Перед индексированием проверьте заполненность этих полей: метка в итоговом ответе полезна лишь тогда, когда сотрудник может открыть исходную страницу и увидеть тот же текст.
- Преобразуйте тестовый PDF или DOCX в DoclingDocument и сохраните структурированный результат рядом с исходным файлом.
- Пройдите скриптом по заголовкам, абзацам и таблицам. Для каждого элемента запишите адрес в документе и доступные сведения о происхождении.
- Сравните выбранные таблицы и разделы с эталоном. Отложите элементы с пропущенными столбцами, смешанными колонками и спорной иерархией.
- Соберите фрагменты для поиска вместе с заголовком раздела, версией файла и страницей PDF при её наличии.
- Задайте контрольный вопрос и проверьте найденный фрагмент по оригиналу до подключения генерации ответа.
Для DOCX номер страницы зависит от способа отображения документа; у исходного файла может отсутствовать надёжная постраничная привязка. В таком случае сохраните заголовок раздела и устойчивый адрес элемента, а страницу указывайте только после отдельной проверки в согласованном представлении. Рисовать номер страницы из предположения рискованно: ссылка создаст ложное впечатление точности. При споре возвращайтесь к сохранённой версии исходного файла.
Проверка адреса особенно важна при обновлении регламентов. Новая версия может сдвинуть таблицу и сохранить похожий текст. Разделяйте записи индекса по версиям и удаляйте устаревшие фрагменты согласно правилам команды. Вопросы о доступе к фрагментам и цитатам подробнее разобраны в статье о поиске по документам.
Куски для поиска
После приёмки структуры документ делят на смысловые фрагменты. Заголовок раздела помогает поиску понять контекст абзаца, а таблицу полезно хранить с подписью и объяснением столбцов. Разрез по фиксированной длине может отделить условие от исключения; тогда найденный текст даст правдоподобный, но неверный ответ. В документации Docling описано разбиение по иерархии документа, однако фактические границы фрагментов проверяют на вопросах вашей команды.
Для таблицы контрольный вопрос должен требовать связи строки и столбца. Если ответ содержит верное значение при чужой подписи, ошибка возникла до генерации: сравните структурированную таблицу, фрагмент индекса и найденный результат. Для полного набора документов проверку выполняет скрипт, который выводит идентификаторы строк и адреса источников. Языковая модель объясняет различия в отчёте и предлагает, где искать сбой; человек сверяет первоисточник и решает, менять ли правила извлечения.
Предложите пилот на наборе PDF и DOCX с известными сложными таблицами. Сохраните эталонные строки и заголовки, затем проверьте, может ли каждый найденный фрагмент привести сотрудника к исходному месту в документе.
Если PDF состоит из сканов, распознавание добавляет ещё один источник ошибок. OCR способен дать сигнал о тексте на странице, но качество значимых чисел и формулировок подтверждает сотрудник по изображению оригинала. Для другой задачи — извлечения полей из отдельных сканов — есть разбор OCR для документов. Текущий процесс посвящён сохранению структуры длинного документа перед поиском.
Какая таблица в ваших документах ломает поиск?
Приёмка перед загрузкой
Итоговый пакет для индексирования включает исходный файл, версию, структурированный результат, перечень принятых фрагментов и журнал исключений. Для каждой таблицы, пропущенной по причине ошибки, укажите владельца решения. Тогда индексатор получает только те данные, чья структура прошла согласованную проверку. Скрытая ошибка в таблице опаснее явного отказа: система найдёт фрагмент и уверенно свяжет значение с неправильным условием.
Приёмку разумно разделить между специалистами. Разработчик проверяет успешность конвертации, формат полей и повторяемость скрипта. Владелец документа подтверждает содержание эталона и допустимые права доступа. Редактор базы знаний проверяет названия разделов и понятность цитат. Систему генерации ответов подключают после проверки поиска: он должен показывать источник, а сотрудник должен иметь возможность открыть соответствующую версию файла.
Если выбранный набор проходит проверку, расширяйте корпус по типам вёрстки и источникам. Новые шаблоны DOCX, сканы и PDF с продолжением таблицы на следующей странице требуют собственных эталонных примеров. При смене версии Docling повторите сравнение на тех же фрагментах. Такой регресс показывает, какие документы получили иное разбиение, и позволяет исправить маршрут до обновления индекса.
Для проекта с внутренними документами внедрение нейросети для работы с документами начинается с карты источников и правил доступа. Напишите нам, и мы оценим состав работ под ваш корпус: конвертацию, эталон, проверку таблиц, привязку к источнику и дальнейший поиск. Стоимость зависит от качества файлов, разнообразия разметки и требований к правам; условия обсуждаем после разбора задачи.