Необходимые cookie-файлы нужны для работы сайта. Аналитические cookie (Яндекс Метрика) — только с вашего согласия. Политика cookie-файлов

Тема оформления
Объяснения

Как работает извлечение

Конвейер обработки документа: разбор файла, извлечение моделью, проверки и источники со ссылкой на место в документе.

Разбор документа

Файл разбирается на текст и элементы с привязкой к странице: абзацы, таблицы, подписи. Для отсканированных страниц без текстового слоя включается оптическое распознавание (OCR).

Извлечение моделью

Распознанный текст вместе со схемой (JSON Schema с описаниями полей) передаётся языковой модели, которая заполняет схему и отмечает, к какому месту в документе относится каждое значение. Если ответ модели не проходит проверку по схеме, система даёт ей ещё несколько попыток исправить результат, прежде чем вернуть ошибку extraction_failed.

Длинные документы делятся на части с учётом контекста, а результат затем объединяется: массивы (например, строки таблицы) склеиваются, а для одиночных полей берётся первое уверенное значение.

Режим precise использует более медленную и точную модель — подробнее в «Тарификация страниц».

Проверки полей

После извлечения значения проходят детерминированные проверки без участия модели: соответствие схеме, контрольные суммы реквизитов и сходимость сумм, если в схеме размечены итог и позиции. Подробнее — «Проверки полей».

Источники в исходном документе

Каждое значение поля может нести список источников — мест в документе, откуда оно взято: номер страницы, прямоугольная область (bbox, в долях от размера страницы) и исходный текст. В ответе API источники лежат в run.fields[<путь>].sources; в Кабинете клик по полю подсвечивает место в документе. Если модель не связала значение ни с одним местом в документе, поле получает статус warn с причиной no_source.

Что дальше