- BrainTools - https://www.braintools.ru -

MWS Vision Bench: первый русскоязычный бенчмарк для бизнес‑OCR в эпоху мультимодалок

MWS Vision Bench: первый русскоязычный бенчмарк для бизнес‑OCR в эпоху мультимодалок - 1

Современные LLM умеют «читать» не только текстовые материалы, но и визуальные — от сканов договоров и таблиц до рукописей и диаграмм, и даже обзавелись новым названием — VLM (Vision Language Models). Но измерять качество их работы на реальных бизнес‑сценариях было негде и нечем, особенно если дело касалось тяжелого мультимодального контента на русском. Поэтому мы подумали и собрали собственный бенчмарк — MWS Vision Bench.

Коротко о бенчмарке:
– Состоит из 5 практических заданий: полностраничный OCR (страница→текст), структурированный OCR (страница→Markdown), grounding (координаты текста), KIE/JSON (извлечение значений по ключам) и VQA (вопрос‑ответ).
– Размер: 2580 вопросов к 800 уникальным изображениям (валидационый сплит: 1302 вопроса, тестовый: 1 278 вопросов).
– Код и валидационный сплит открываем; приватный тест — по запросу. Повторить запуск можно менее чем за 1 час.

Репозиторий [1] [2]
Валидационный датасет [3]

Теперь подробности — в вопросно-ответной форме.

Зачем нам ещё один бенчмарк?

За последние два года мультимодальные модели резко продвинулись в чтении изображений документов и другой визуальной информации: договоры, счета, формы, конспекты, диаграммы, интерфейсы приложений. Однако популярные международные бенчмарки часто не покрывают практику бизнеса или не поддерживают русский язык. Например, если мы взглянем на популярный лидерборд мультимодалок на Hugging Face, [4] мы увидим, что он сводится к усреднению нескольких других бенчмарков, таких как HallusionBench, AI2D, MathVista и MMMU. Все бы ничего, но:

  • HallusionBench [5] — диагностический набор про визуальные иллюзии и «галлюцинации» VLM, а не про документы.

  • AI2D (диаграммы) [6] — очень примитивный бенчмарк 2016 года, состоит из диаграмм и учебных иллюстраций, нужно просто выбрать один верный вариант ответа из четырех.

  • MathVista [7] — имеет репутацию математического. Однако если пробежаться по нему детально [8], можно увидеть, что ответ по-прежнему нужно выбирать из нескольких вариантов, а задания не только весьма просты для современных VLM, но часто еще и не имеют никакого отношения к математике [9]. Например, на изображении может быть Обама с гостем, а вопрос звучать как “What is the age gap between these two people in image?”.

  • MMMU [10] — снова нужно выбирать ответы (хотя иногда их нужно прописывать текстом). Бенчмарк делает большой шаг вперед в плане сложности заданий — они доходят до университетского уровня, но это скорее тест на знания модели, чем на ее умение работать с документами.

Если вам нужно написать для вашей компании чат-ассистента, а в документации для базы знаний, по которой он должен работать, очень много сканов финансовых отчетов, вперемешку со схемами эвакуации из здания, скриншотами инструкций из интернета и электросхемами, которые рисовали ваши инженеры, — ни один из этих бенчмарков не будет вам полезен. Ближе всего будет OCRBench [11] и его вторая версия OCRBench V2 [12]. Эти два бенчмарка содержат много разнообразных заданий с тяжелым OCR, но вот незадача — только на английском и китайском языках. На русском языке подходящих бенчмарков нет, совсем.

Иногда можно увидеть попытки решить проблему через перевод существующих бенчмарков с английского языка на русский. Однако если мы хотим оценивать способности VLM в понимании русскоязычной документации, нам нужны именно изображения с текстами на русском. Перевод вопросов и ответов какой-нибудь MathVista или MMMU тут не поможет.

Что внутри MWS Vision Bench?

Чтобы иметь возможность сравнивать разные модели на изображениях с русскоязычным текстом, мы с командой собрали датасет MWS Vision Bench. Он включает 800 изображений из трёх больших семейств:

  • Офисный контент500 изображений:

    • Сканы документов200
      Контракты, письма, договоры. Обычно это страницы А4 с большим количеством печатного текста.

    • Диаграммы100
      Графики, диаграммы, слайды презентаций — там мало понять текст, его расположение на изображении играет важную роль.

    • Таблицы100
      Бухгалтерский учёт / финансы / отчёты с множеством строк и столбцов. Большие и сложные таблицы.

    • Схемы / чертежи / карты100
      Планы, карты, инженерные схемы — то, что сегодня даётся VLM тяжелее всего.

    Примеры изображений категории "Офисный контент"

    Примеры изображений категории “Офисный контент”
  • Персональный контент300 изображений:

    • Рукописные конспекты100
      Конспекты и тетради — исключительно рукописный текст образовательного содержания.

    • Рукописные и смешанные документы 100
      Медицинские справки, открытки, ноты, личные записи и т. п. — рукописный текст с небольшой долей печатного текста.

    • Персональные печатные документы 100
      Чеки, билеты, грамоты, медицинские анализы и т.д.

    Примеры изображений категории "Персональный контент"

    Примеры изображений категории “Персональный контент”

