ZoomApps · блог

Архитектура системы распознавания документов

Разбираем, из каких слоёв складывается архитектура системы распознавания документов для финсектора Казахстана — от приёма файла до структурированного вывода в контуре клиента, с учётом ИИН/БИН, тенге и двух языков.

Главная › Блог › Архитектура системы распознавания докуме

Архитектура системы распознавания документов

Слои конвейера: из чего складывается архитектура системы распознавания документов

Архитектура системы распознавания документов — это не одна модель, а последовательность независимых слоёв, каждый со своей зоной ответственности и своим форматом входа-выхода. Приём файла, нормализация изображения, классификация типа документа, детекция зон, собственно распознавание текста, извлечение полей и валидация — все они соединяются в конвейер, где ошибка на раннем этапе дороже, чем на позднем. Когда речь идёт про распознавание документов в банке или страховой, эту цепочку проектируют так, чтобы каждый слой можно было заменить или дообучить отдельно, не переписывая остальные.

Разделение на слои даёт две практические выгоды. Первая — предсказуемость: между слоями ходят типизированные структуры, а не сырые тензоры, поэтому дефект локализуется быстро. Вторая — эксплуатационная гибкость: слой распознавания печатного текста и слой чтения рукописного заполнения живут отдельно, и обновление одного не задевает валидацию ИИН или сверку сумм в тенге. Такой контракт между этапами важнее выбора конкретной нейросети — модели меняются, интерфейсы между слоями остаются.

Приём, нормализация и классификация входного потока

Первый слой принимает то, что реально приходит из отделения и от клиента: сканы разного разрешения, фотографии с телефона под углом, многостраничные PDF, где перемешаны разные документы. Здесь выполняется дескью и коррекция перспективы, приведение к рабочему DPI, удаление шума и муара, разбиение пачки на отдельные документы. Без аккуратной нормализации любой последующий слой деградирует, а на казахстанских удостоверениях с ламинатом и бликами это заметно сразу.

Дальше поток классифицируется по типу. Модель определяет, что перед ней — удостоверения, договоры, счета-фактуры или банковские выписки — и уже от этого зависит, какой шаблон извлечения полей включится следующим. Классификация до извлечения экономит вычисления и убирает целый класс ошибок: система не пытается искать номер счёта-фактуры в паспорте. Для смешанных пачек KYC это критично — один загруженный архив нередко содержит четыре-пять разнородных типов.

Распознавание текста и извлечение полей: ИИН, БИН, суммы, даты

Ядро конвейера — детекция текстовых зон и их распознавание. Но для бизнеса ценна не строка символов, а извлечённое поле с известной семантикой: именно ИИН, именно БИН контрагента, именно сумма НДС. Поэтому поверх слоя распознавания текста работает слой извлечения, который привязывает распознанный фрагмент к полю по его положению, окружающим меткам и формату. Двенадцатизначный ИИН и БИН проверяются контрольным разрядом ещё внутри системы, до того как значение уйдёт дальше, — это отсекает опечатки распознавания без участия оператора.

Отдельного внимания требуют суммы и даты. Тенге в документах записывают по-разному — с пробелами как разделителем разрядов, с «тг» и «₸», с копейками и без, — и слой извлечения должен приводить всё это к одному числовому виду, сохраняя исходную запись для аудита. Даты в казахстанском документообороте встречаются и в цифровом, и в словесном формате, на двух языках. Задача архитектуры — не угадывать, а нормализовать по явным правилам и помечать неоднозначные случаи флагом низкой уверенности, а не молча подставлять значение.

Двуязычие: казахский и русский в одном документе

Казахстанская специфика в том, что казахский и русский языки нередко соседствуют на одной странице — в шапке, в печатях, в дублированных полях официальных бланков. Архитектура, спроектированная под один язык, на таких документах теряет часть текста или подставляет похожие по начертанию символы. Поэтому слой распознавания настраивают на смешанный алфавит, включая специфические буквы казахского, а слой извлечения умеет выбирать нужную языковую версию поля, когда бланк дублирует значение.

Практический эффект виден на удостоверениях личности и на печатях в договорах: без корректной обработки двуязычия наименование организации читается с искажениями, и сверка с эталоном в учётной системе даёт ложное расхождение. Двуязычность закладывается в архитектуру с самого начала, а не прикручивается словарём поверх готового пайплайна.

Изолированное развёртывание в контуре клиента

Для банков и страховых компаний архитектура распознавания — это ещё и архитектура защиты персональных данных. ZoomApps проектирует систему под изолированное развёртывание: весь конвейер, от приёма файла до извлечения полей, работает внутри периметра клиента, без обращений к внешним облачным сервисам. Документ с ИИН и паспортными данными не покидает контур организации, а значит модель угроз резко сужается, и соответствие требованиям регулятора по защите персональных данных достигается на уровне размещения, а не только политик.

Такое развёртывание задаёт свои требования к архитектуре. Модели должны работать на инфраструктуре заказчика с предсказуемым потреблением ресурсов, обновляться контролируемо, а не автоматически из сети, и логировать ровно столько, сколько нужно для аудита, не накапливая избыточных копий персональных данных. Слои конвейера упаковываются так, чтобы их можно было развернуть в закрытом сегменте, где нет исходящего доступа в интернет, — это и есть практическое отличие изолированной системы от SaaS-распознавания.

Структурированный вывод и интеграция с учётными системами

Финальный слой отвечает за то, ради чего строился весь конвейер, — за структурированный вывод. Система отдаёт не картинку и не сплошной текст, а набор типизированных полей с оценкой уверенности по каждому и со ссылкой на исходную зону документа. Такой формат напрямую ложится в интеграцию: реквизиты из счёта-фактуры уходят в 1С, данные из удостоверения — в KYC-процедуру, суммы из выписки — в сверку, без ручного перебивания.

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

Хотите увидеть распознавание на своих документах? Посмотрите что умеет ZoomApps или сразу напишите нам в WhatsApp — покажем на демо.

Получить демо на своих документах

Пришлите заявку — покажем точность распознавания на ваших документах и как данные лягут в вашу систему. Бесплатно, ответим в течение 15 минут.

Или напишите сразу в WhatsApp · +7 707 928 13 15

Заявка принята ✓

Свяжемся с вами в ближайшее время. Спасибо!

Покажем на ваших документах

Пришлите 2–3 типовых документа — за один созвон покажем точность распознавания и как данные лягут в вашу систему. Бесплатно.

Запросить демо в WhatsApp

Частые вопросы

Как попробовать ZoomApps на своих документах?

Пришлите 2–3 образца в WhatsApp — на демо покажем точность распознавания и как данные лягут в вашу систему. Бесплатно.

Читайте также