OCR, Document AI и обычный AI-чат - не одно и то же

OCR преобразует изображение символов в текст и может вернуть координаты слов. Document AI дополнительно восстанавливает структуру: страницы, блоки, таблицы, поля и их значения. Большая языковая модель умеет объяснять и нормализовать результат, но может правдоподобно исправить символ или заполнить пропуск без доказательства.

1
неизменяемый оригинал для каждой обработки
3
проверки: OCR, схема, бизнес-правила
0
догадок модели вместо неразборчивого значения

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

Какой результат вам действительно нужен

Поисковый PDF
Изображение страницы плюс скрытый текстовый слой для поиска.
Сплошной текст
Чтение, поиск, перевод или последующая редактура.
Таблица
Строки, столбцы, объединённые ячейки и заголовки.
Поля формы
Номер, дата, контрагент, сумма и другие key-value pairs.

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

Определите тип PDF до распознавания

PDF - контейнер. Внутри может быть настоящий текст, скан, сочетание слоёв, формы и вложения. Попытка OCR уже текстового файла иногда портит порядок чтения и символы.

Быстрая диагностика
  1. Выделяется ли текст и корректно ли копируется.
  2. Работает ли поиск по известному слову.
  3. Есть ли страницы только с изображением.
  4. Не дублируется ли скрытый OCR-слой.
  5. Сохраняется ли порядок колонок при копировании.
  6. Есть ли цифровая подпись или ограничения редактирования.
  7. Содержит ли файл формы, вложения или комментарии.
  8. Какой язык и письменность используются.

Adobe рекомендует сохранять резервную копию оригинального скана до редактирования и проверять результат OCR.

Подготовка скана: качество входа определяет результат

Даже сильная модель плохо восстанавливает символ, которого нет на изображении. Документация Tesseract отдельно выделяет масштаб, бинаризацию, удаление шума, коррекцию перекоса и границ. Для Tesseract ориентиром хорошего входа называется разрешение не ниже 300 dpi, но реальный результат зависит от шрифта и документа.

  1. Развернуть страницы в правильную ориентацию.
  2. Исправить перспективу и перекос строк.
  3. Обрезать фон, пальцы, края стола и тёмные рамки.
  4. Повысить контраст без потери тонких символов.
  5. Убрать шум, просвечивание и следы сгиба.
  6. Не сжимать повторно уже слабое изображение.
  7. Выбрать правильный язык и набор символов.
  8. Разделить разворот на отдельные страницы.

Adobe Acrobat: сделать сканируемый PDF поисковым

В Acrobat инструмент Scan & OCR распознаёт текст в сканированном PDF и добавляет поисковый текстовый слой. Можно выбрать страницы, язык и параметры, а также пакетно обработать несколько файлов в подходящих редакциях.

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

Tesseract: локальный OCR с открытым исходным кодом

Tesseract - OCR-движок под лицензией Apache 2.0 с языковыми моделями для множества языков и письменностей. Он подходит для локальных конвейеров, когда нужен контроль инфраструктуры и разработчик готов заниматься предобработкой и разметкой результата.

ПлюсОграничениеКогда выбирать
Работа на своей инфраструктуреНужно настраивать окружениеЧувствительные или массовые документы
Открытый кодНе является готовой бизнес-системойСобственный pipeline
Языковые модели и параметрыТаблицы требуют отдельной логикиПредсказуемые типы страниц
Searchable PDF и текстКонтроль качества строится самостоятельноАрхив и индексирование

Google Document AI и Azure Document Intelligence

Облачные document-processing сервисы возвращают не только текст. Google Document AI описывает OCR, layout, таблицы, key-value pairs, selection marks и специализированные processors. Azure Document Intelligence Read OCR извлекает строки, слова, координаты, язык и признаки рукописного текста; другие модели работают со структурой и полями.

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

Таблицы: почему копирование текста ломает данные

Линейный OCR может прочитать все слова таблицы, но потерять связь между строкой и столбцом. Объединённые ячейки, многострочные заголовки, отсутствие границ и перенос таблицы на другую страницу усложняют задачу.