Все изображения обезличены, чувствительные данные замазаны.

Итоговое разбиение датасета по типам контента. Широко представлены как печатные документы, так и рукописные.

Итоговое разбиение датасета по типам контента. Широко представлены как печатные документы, так и рукописные.

На каких задачах оцениваем?

Hаиболее совершенный и сильный из существующих бенчмарков для VLM — OCRBench v2. Он содержит 31 сценарий и ~10 000 QA‑пар, однако все его задания — на английском либо китайском. Мы взяли за основу его идеи и сфокусировались на пяти «сутевых» направлениях (остальные типы заданий так или иначе сводятся к этим пяти):

1) Простой OCR (image→text)
Перевод изображения в простой текст, иногда части страницы, но чаще полностраничный (число токенов в ответе может превышать 4000). Итоговая оценка считается как среднее значение по метрикам BLEU, METEOR, F1-score (по словам), и нормализованной редакторской дистанции.

2) Структурированный OCR (image→markdown)
Усложненная версия — перевод изображения в markdown. Можно было бы добавить и перевод в более сложный код (python / html), но для бенчмарка мы решили, что markdown пока будет достаточно. Метрика TEDS (Tree‑Edit‑Distance Similarity) сравнивает структуру и текст markdown‑деревьев (таргетного и предсказанного). Мы пофиксили баг [13] авторов OCRBench_V2, из‑за которого даже идентичные ответы иногда получали < 1.0.

Пример контента. Скан текстового документа в бенчмарке имеет разрешение 1448x2048. Три задания к нему - извлечение ключевой информации, перевод в текст и перевод в markdown.

Пример контента. Скан текстового документа в бенчмарке имеет разрешение 1448×2048. Три задания к нему – извлечение ключевой информации, перевод в текст и перевод в markdown.

3) Локализация текста на изображении (grounding)
Модель должна понять, где на изображении находится то или иное слово / элемент и вернуть его координаты. Формат боксов: [x1, y1, x2, y2], абсолютные координаты в диапазоне 0…2048 (под размер входных изображений). Метрика — IoU В OCRBench v2.

Изначально координаты были нормализованы к 0…1000 — мы сознательно перешли на абсолютные координаты для этого типа задания. Чтобы обойти препроцессинг (который может менять размеры изображения до того, как оно попадет в модель), мы в вопросе к VLM также сообщаем истинные размеры изображения. Grounding — самое сложное задание для современных мультимодальных моделек, как правило, средний IoU не превышает 25%.

Пример контента. Схема эвакуации в бенчмарке имеет разрешение 803x1152. Два задания к нему - grounding и VQA.

Пример контента. Схема эвакуации в бенчмарке имеет разрешение 803×1152. Два задания к нему – grounding и VQA.

4) Извлечение ключевой информации (Key Information Extraction→JSON)
Необходимо по изображению заполнить JSON — найти значения для заданных ключей и вернуть получившийся словарь. Метрика — точность извлечения ключевых значений. Метрика дискретная: подсчитывается доля ключей, значения которых полностью совпадают с эталоном. Формально вычисляются показатели Precision и Recall на множестве предсказанных пар ключ-значение относительно ожидаемых, после чего итоговая оценка рассчитывается как F1-мера.

5) Ответы на вопросы по изображению (VQA)
Короткие ответы — строгий exact match; ответ модели должен содержать внутри себя один из допустимых таргетных вариантов (например “два” или “2”); длинные ответы (более 5 слов) — текстовая близость (в т. ч. ANLS/редакционная схожесть).

Распределение вопросов по категориям задач. К некоторым изображениям можно задавать вопросы сразу нескольких категорий, но не ко всем (например, сложно переводить чертежи в простой текст или в markdown). Для 800 исходных изображений у нас получилось 2580 пар вопрос-ответ.

Распределение вопросов по категориям задач. К некоторым изображениям можно задавать вопросы сразу нескольких категорий, но не ко всем (например, сложно переводить чертежи в простой текст или в markdown). Для 800 исходных изображений у нас получилось 2580 пар вопрос-ответ.

Как мы делали разметку?

  • Для image→text и image→markdown использовалась предразметка (LLM), но каждый пример прошёл ручную верификацию и правки.

  • Grounding, VQA и KIE размечались полностью вручную.

  • Мы делали несколько итераций улучшений после прогонов моделей: находили спорные места в таргетах и исправляли.

