Обзор
jina-ocr-v1 превращает страницу в Markdown за один проход: текст, формулы, таблицы и порядок чтения вместе. Отличие — в том, куда вложена инженерная работа. Качество разбора давно перестало быть редкостью, поэтому модель атакует ту часть, которая действительно стоит денег в продакшене, — декодирование. Вывод OCR локально предсказуем, поэтому модель строит черновик на три токена вперёд, а верификатор жадно проверяет их. Проверка жадная, поэтому результат без потерь, побайтово идентичен обычному авторегрессионному декодированию, и модель закрепляет до 2,7 токена за один проход верификатора вместо одного.
Остальное следует из той же цели. Это mixture of experts с 3,4B параметров в сумме, но активных на токен лишь около 570M: цена выполнения — как у малой модели, а ёмкость — нет. При стандартной настройке динамического разрешения модель набирает 91,14 на OmniDocBench v1.6 и 83,4 на olmOCR-Bench.
Охват языков унаследован от базовой модели. Модель DeepSeek-OCR была преобучена на 30M страниц PDF, охватывающих примерно 100 языков, и jina-ocr-v1 сохраняет её энкодер и декодер, поэтому та же широта распространяется и на разбор документов.
ReaderLM-v2 конвертирует уже извлечённый HTML в Markdown. jina-ocr-v1 начинает на шаг раньше — читает саму отрендеренную страницу.
Методы
Архитектура наследует DeepEncoder и mixture-of-experts декодер DeepSeek-OCR. DeepEncoder — около 380M параметров: он последовательно соединяет 80M SAM-стадию, 16x конволюционный компрессор и 300M CLIP-L стадию, так что страница 1024x1024 обходится лишь в 256 визуальных токенов. Режим динамического разрешения Gundam добавляет 100 токенов на каждый дополнительный тайл, до 1 156 токенов на страницу. Декодер — DeepSeek-3B-MoE: 12 слоёв, скрытый размер 1280, 64 маршрутизированных эксперта плюс 2 общих при top-6 маршрутизации, словарь 129 280 токенов и лимит позиции 32 768.
Скорость декодирования даёт FastMTP — единственный плотный черновой блок, применяемый рекурсивно на K=3 шагах предсказания, вместо K отдельных головок. Проверка жадная, что делает спекулятивный путь без потерь. Выведенный текст идентичен тому, что дал бы обычный авторегрессионный декодер.
Дообучение включает выравнивание по инструкциям, тонкую настройку устойчивости на трудных и деградированных документах и GRPO с плотными проверяемыми наградами — детерминированными проверками формул, таблиц и структуры, дающими частичный балл вместо одного сигнала pass/fail. Данные обучения смешивают очищенные публичные OCR-корпуса — olmOCR-mix, FinePDFs, DoclingMatrix, SynthChartNet, UniMER — с историческим и деградированным материалом из газет Europeana, стенограмм Библиотеки Конгресса и пенсионных дел NARA, плюс целевые синтетические страницы с юнит-тестами в стиле olmOCR-Bench, чтобы у награды было покрытие там, где это важно.
Производительность
На olmOCR-Bench модель набирает 83,4 итого. По подмножествам: Base 99,9 — лучший в сравнении (делит первое место), далее LongTiny 93,2, Tables 88,8, Hdr/Ftr 88,7, ArXiv 86,1, Multi-column 85,5, OldScans-Math 82,3 и OldScans 42,6. На OmniDocBench v1.6 — 91,14 итого: расстояние редактирования текста 0,046, CDM формул 93,28, TEDS таблиц 84,68, TEDS-S 89,01 и расстояние редактирования порядка чтения 0,142.
Результат по эффективности — суть модели. Замер на одной A100 SXM4 40GB при 32 параллельных запросах по 1 403 страницам: устойчивые 2,57 страницы в секунду — лучшие в сравнении и примерно вдвое выше 1,22 у olmOCR-2, при 1 085 выходных токенах на страницу и 2 792 токенах в секунду. Модели с более высоким баллом заметно медленнее. chandra-ocr-2 лидирует по качеству с 85,8, но идёт со скоростью 0,38 страницы в секунду, dots.mocr набирает 83,9 при 0,55. Токенные показатели конкурентны, но не лучшие в пуле. PaddleOCR-VL-1.6 экономнее на страницу — 1 048, а Surya OCR 2 выдаёт больше токенов в секунду — 3 760.
Спекулятивное декодирование — то, что делает дешёвый GPU жизнеспособным. На NVIDIA L4 при размере батча 1 FastMTP поднимает декодирование в eager-режиме с 42,7 до 83,1 выходного токена в секунду при K=3 — ускорение 1,95× при коэффициенте принятия 57,6%. С CUDA-графами базовая линия уже 158,3 токена в секунду, и K=1 — лучшая рабочая точка: 185,6, выигрыш 1,17×. Эти цифры L4 измерены при размере батча 1 на другом железе и не сопоставимы с показателями пропускной способности A100 выше.
Руководство
Для общих документов используйте стандартную настройку динамического разрешения — за ней стоят все заявленные баллы. Вывод в Markdown, поэтому таблицы и формулы приходят уже структурированными и не требуют отдельного шага постобработки. Модель рассчитана на бюджетные GPU. Для интерактивного разбора одного документа хватит L4 или похожего; спекулятивное декодирование даёт наибольший прирост в eager-режиме, поэтому включите K=3 в этом режиме и K=1, если работаете с CUDA-графами. Проверка жадная, поэтому включение или выключение спекуляции меняет пропускную способность, но никогда не меняет текст.
Лучше всего подходит для массовой загрузки документов, конвейеров PDF в Markdown, сканированных и исторических архивов и любой нагрузки, где страницы в секунду на доллар важнее последнего очка в бенчмарке. Шапки и подвалы транскрибируются, а не отбрасываются, — для архивной точности это желаемое поведение, но в тестах отсутствия текста балл низкий. OldScans остаётся самым слабым подмножеством (42,6), так что сильно деградированные сканы по-прежнему заслуживают человеческой проверки.
Если на входе уже полученный HTML, для той же цели Markdown дешевле ReaderLM-v2. Для визуального ответа на вопросы по странице, а не транскрипции, используйте jina-vlm. Для поиска по распарсенному выводу сочетайте с jina-embeddings-v4.


