Technical Paper

Этап 1 — Чтение документа

2.4 Этап 1 — Слой чтения документа

Этот этап превращает изображение чека или PDF в текст, который может проверить слой правил. Конвейер работает по принципу vision-first: для изображений модель со зрительными способностями читает фотографию чека напрямую, поэтому отдельный проход OCR для основного пути пропускается. Публичный контракт — это нормализованный выход этапа, а не имя провайдера.

Путь изображения — vision-first

Для загруженных изображений предобработанное изображение отправляется сразу на этап зрительного извлечения (2.5) одним вызовом. Vision-модель выполняет чтение и структурированное извлечение полей вместе, что убирает целый круговой обход провайдера из синхронного пути и не привязывает качество извлечения к сегментации строк отдельного OCR-движка.

Последующие этапы, работающие с обычными строками чека (слой правил, сопоставление товаров), по-прежнему получают вход в стиле OCR: список строк с порядком чтения реконструируется из выхода vision-модели, поэтому эти этапы сохраняют единую форму входа независимо от того, как был прочитан документ.

Путь PDF — ветка OCR

Цифровые счета поступают в виде PDF. Для них конвейер извлекает встроенный текст напрямую, а когда документ не содержит пригодного текстового слоя, откатывается к преобразованию PDF в изображение для vision-пути. Именно в этой ветке выполняется классический шаг извлечения текста; изображения обходят его полностью.

Нормализация выхода

Каким бы ни был источник — выход vision-модели, текст PDF или текстовый дамп, предоставленный оператором, — результат чтения нормализуется в одну внутреннюю форму: строка полного текста плюс упорядоченный список строк (lineNo, text). Последующие этапы потребляют эту нормализованную форму, поэтому извлечение полей не привязано к форме сырого ответа какого-либо провайдера.

Сигнал качества

Этап чтения переносит сигналы качества и категории ошибок на последующие этапы. В случаях низкого качества конвейер может переобработать, запросить у пользователя новое изображение или продолжить с более низкой достоверностью в соответствии с операционной политикой.

Это сохраняет публичный технический контракт, избегая деталей порогов и резервного поведения, которые можно было бы легко реверс-инжинирить.