Как показали себя популярные VLMки на бенчмарке?

Мы разделили исходный набор данных (800 изображений, 2580 заданий) случайным образом на две примерно равные части — валидационную (400 изображений, 1302 задания) и тестовую (400 изображений, 1278 вопроса).

Прогнав через бенчмарк известные модели от Google, OpenAI и Alibaba в их различных версиях, мы получили следующую картину.

Распределение моделей на валидационном наборе данных

Model

Overall

img→

text

img→

markdown

Grounding

KIE (img→ JSON)

VQA

Gemini-2.5-pro

0.682

0.836

0.745

0.084

0.891

0.853

Gemini-2.5-flash

0.644

0.796

0.683

0.067

0.841

0.833

gpt-4.1-mini

0.643

0.866

0.724

0.091

0.750

0.782

Claude-4.5-Sonnet

0.639

0.723

0.676

0.377

0.728

0.692

Cotype VL (32B 8bit)

0.639

0.797

0.756

0.262

0.694

0.685

gpt-5-mini

0.632

0.797

0.678

0.126

0.784

0.776

Qwen2.5-VL-72B-Instruct

0.631

0.848

0.712

0.220

0.644

0.732

gpt-5-mini (responses)

0.594

0.743

0.567

0.118

0.811

0.731

Qwen3-VL-30B-A3B-Instruct

0.589

0.802

0.688

0.053

0.661

0.743

gpt-4.1

0.587

0.709

0.693

0.086

0.662

0.784

Qwen3-VL-30B-A3B-Instruct-FP8

0.583

0.798

0.683

0.056

0.638

0.740

Qwen2.5-VL-32B

0.577

0.767

0.649

0.232

0.493

0.743

gpt-5 (responses)

0.573

0.746

0.650

0.080

0.687

0.704

Qwen2.5-VL-7B

0.549

0.779

0.704

0.185

0.426

0.651

gpt-4.1-nano

0.503

0.676

0.672

0.028

0.567

0.573

gpt-5-nano

0.503

0.487

0.583

0.091

0.661

0.693

Qwen2.5-VL-3B

0.402

0.613

0.654

0.045

0.203

0.494

Примечание: обращаться к моделям OpenAI можно по Chat Completions API и Responses API [14]. Последний вариант рекомендуется OpenAI и по нашим наблюдением работает гораздо быстрее (для GPT-5 при этом является единственным надежным). Оба API имеют несколько разный набор гиперпараметров (для Responses API и GPT-5 это, например, не Temperature, а Verbosity и Reasoning Effort). Результаты тоже получаются несколько разные. Если в скобочках не указано Responses API, значит использовался Chat Completions. Положение GPT-4.1-mini выше остальных версий от OpenAI удивительно, однако, доминирование мини-версии над главной – GPT-4.1 – проявляется и в официальных отчетах OpenAI [15] (на том же MathVista или CharXiv). Отставание GPT-5 от других моделей (вроде Qwen2.5-VL-32B) заметно и на схожем по сути бенчмарке OCRBench.

Распределение моделей на тестовом наборе данных

Model

Overall

img→

text

img→

markdown

Grounding

KIE (img→JSON)

VQA

Gemini-2.5-pro

0.670

0.850

0.734

0.079

0.855

0.834

Gemini-2.5-flash

0.633

0.827

0.664

0.072

0.820

0.784

Claude-4.5-Sonnet

0.632

0.727

0.652

0.369

0.745

0.665

gpt-4.1-mini

0.628

0.865

0.710

0.091

0.741

0.735

Cotype VL (32B 8bit)

0.624

0.799

0.742

0.246

0.694

0.685

Qwen2.5-VL-72B-Instruct

0.620

0.840

0.699

0.203

0.631

0.725

gpt-5-mini

0.615

0.797

0.675

0.104

0.745

0.754

gpt-4.1

0.575

0.729

0.691

0.077

0.673

0.705

gpt-5-mini (responses)

0.575

0.749

0.588

0.114

0.741

0.685

gpt-5 (responses)

0.568

0.748

0.646

0.079

0.691

0.676

Qwen2.5-VL-32B

0.565

0.742

0.614

0.217

0.493

0.743

Qwen3-VL-30B-A3B-Instruct

0.557

0.790

0.644

0.053

0.661

0.741

Qwen3-VL-30B-A3B-Instruct-FP8

0.555

0.794

0.656

0.051

0.582

0.689

Qwen2.5-VL-7B

0.537

0.750

0.676

0.184

0.438

0.635

gpt-5-nano

0.499

0.519

0.606

0.090

0.598

0.681

gpt-4.1-nano

0.480

0.686

0.640

0.025

0.555

0.511

Qwen2.5-VL-3B

0.409

0.631

0.688

