Surya OCR
Оцените Surya OCR для извлечения документов: разделяйте новые и старые интерфейсы, лицензии кода и весов, связи таблиц и необходимую ручную проверку.
Идентификация и доступ
- Название модели
- Surya OCR
- Доступ
- Текущий проект доступен через официальный репозиторий и Python-пакет. Лицензии кода и весов оцениваются отдельно.
- Тип модели
- Transformer
- Архитектура
- Документная визуально-языковая модель Surya 2 с отдельными моделями обнаружения
- Для кого
- Разработчики и команды документооборота, способные закрепить версии, создать эталонную выборку и проверить структуру до автоматизации.
- Входные данные
- Изображения страниц для документированного OCR-интерфейса. Сохраните версию пакета и подготовку PDF вместе с протоколом.
- Результат
- Структурированные OCR-результаты, где текст, блоки, порядок чтения, HTML, пропуски и ошибки проверяются по контракту.
- Стоимость
- Отдельно учитывайте лицензию весов, запуск сервера, обработку страниц и ручное исправление. Доступ к коду не определяет стоимость принятого документа.
- Когда не использовать
- Не переходите к автоматизации, пока не решены условия лицензии, допустимость ошибок и текущий контракт результата.
Источники и метод
Лицензия и права
- Лицензия
- Код Apache 2.0; веса modified OpenRAIL-M
- Тип лицензии
- Исходный код доступен
- Область действия лицензии
- Apache 2.0 применяется к коду. Для весов действуют отдельные условия modified OpenRAIL-M об обороте, финансировании и конкурирующем использовании. Прочитайте полный текст для своей организации.
- Открытый исходный код
- Нет
Доступность
- Статус
- Доступна
- Область действия статуса
- Текущий проект доступен через официальный репозиторий и Python-пакет. Лицензии кода и весов оцениваются отдельно.
Ключевые аспекты
OCR, layout и таблицы в Surya 2
Проверенная документация использует документную модель для OCR, layout и таблиц. Интерфейсы V2 отличаются от старых примеров.
Структуре документа нужны отдельные проверки
Schema показывает блоки, порядок чтения, HTML, пропуски и ошибки. Испытание должно проверять связи, а не одно число.
Код и веса имеют разные условия
Код использует Apache 2.0, а веса отдельную modified OpenRAIL-M с дополнительными ограничениями.
Сценарии использования и ограничения
Испытание извлечения документов поставщиков
Создайте малую выборку важных layout, таблиц и отказов и сравните результат с подготовленным человеком эталоном.
Миграция OCR с учётом версии
Закрепите пакет и сохраните пример результата, чтобы найти изменившиеся предпосылки schema, endpoint и concurrency.
Плюсы
- OCR, layout и таблицы используют общий inference manager в документированном V2-процессе.
- Структурированные поля позволяют отдельно проверить порядок чтения, пропуски и ошибки.
- Inference manager может подключаться к существующему серверу для повторного использования.
Ограничения
- Старые примеры Surya могут противоречить текущим V2-интерфейсам.
- Apache 2.0 для кода не заменяет условия modified OpenRAIL-M для весов.
- Верные слова всё ещё могут иметь неправильный порядок чтения или связь с таблицей.
Темы
- Surya OCR
О модели
На этой странице
Surya OCR представляет собой проект для извлечения текста и структуры страниц из изображений и PDF. Его имеет смысл оценивать, когда приложению нужен не только непрерывный текст, но и порядок чтения, блоки или области таблиц. Здесь важна версия: материал относится к актуальной документации Surya 2, а не к старым интерфейсам из прежних руководств. Успешная установка является лишь началом. Приёмочная проверка должна показать, сохранился ли смысл документа после извлечения.
Это исследование источников, проверенных 10 сентября 2026 года. Мы не запускали OCR-бенчмарк и не обрабатывали документы клиентов. Ниже предложен адаптируемый сценарий испытания с явными условиями отклонения, а не вымышленная оценка точности.
Изученная ревизия кода и документации: a2363d33.
Определите, что должно сохраниться после извлечения
Начните с операции, которая будет использовать результат. Для поиска по архиву нужны иные доказательства, чем для импорта счёта в бухгалтерскую систему. Поисковый индекс может допустить искажённый декоративный заголовок, если пользователь всё равно находит правильную страницу. Импортёр счетов не может считать правдоподобный, но неверный номер счёта незначительной ошибкой оформления.
Представим команду, которая получает PDF от поставщиков. Часть файлов содержит чистый цифровой текст, а часть является сканами со штампом, двухколоночным адресом или таблицей, продолжающейся на следующей странице. Нужен не просто статус «OCR завершён», а проверяемая запись, где поставщик, позиции, количества и суммы остаются связанными с исходными областями.
Запишите требования до выбора настроек. Укажите поля, которые нельзя принимать без проверки, структуры, которые должны оставаться связанными, и случаи для очереди ручного контроля. Так читаемый абзац не скроет непригодную таблицу. Каждый сравниваемый процесс должен сохранять одну и ту же информацию, а не только давать привлекательный просмотр.
Документация проекта позиционирует Surya для документов, а не для текста в естественных сценах. Фотография витрины или движущегося дорожного знака требует отдельной оценки. Поддержка многих языков не доказывает пригодность для любого снимка. Область применения и ограничения Surya.
Проверьте установленную версию перед копированием примеров
Название семейства моделей и версия Python-пакета являются разными идентификаторами. На момент проверки конфигурация объявляла версию 0.22.1 и поддержку Python начиная с 3.10. Запишите фактически установленный пакет, контрольную точку, серверную часть и окружение. Команда без этих данных не является воспроизводимой интеграцией. Конфигурация пакета.
В текущих указаниях по миграции прежний foundation predictor заменён менеджером инференса, а поля OCR-результата изменены. Считайте обновление изменением контракта приложения. До обработки коллекции откройте реальный результат и убедитесь, что парсер читает поля именно этой версии. Переход с Surya v1.
Текущая схема распознавания представляет страницу блоками и границей изображения. Блоки содержат порядок чтения, HTML-содержимое и явные признаки пропуска или ошибки. Пустой блок нельзя автоматически превращать в пустое значение базы. Сохраните статус, позволяющий отличить намеренно пропущенную область от ошибки распознавания и области без текста. Схема распознавания.
Для существующей интеграции сохраните рядом типичный старый и новый результаты и сначала сравните структуру. Проверьте переименованные поля, вложенность, порядок страниц и обработку отсутствующих значений. Тест схемы, который проходит при незаметной потере всех таблиц, неприемлем.
Разделите разрешения для кода и весов модели
Код репозитория использует Apache 2.0. Для весов действует отдельная модифицированная лицензия OpenRAIL-M. Нельзя описывать всю систему как GPL или считать, что лицензия кода автоматически разрешает неограниченное применение весов. Лицензия кода, лицензия весов.
Приложение A содержит ограничения, связанные с валовым доходом за прошлый год свыше пяти миллионов долларов США, совокупным долевым или долговым финансированием свыше этой суммы и продуктами либо услугами, конкурирующими с предложениями лицензиара. Исключения для личного использования или исследований в положениях о доходе и финансировании не равны отдельному ограничению конкурирующего использования. Не превращайте это в общее утверждение о разрешении для малого бизнеса. Изучите полный текст для своей организации и развёртывания. Этот материал описывает лицензию, но не даёт юридического заключения.
Права на документы также проверяются отдельно. Разрешение запускать модель не означает права загружать записи поставщика, бессрочно хранить извлечённые идентификаторы или использовать их для обучения другой системы. Зафиксируйте владельца входных данных, доступ к результату и разрешённую среду обработки.
Создайте небольшую выборку, раскрывающую дорогие ошибки
Для сценария с поставщиками выберите ограниченную выборку реальных типов проблем: цифровой PDF, бледный скан, повёрнутую страницу, многоколоночный документ и таблицу с повторяющимися заголовками. Это предлагаемые категории, а не заявление об успехе или отказе Surya.
До просмотра результата модели человек должен переписать критические поля и отметить ожидаемый порядок чтения. Иначе сгенерированный текст станет собственным эталоном. Храните исходную страницу рядом с эталоном, а действительно неоднозначный знак помечайте как неоднозначный.
Назначьте странице устойчивый идентификатор. Сохраните хеш входа, размеры, настройки и путь результата. Не помещайте закрытые документы в публичные отчёты об ошибках. По возможности воспроизведите дефект парсинга на нечувствительном заменителе с тем же макетом и обозначьте его как диагностический образец.
Сначала обработайте минимальную выборку. Проследите результат через собственный парсер до целевого приложения, а не только в интерфейсе Surya. Отправка архива в непроверенный парсер увеличивает объём исправлений и не даёт лучшего объяснения первой ошибочной предпосылки.
Используйте лист приёмки вместо одного числа точности
Следующая таблица является редакционным предложением для примера с документами поставщика. Фактические допуски задают ответственные за целевую систему. Измеренных результатов Surya в ней нет.
| Проверка | Сохраняемые доказательства | Отклонить или направить на проверку, если |
|---|---|---|
| Критические реквизиты поставщика и платежа | Фрагмент источника, эталонная расшифровка и извлечённое значение | Один символ меняет поставщика или платёжную ссылку. |
| Порядок чтения | Упорядоченные области источника и блоки результата | Текст колонок смешан или примечание связано не с тем разделом. |
| Связи в таблице | Заголовок, строка, количество и сумма остаются вместе | Верные числа относятся к другой позиции. |
| Пропущенный материал | Число страниц и ожидаемые области сопоставлены со статусом | Страница, строка продолжения или сноска исчезает без сигнала. |
| Поведение назначения | Импортированная запись со ссылкой на источник | Приложение удаляет неопределённость или происхождение. |
Отделяйте критические ошибки от косметических. Перенос строки может быть безвреден для поиска и неприемлем для формы с фиксированным макетом. Правило задаётся заранее. Записывайте причину каждой классификации, чтобы следующий проверяющий мог применить то же правило. Учитывайте время ручной проверки и исправления, а не только скорость удачных страниц. Если результат сокращает набор текста, но заставляет постоянно искать исходные страницы, процесс всё равно может оказаться медленнее. Измеряйте время до исправленной и принятой записи с учётом сбоев, чтобы выборка помогала принять рабочее решение, а не только демонстрировала модель.
Измеряйте запуск и обработку раздельно
Текущая документация описывает vLLM для GPU NVIDIA и llama.cpp для CPU или Apple Silicon. Установка включает процесс инференса помимо Python-пакета. Укажите backend прямо в протоколе. Фраза «работало локально» недостаточно точна. Документация backend.
Файл настроек отдельно задаёт кэш моделей, endpoint и жизненный цикл сервера. Локальная команда может обращаться к удалённому endpoint, а первый запуск может загружать модели. Проверьте фактическую сеть и движение документов перед заявлением об офлайн-режиме или пригодности для конфиденциальных данных. Настройки инференса.
Раздельно измеряйте холодный старт, обработку прогретой страницы, преобразование результата и ручное исправление. Сравнивайте одну выборку и учитывайте сбои. Быстрый прогретый запуск не показывает, как поведёт себя запланированная задача, если для каждого документа создаётся новое окружение.
Меняйте разрешение или параллелизм по одному параметру и после каждой замены снова проверяйте мелкий текст и сложную таблицу. Следите за всем процессом, чтобы заметить нехватку памяти или обрезанный результат. Сохраняйте прежние настройки, пока новые не пройдут тот же лист приёмки. Ускорение, при котором теряется десятичный разделитель в документе поставщика, не является полезной оптимизацией.
Найдите сломанный этап до повторного запуска
Сопоставляйте страницу, сырой результат и импортированную запись. Если текст неверен уже в сыром результате, изменение схемы базы не исправит распознавание. Если сырой результат верен, а строки перепутаны после импорта, повтор модели не исправит парсер.
| Симптом | Первая проверка | Наблюдаемое подтверждение после изменения |
|---|---|---|
| Приложение ничего не импортирует | Ожидаемая схема, сырой результат и флаги ошибок | Известная непустая страница создаёт запись и сохраняет статус ошибки. |
| Символы читаемы, но смысл изменён | Порядок колонок и связи заголовков со значениями | Значение прослеживается до нужной области источника. |
| Мелкий текст отсутствует | Исходный фрагмент и реально поданное растровое изображение | Та же область читаема на входе и верно появляется в результате. |
| Скорость резко меняется | Время запуска, насыщение backend и конвертация | Повторные запуски объясняют разброс, не исключая сбои. |
| Новая версия ломает старые документы | Закреплённые версии, настройки и контракты | Старая выборка и новый проблемный пример проходят до выпуска. |
Не исправляйте неоднозначный источник молчаливой догадкой. Сохраните отметку неопределённости или отправьте страницу человеку. Это особенно важно, когда гладкий результат побуждает довериться значению, которое в оригинале едва читалось.
Выберите следующий процесс по доказательствам
Если PDF уже содержит пригодный текст и структуру, сначала сравните прямое извлечение. Для небольшой коллекции со сложным почерком или нерегулярными таблицами контролируемая расшифровка может быть проще крупной интеграции. Это варианты процесса, а не заявление о превосходстве другой модели.
Управляемый сервис документов отличается от самостоятельного размещения Surya. Отдельно оцените его условия, хранение, контракт результата и общую нагрузку проверки. Родственная модель не делает сервис идентичным репозиторию и не переносит на него локальные тесты.
Полезный итог представляет собой документированную границу: какие документы допускаются, какие поля требуют проверки и какие ошибки останавливают автоматический импорт. Сохраняйте отклонённые примеры как регрессионный набор в рамках правил хранения и повторяйте его при изменении пакета, checkpoint, backend или парсера.
Эта оценка не доказывает универсальную языковую точность, соответствие требованиям конфиденциальности в production или гарантию автоматической обработки счетов. Она предлагает способ проверить конкретную задачу. Другие категории доступны в каталоге моделей, где нужны те же правила источников и приёмки.
Вопросы и ответы
Что проверить перед интеграцией Surya OCR?
Запишите версию пакета, модель, endpoint или local backend, настройки и ожидаемую schema. Затем проверьте выборку по человеческому эталону.
Весь ли Surya OCR использует Apache 2.0?
Нет. Код использует Apache 2.0, а веса отдельную modified OpenRAIL-M с дополнительными условиями.
Доказывает ли верный текст правильное извлечение?
Нет. Порядок чтения, блоки, таблицы, пропуски и ошибки могут повредить следующую операцию.
Проводился ли здесь benchmark Surya OCR?
Нет. Это исследование источников, не устанавливающее точность, скорость, требования к hardware или трудозатраты.