Проверка таблицы
  1. Число столбцов совпадает на всех строках.
  2. Заголовки связаны с правильными столбцами.
  3. Объединённые ячейки не размножили значение.
  4. Перенос строки не создал новую запись.
  5. Итог и подытоги отделены от операций.
  6. Отрицательные значения и скобки сохранены.
  7. Десятичный и разрядный разделители распознаны.
  8. Валюта и единица не потерялись.
  9. Продолжение на следующей странице объединено корректно.
  10. Сумма строк сверена с итогом оригинала.

Поля документов: схема важнее красивого JSON

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

Спроектируй схему извлечения без реальных документов.
Тип документа: [счёт / акт / анкета]
Цель процесса: [куда идут данные]
Нужные поля: [список]

Для каждого поля опиши: JSON-имя, тип, формат, обязательность, нормализацию, допустимый диапазон, проверку, связь с другими полями и условие ручной проверки. Добавь служебные поля page, bounding_box, raw_value, normalized_value, confidence и validation_errors. Не предлагай заполнять отсутствующее значение по догадке.

Как использовать LLM после OCR

Языковая модель полезна на втором этапе: классифицировать документ, сопоставить разные названия поля, нормализовать адрес, выделить пункт договора или объяснить расхождение. Исходный OCR и координаты при этом сохраняются.

Работай только с OCR-текстом и координатами. Верни JSON строго по схеме [схема].
Правила: - не исправляй числа и имена без источника; - raw_value сохраняй дословно; - normalized_value заполняй только по указанным правилам; - для каждого значения укажи страницу и фрагмент; - отсутствующее поле = null; - сомнительное значение добавь в review_required; - не вычисляй пропущенное поле из контекста, если схема явно не разрешает вычисление; - ответ должен проходить JSON Schema.

Числа и даты: зона максимального риска

Ошибка одной буквы портит поиск, ошибка одной цифры меняет платёж. Особое внимание требуют похожие символы: ноль и буква O, единица и I, 5 и S, 8 и B. Также опасны запятые, точки, пробелы, скобки и разные форматы дат.

ПолеАвтоматическая проверкаРучной триггер
СуммаДиапазон, валюта, арифметика строкРасхождение с итогом
ДатаФормат, допустимый периодНеоднозначные день и месяц
ИНН или IDДлина и контрольное правило, если применимоНарушение формата
Номер счётаШаблон и уникальностьПохожий уже существует
КоличествоТип, знак, единицаРедкое или предельное значение

Confidence score не заменяет проверку

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

Номер договора может требовать ручной проверки даже при высокой уверенности, если ошибка создаёт большой ущерб. Название отдела может быть допустимо при более низкой уверенности, если оно используется только для поиска. Решение определяет риск поля, а не единый процент для всего документа.

Создайте эталонный набор и измеряйте качество

Не оценивайте OCR по нескольким красивым страницам. Соберите документы разных поставщиков, лет, языков и качества. Разметьте истинный текст и поля, сохраняя оригинал.

  • Character Error Rate. Ошибки символов полезны для сплошного текста.
  • Word Error Rate. Показывает качество слов, но не структуру.
  • Field accuracy. Доля полностью правильных значений поля.
  • Table accuracy. Правильность ячеек и их координат.
  • Straight-through rate. Доля документов, прошедших без человека при заданном качестве.
  • False acceptance. Ошибочные документы, которые система пропустила.
  • Review time. Время человеческой проверки одного документа.

Промпт для аудита извлечённых данных

Проверь извлечённые поля относительно OCR-фрагментов, не используя внешние знания.
Для каждого поля выведи:
field | extracted | raw_fragment | page | status | reason.
Статусы: confirmed, mismatch, ambiguous, missing_source, invalid_format.
Проверь суммы строк и итог, даты, валюту, единицы, отрицательные значения, номера и дубли. Не исправляй mismatch автоматически: предложи кандидаты и отправь на ручную проверку. В конце перечисли проверки, которые нельзя выполнить без изображения оригинала.

Безопасность документов

Счета, договоры и анкеты часто содержат персональные, платёжные и коммерческие данные. Бесплатная загрузка файла в публичный AI-чат может нарушить договор или внутреннюю политику. До обработки определите разрешённого поставщика и конкретный продукт.