0.026

0.232

0.469

Как можно заметить, несмотря на несколько разные значения метрик, относительный порядок моделей на валидационном и тестовом сплитах почти полностью совпадает. Безусловный лидер – Gemini-2.5-pro, чуть ниже идут примерно на одном уровне Gemini-2.5-flash, Claude-4.5-Sonnet и GPT-4.1-mini. Grounding дается тяжело всем сегодняшним моделям, кроме моделей от Anthropic. Наша же новая модель Cotype VL (32B 8bit) на обоих сплитах приземлилась в первой части лидерборда, но выше Qwen2.5-VL, Qwen3-VL и GPT-5.

Еще в 2024 году в продуктовой разработке мы замечали, что VLM часто работают лучше традиционного OCR, но все же недостаточно качественно. В начале 2025 года вижн-нейронки совершили большой прыжок вперед (семейство Qwen-2.5-VL и GPT-4.1). Летом 2025 вышло следующее поколение моделей. Однако, глядя на результаты GPT-5 (развитие в сторону рассуждений), а также на такие модели, как Qwen-3 / UI-TARS 2.0 (шаг в сторону моделей 200+ миллиардов параметров), создается впечатление [16], что трендом ушедшего лета стало кратное увеличение именно языковой составляющей. Новые модели (GPT-5, Qwen3-VL) оказались чуть хуже старых (GPT-4.1, Qwen2.5-VL). Мораль – в плане “вижн” пока ничего не меняется — энкодер на полмиллиарда параметров, проекция в LLM-токены. Эту часть никто не улучшает, так что в этом плане летние модели не лучше тех, что выпущены в начале года.

Как запустить бенчмарк у себя?

  • Клонируйте Датасет [3] при запуске скачается автоматически.

  • Производительность: время инференса зависит от числа запущенных параллельно потоков (у OpenAI это упрется в 5-30 в зависимости от tier, для GigaChat API рекомендуем 1 поток, для своих vllm API рекомендуем 30), время оценки — от числа CPU. При хорошем API с max_workers 30 и на мульти CPU-машине бенчмарк пройдет менее чем за полчаса.

  • Повторяемость: из‑за стохастики API/vLLM общий overall гуляет (в среднем) в диапазоне ±0.002 по overall для каждого сплита, по подзадачам — до ±0.010 (что немало для узких срезов, но приемлемо). Мы сознательно сделали фокус именно на vLLM, а не на transformers. Да, transformers позволили бы получать полностью воспроизводимый результат, однако тесты длились бы на порядок дольше (вплоть до суток и более), а главное — бенчмарк создавался для помощи разработчикам продуктов, а они будут работать именно через API / vLLM-интерфейс.

Заключение

Надеемся, бенчмарк будет вам полезен 🙂

Для тех, кто дочитал до конца, еще раз дублирую ссылки:

Репозиторий [1] [2]
Валидационный датасет [3]

Используйте их, чтобы честно сравнивать модели в близких к продакшену условиях. Если же хотите прогон на закрытом тесте или добавить модель в лидерборд (пока положили в README на GitHab), пишите сюда: cotype@mts.ai [17].

Автор: eCaesar

Источник [18]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/20484

URLs in this post:

[1] Репозиторий: https://github.com/mts-ai/MWS-Vision-Bench

[2] : #

[3] Валидационный датасет: https://huggingface.co/datasets/MTSAIR/MWS-Vision-Bench

[4] популярный лидерборд мультимодалок на Hugging Face,: https://huggingface.co/spaces/opencompass/open_vlm_leaderboard

[5] HallusionBench: https://arxiv.org/abs/2310.14566

[6] AI2D (диаграммы): https://huggingface.co/datasets/lmms-lab/ai2d

[7] MathVista: https://arxiv.org/abs/2310.02255

[8] детально: https://huggingface.co/datasets/AI4Math

[9] математике: http://www.braintools.ru/article/7620

[10] MMMU: https://mmmu-benchmark.github.io/

[11] OCRBench: https://github.com/Yuliang-Liu/MultimodalOCR

[12] OCRBench V2: https://github.com/Yuliang-Liu/MultimodalOCR/tree/main/OCRBench_v2

[13] баг: https://github.com/Yuliang-Liu/MultimodalOCR/issues/67

[14] Chat Completions API и Responses API: https://platform.openai.com/docs/guides/migrate-to-responses

[15] в официальных отчетах OpenAI: https://openai.com/index/gpt-4-1/

[16] впечатление: http://www.braintools.ru/article/2012

[17] cotype@mts.ai: mailto:cotype@mts.ai

[18] Источник: https://habr.com/ru/companies/mts_ai/articles/953292/?utm_campaign=953292&utm_source=habrahabr&utm_medium=rss

www.BrainTools.ru

Rambler's Top100