OCR API: по каким критериям выбирать и где прячется стоимость
Сравнивать OCR API по заявленной точности бессмысленно: цифру каждый считает на своих данных. Сравнивать нужно по четырём вещам: за что берут деньги (страница, документ, дело), какие языки поддержаны по-настоящему, что возвращается кроме текста и где обрабатывается документ. Последний пункт для многих отраслей оказывается решающим: если документы содержат персональные данные, их передача наружу отдельный вопрос.
Короткий ответ: выбор сводится к четырём вопросам. За что считают деньги, какие языки реально поддержаны, что возвращается кроме голого текста и где физически обрабатывается документ.
За что берут деньги
Это главное место, где сравнение по цене за единицу вводит в заблуждение.
| Единица | Как выглядит дёшево | Что бывает на практике |
|---|---|---|
| Страница | Низкая цена за страницу | Договор на сорок страниц стоит как сорок документов |
| Документ | Понятно и предсказуемо | Комплект из десяти документов считается десять раз |
| Дело или комплект | Дороже за единицу | Повторные обращения по делу не тарифицируются |
| Запрос к API | Очень дёшево | Повторы при ошибках и ретраи тоже считаются |
Посчитать честно можно только на своём потоке: взять реальную выборку за месяц и посмотреть распределение по числу страниц и документов в деле. Наша модель тарификации описана на странице тарифов: считается дело целиком, а повторные обращения по нему бесплатны.
Языки: заявленные и реальные
В списке поддерживаемых языков обычно десятки позиций, но качество внутри списка разное. Для Казахстана проверять надо три вещи: казахский с его специфическими буквами, смешанный документ на двух языках и переключение раскладок внутри одной строки. Документ, где часть текста на казахском, а реквизиты на русском, ломает многие решения: язык определяется по странице целиком, и вторая половина читается неверно. Что именно ломается, разобрано в статье распознавание документов на казахском языке.
Что возвращается кроме текста
Голый текст полезен для поиска, но для работы обычно нужны поля. Стоит заранее проверить, отдаёт ли сервис:
- координаты найденного текста на странице, чтобы подсветить место в исходнике;
- уверенность по каждому полю, а не общую по документу;
- структуру таблиц, а не набор строк;
- готовые реквизиты: номера, даты, суммы, ИИН, БИН, IBAN;
- результат проверки контрольных разрядов, а не просто найденную строку.
Последнее отличает распознавание от проверки. Найти в тексте двенадцать цифр подряд легко, а вот сказать, что этот ИИН арифметически невозможен, уже другая работа. Как это выглядит в ответе, показано в статье API проверки документов, и живьём на странице распознавания онлайн.
Где обрабатывается документ
Технически все варианты работают, юридически разница существенная.
- Чужое облако за рубежом. Дёшево и быстро, но документ покидает периметр и страну. Для персональных данных требует отдельного правового основания.
- Облако внутри страны. Компромисс: данные не уезжают за границу, но остаются у поставщика.
- В своём контуре. Документы не выходят из сети компании. Дороже во внедрении, но снимает вопрос целиком.
- В браузере пользователя. Документ не уходит никуда вообще. Подходит для разовой проверки, не подходит для потока и учёта.
Что проверить до интеграции
- Прогнать сто своих худших документов, а не десять образцовых. Качество решения определяется на плохих сканах.
- Проверить поведение при перегрузке: очередь, отказ или молчание. Молчание худший вариант.
- Посмотреть, есть ли идемпотентность: повторная отправка того же документа не должна создавать вторую запись и второй счёт.
- Уточнить, сколько хранится документ на стороне сервиса и можно ли это отключить.
- Узнать, что происходит при исчерпании объёма: понятный отказ или тихая потеря обращений.
Как устроены повторные обращения и обработка ошибок, подробно разобрано в статье API проверки документов: запрос, ответ и повторные обращения.
Частые вопросы
Чем отличается OCR API от сервиса проверки документов
OCR отвечает на вопрос, что написано в файле. Сервис проверки отвечает на вопрос, сходятся ли данные между документами комплекта и корректны ли они арифметически. Второе включает первое, но не наоборот.
Можно ли обойтись бесплатным решением с открытым кодом
Для разовых задач и простых сканов да. Для потока придётся самому решать вопросы качества на плохих сканах, языков, извлечения полей, очередей и сопровождения. Это не бесплатно, просто стоимость переносится на разработчиков.
Как считать стоимость, если документы разного объёма
Взять реальную выборку за месяц и посчитать в единицах тарификации поставщика: страницах, документах или делах. При тарификации за страницу большие договоры резко меняют картину.
Что делать с персональными данными в документах
Определить, где документ будет обрабатываться, до выбора поставщика. Если он не должен покидать периметр компании, остаются варианты в своём контуре или обработка на стороне пользователя.
Что с этим делать дальше
Если документы идут потоком, проверку стоит отдать сервису. DocVision Ai читает сканы и PDF, достаёт реквизиты, сверяет документы комплекта между собой и ведёт историю дел. Первые 50 дел в месяц бесплатно, дальше от 1500 тенге за комплект. Отдельный документ можно распознать онлайн без регистрации: файл читается в браузере и на сервер не уходит.