OCR API распознаёт текст на изображениях, сканах и скриншотах. Классический OCR отвечает за само распознавание символов, а мультимодальные модели умеют дополнительно извлекать структурированные данные, переводить и проверять результат.
В этой статье разобраны несколько подходов к OCR API, способы вызова и критерии выбора.
Примечание: интерфейсы OCR у разных поставщиков заметно различаются. Примеры основаны на распространённых решениях; конкретные условия — в официальной документации и документации шлюза.
1. Три подхода к OCR
| Подход | Для чего подходит | Особенности |
|---|---|---|
| Классический OCR | Счета, документы, таблицы, квитанции | Быстро, недорого, рассчитано на фиксированный макет |
| Мультимодальная модель | Сложный макет, рукописный текст, задачи с пониманием | Гибко, но дороже и медленнее |
| OCR + большая модель | Сначала распознавание, затем извлечение и проверка | Компромисс по точности и структуре |
Выбор зависит не только от цены. Для типового документа с фиксированным шаблоном классический OCR часто достаточно надёжен и предсказуем. Для смешанных макетов, рукописных пометок и задач с пониманием смысла полезнее модель со зрением, но её вывод нужно проверять.
2. Классический OCR API
Обычно на вход принимает URL изображения или Base64, а возвращает текст и координаты. Подходит для:
- Паспортов и регистрационных документов.
- Счетов и квитанций.
- Таблиц и бланков.
- Фиксированных шаблонов.
Преимущества — скорость и низкая стоимость; недостаток — неустойчивость к сложному макету, рукописному тексту и плохому качеству изображения.
Если документы приходят из разных источников, заранее проверьте, насколько стабильно определяется ориентация страницы и сохраняется порядок полей. Для фиксированных шаблонов полезно добавить простую проверку обязательных полей после распознавания.
3. OCR на мультимодальной модели
Изображение передаётся модели со зрением, которая сразу выдаёт текст или JSON:
Распознай текст на изображении и выведи его по полям в JSON:
{ "name": "", "amount": "", "date": "" }
Подходит для сложных макетов и задач с пониманием, но нужно учитывать:
- Ограничения на размер и разрешение изображения.
- Вывод может быть нестабильным, нужны схема и проверка.
- Стоимость выше, чем у классического OCR.
- Для чувствительных данных нужно подтвердить соответствие требованиям.
4. Пример вызова (совместимый с OpenAI)
from openai import OpenAI
client = OpenAI(
api_key="sk-ваш-ключ",
base_url="https://ai.zhongshangqihang.com/v1",
)
resp = client.chat.completions.create(
model="gpt-5",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "Распознай текст на изображении и выведи JSON"},
{"type": "image_url", "image_url": {"url": "https://example.com/a.png"}},
],
}
],
)
print(resp.choices[0].message.content)
Поддерживает ли модель зрение, а также допустимые форматы и размеры изображений, уточняйте на странице цены на модели и в документации на сайте.
5. Критерии выбора
- Точность распознавания (печатный текст, рукописный, низкое качество).
- Поддержка макетов (таблицы, квитанции, несколько колонок).
- Поддержка языков.
- Формат вывода (текст, координаты, JSON).
- Задержка и параллелизм.
- Цена (за изображение или за токены).
- Требования к обработке данных.
Полезно оценить не только среднюю точность, но и поведение на редких документах: именно они чаще всего создают ручную работу. Если бизнес-процесс критичен, предусмотрите очередь на проверку человеком для сомнительных результатов.
6. Как проверить точность
Подготовьте 50–100 реальных изображений, охватывающих:
- Чёткие и размытые снимки.
- Съёмку прямо и под углом.
- Печатный и рукописный текст.
- Одну колонку, несколько колонок и таблицы.
Сравните точность по символам, точность по полям и долю успешных структурированных ответов. Не тестируйте только на демонстрационных изображениях из документации.
Отдельно измерьте задержку и стоимость на один документ. Для пакетной обработки важны не только ошибки распознавания, но и число повторных запусков: они незаметно увеличивают бюджет и время обработки.
7. Типичные ошибки
- Изображение слишком сильно сжато, текст размыт.
- Нарушается порядок таблиц и колонок.
- Плохо распознаются рукописный текст и печати.
- Модель нестабильно выдаёт JSON.
- Чувствительные данные документов вывозятся или хранятся дольше нужного.
- Сравнение идёт только по цене за изображение без учёта повторов после сбоев.
Частые вопросы
Чем OCR API отличается от зрения большой модели?
OCR сосредоточен на распознавании текста; модель со зрением дополнительно понимает содержимое, извлекает данные, переводит и проверяет.
Подходит ли для счетов и документов?
Да, но нужно проверить поддержку макета, точность и соответствие требованиям к данным. В важных сценариях рекомендуется ручная проверка.
Что делать с большим изображением?
Сначала сжать, обрезать или повернуть, либо использовать интерфейс, поддерживающий большие изображения. До загрузки уточните ограничения.
Что дальше
Если нужна единая точка входа, начните с тестирования небольшой партии изображений на моделях со зрением в ZSQH AI Gateway. Модели и цены указаны на странице цены на модели.
Читайте также:
