Baidu представила новую архитектуру оптического распознавания текста (OCR) под названием Unlimited OCR. В основе лежит механизм Reference Sliding Window Attention (R-SWA), который имитирует поведение человека при переписывании текста: он не удерживает в памяти всё написанное, а запоминает только последние символы. В модели это реализовано через фиксированное окно в 128 токенов на сгенерированный вывод, что позволяет удерживать размер кэша ключей-значений (KV cache) постоянным независимо от длины обрабатываемого документа. R-SWA отличается от стандартного скользящего окна тем, что визуальные токены кодируются один раз и не изменяются, а KV-кэш работает как очередь фиксированной длины: каждый новый токен вытесняет самый старый.

Архитектура строится поверх открытой модели Deepseek OCR. Baidu использует собственный DeepEncoder, который сжимает изображение страницы PDF размером 1024×1024 пикселя до 256 токенов. Затем эти токены обрабатываются языковым модулем с архитектурой смеси экспертов (MoE) на 3 миллиарда параметров, из которых при инференсе активно только около 500 миллионов. Доступны два разрешения: режим «Base» для многостраничных документов и режим «Gundam» с динамическим разрешением для одностраничных. R-SWA заменяет все стандартные слои внимания, что предотвращает размытие визуальных признаков, характерное для обычного скользящего окна.

МетрикаUnlimited OCRDeepseek OCR
OmniDocBench v1.5 общая точность93%87%
Пропускная способность, Base mode (токенов/с)5 5804 951

Обучение проходило на примерно 2 миллионах образцов документов, разбитых в соотношении 9:1 между одностраничными и многостраничными данными. Для многостраничных данных использовалась синтетическая сборка: отдельные страницы сшивались в документы длиной от 2 до 50 страниц. Все образцы были упакованы в последовательности по 32 000 токенов, обучение заняло 4 000 шагов на 8 × 16 графических процессоров Nvidia A800. DeepEncoder оставался замороженным, обновлялись только параметры языковой модели.

Модель набрала 93% на бенчмарке OmniDocBench v1.5, что на 6 процентных пунктов выше базы Deepseek OCR.

Baidu derives its architecture from how humans copy text by hand. The DeepEncoder compresses pages while the MoE decoder processes them with R-SWA, running the KV cache as a fixed-length queue. | Image: Baidu
Baidu derives its architecture from how humans copy text by hand. The DeepEncoder compresses pages while the MoE decoder processes them with R-SWA, running the KV cache as a fixed-length queue. | Image: Baidu · Источник: The Decoder

На бенчмарке OmniDocBench v1.5 Unlimited OCR набрал 93% общего качества против 87% у Deepseek OCR. Наибольшее улучшение — в распознавании таблиц (+6 процентных пунктов). На версии v1.6 модель достигла 93,92%, заняв первое место среди сквозных OCR-систем. В тесте на многостраничных документах (до 40+ страниц) частота ошибок по расстоянию редактирования не превышает 0,11, а показатель Distinct-35 составляет 97%. Скорость в режиме Base: 5 580 токенов в секунду — на 12,7% выше, чем 4 951 у Deepseek OCR. При идеальном параллелизме преимущество достигает 35% при ~6 000 выходных токенов. Размер окна в 128 токенов на одностраничных документах не только не вредит точности, но и слегка улучшает её: авторы связывают это с тем, что R-SWA заставляет модель плотнее концентрироваться на текущей задаче OCR, предотвращая расходимость при полном внимании.

Ограничения связаны с фиксированной длиной контекста в 32 000 токенов, которая ограничивает количество обрабатываемых страниц из-за накопления визуальных токенов от каждого дополнительного изображения. Ошибки в основном возникают на очень мелком тексте — это связывают с разрешением DeepEncoder в базовом режиме, а не с ограничениями R-SWA. Авторы отмечают, что сужение окна до 128 токенов на одностраничных документах не снижает точность, а даже немного улучшает её: модель вынуждена фокусироваться на плотной задаче OCR. Несмотря на название, модель не является полностью неограниченной: длина контекста фиксирована, что накладывает практические ограничения на количество страниц, обрабатываемых за один проход.