Контур обработки
  1. Определён класс данных и владелец.
  2. Есть основание и разрешение на обработку.
  3. Проверены регион, подрядчики и договор.
  4. Используется корпоративный аккаунт или утверждённый API.
  5. Доступ ограничен ролями и минимальными правами.
  6. Оригиналы и выгрузки шифруются.
  7. Логи не содержат полный документ без необходимости.
  8. Срок хранения и удаление охватывают копии.
  9. Есть процесс запроса, исправления и удаления данных.

Архитектура конвейера обработки

  1. Приём. Проверка типа, размера, вредоносного содержимого и дубликата.
  2. Сохранение оригинала. Неизменяемый файл, хэш и права доступа.
  3. Предобработка. Разворот, deskew, crop, очистка и разделение страниц.
  4. OCR/Layout. Текст, координаты, таблицы и поля.
  5. Нормализация. Строгая схема без потери raw value.
  6. Валидация. Форматы, справочники, арифметика и бизнес-правила.
  7. Маршрутизация. Автопроводка или очередь ручной проверки.
  8. Экспорт. Идемпотентная запись в целевую систему.
  9. Наблюдаемость. Версия модели, ошибки, время и качество.
  10. Удаление. Жизненный цикл оригиналов и производных файлов.

Human-in-the-loop без двойной ручной работы

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

Исправление сохраняют отдельно от сырого OCR вместе с автором и временем. Подтверждённые ошибки пополняют тестовый набор, но не должны автоматически обучать модель без проверки качества и прав на данные.

Пилот на четыре недели

Неделя 1
Один тип документа, схема, риски и эталонная выборка.
Неделя 2
Сравнение OCR, layout и предобработки на эталоне.
Неделя 3
Валидация, интерфейс проверки и закрытый поток.
Неделя 4
Метрики, ошибки, стоимость и ограниченный запуск.

Финальный чек-лист перед автоматизацией

Готовность OCR-процесса
  1. Результат и схема данных определены.
  2. Оригинал сохраняется без изменений.
  3. Предобработка настроена на реальные сканы.
  4. Языки и типы документов поддерживаются.
  5. Таблицы извлекаются со структурой.
  6. Raw и normalized значения разделены.
  7. Источник поля связан со страницей и областью.
  8. Критичные числа проходят отдельные проверки.
  9. Пороги настроены на размеченной выборке.
  10. Неуверенные документы уходят человеку.
  11. Экспорт защищён от дублей.
  12. Версии моделей и ошибки журналируются.
  13. Доступ, хранение и удаление утверждены.
  14. Есть план отката и ручной работы при сбое.

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

Что такое OCR простыми словами?
OCR - оптическое распознавание символов: технология превращает изображение текста на скане или фотографии в машиночитаемый текст, который можно искать, копировать и обрабатывать.
Как распознать текст в сканированном PDF?
Сохраните оригинал, выровняйте страницы, выберите язык и запустите OCR в Acrobat, Tesseract или document-processing сервисе. Затем проверьте полноту и критичные значения по изображению.
Можно ли распознать таблицу из PDF нейросетью?
Да, но нужен инструмент, который извлекает layout и ячейки, а не только последовательность текста. Обязательно проверьте заголовки, объединённые ячейки, переносы страниц, числа и итоги.
Как повысить точность OCR?
Исправьте ориентацию и перекос, обрежьте лишние края, повысьте контраст, удалите шум, используйте достаточное разрешение и правильный язык. Тестируйте настройки на своих документах.
Можно ли доверять confidence score?
Нет как единственному критерию. Значение зависит от модели и требует калибровки на размеченных документах. Учитывайте риск поля и независимые проверки формата и арифметики.
Как проверять суммы после распознавания?
Сверяйте валюту и разделители, пересчитывайте строки, налоги и итог, проверяйте знак и единицу, а любое расхождение отправляйте на ручную проверку по оригиналу.
Безопасно ли загружать договор или счёт в онлайн-OCR?
Только если конкретный сервис разрешён для этого класса данных и проверены договор, регион, доступ, хранение и удаление. Для чувствительных файлов может потребоваться корпоративный API или локальный OCR.
Какой OCR выбрать: Acrobat, Tesseract, Google или Azure?
Acrobat удобен для поисковых PDF, Tesseract - для локального собственного pipeline, облачные Document AI и Document Intelligence - для масштабного извлечения layout, таблиц и полей. Выбирайте по тесту на своих документах и требованиям к данным.
← Все статьи блога