редакции
Распознавание речи на русском: почему выбор модели «по ощущениям» всегда врёт

Голосовой ввод на русском — та область, где интуиция подводит особенно сильно. Модель, которая «вроде получше», при аккуратном замере оказывается хуже; а нишевый файнтюн, положенный в набор по умолчанию непонятно зачем, внезапно идёт вровень с флагманом. Разберу, почему так выходит и на что смотреть, кроме процента ошибок.
Как ломается сравнение «поработал неделю — понравилось»
Самый естественный способ выбрать модель — переключить её в своём приложении, подиктовать несколько дней и сравнить с прежней. Способ честный по намерению и бесполезный по результату, потому что разваливается сразу в трёх местах.
- Память. Свежие ошибки текущей модели помнятся ярче, чем такие же ошибки предыдущей две недели назад.
- Адаптация. За неделю человек подстраивает темп и формулировки под конкретную модель. Реальная разница смазывается — вы притираетесь к каждой.
- Разное аудио. Каждую модель гоняют на своих свежих надиктовках, то есть сравнивают разные модели на разном материале. Общего эталона нет вообще.
Автор недавнего большого разбора честно описал этот путь: в марте он рекомендовал одну модель, а собрав нормальный стенд — 23 модели в шестидесяти с лишним конфигурациях, больше ста тысяч прогонов и свыше 120 часов чистого инференса на одной RTX 5070 Ti — обнаружил, что рекомендация держалась на инерции, а не на измерении.
Процент ошибок — необходимая метрика, но недостаточная
Классическая метрика распознавания — WER, доля слов, отличающихся от эталона: сумма замен, пропусков и вставок, делённая на число слов в эталоне. Она отвечает на вопрос «правильно ли модель расслышала слова» и ничего не говорит о том, можно ли пользоваться результатом.
Второе требование — знаки препинания. Продиктуйте что-нибудь длинное во встроенную диктовку телефона на русском, и получите простыню одной строкой: без точек, без запятых, всё со строчной буквы. Такой текст тяжело читать, тяжело править и особенно тяжело скармливать языковой модели — без знаков препинания она хуже определяет, где кончается одна мысль и начинается другая. Чем длиннее простыня, тем сильнее она плывёт. Часть моделей в бенчмарках вообще не расставляет пунктуацию — и это видно с первого взгляда, до всякого подсчёта WER.
Третье требование специфично, но для технической диктовки решающее — сохранять английские термины латиницей.
Code-switching: почему «гитхаб» дороже, чем github
Разработчик диктует так, как говорит: русская фраза с английскими словами внутри — «задеплой feature в production», «смёржи branch». Это называется code-switching, переключение между языками внутри фразы. Хорошая модель, услышав английский термин, пишет его латиницей, а не угадывает кириллицей.
Разница не косметическая. Токенизаторы языковых моделей работают на уровне подслов, а не понятий: английское github кодируется одним-двумя токенами, русское «гитхаб» — четырьмя-пятью. Если транскрипция идёт не человеку, а модели в виде промпта или заметки, кириллическая запись терминов раздувает вход, увеличивает стоимость и размывает границы понятий.
Что реально влияет на результат, кроме имени модели
Дальше начинается инженерия, и вклад её сопоставим с выбором самой модели.
- Детектор речи (VAD). Встроенный детектор режет аудио на фрагменты. Настройка агрессивности меняет и качество, и скорость в разы; на некоторых конфигурациях отключение внутреннего детектора улучшает оба показателя сразу.
- Начальный промпт. Многие модели принимают затравку — образец текста, задающий стиль. Явно перечисленные в затравке знаки препинания заметно меняют пунктуацию на выходе.
- Точность вычислений. Float16 против int8 — разница по памяти и скорости при небольшой потере качества; на длинном аудио выигрыш во времени существенный.
- Ширина луча при декодировании. Больше вариантов перебора — выше качество и линейно дольше обработка.
- Бэкенд ускорения. На части конфигураций Vulkan оказывается быстрее CUDA, что противоречит ожиданиям и обнаруживается только замером.
Из этого следует практическое правило: сравнивать имеет смысл не «модель А против модели Б», а «конфигурация против конфигурации». Одна и та же модель в двух настройках расходится по качеству сильнее, чем две разные модели в одинаковых.
Как собрать честный стенд
Минимальный набор, который даёт воспроизводимый результат.
- Зафиксированный корпус аудио: один и тот же материал для всех моделей, записанный в типичных для вас условиях — тот же микрофон, тот же темп, та же лексика.
- Эталонная расшифровка, выверенная руками, с пунктуацией и правильным написанием терминов.
- Нормализация перед сравнением: единый регистр, единая запись чисел и сокращений, иначе метрика меряет форматирование, а не распознавание.
- Прогон каждой конфигурации несколько раз с замером времени, а не только качества.
- Отдельный подсчёт по типам ошибок: пунктуация, латиница, имена собственные, числа — общий WER прячет ровно то, что вам мешает.
Стенд стоит нескольких вечеров и окупается первым же случаем, когда «очевидно лучшая» модель проигрывает замер.
Где это запускать
Для персональной диктовки хватает потребительской видеокарты: модели среднего размера идут в реальном времени, длинное аудио обрабатывается быстрее продолжительности записи. Процессорный запуск возможен, но на интерактивном сценарии разница в задержке ломает сам смысл — проще печатать.
Отдельный аргумент за локальный запуск — приватность: рабочие созвоны, врачебные записи, юридические консультации не уходят на чужой сервер. Именно поэтому вокруг открытых моделей выросла экосистема настольных приложений, а не только серверных решений.
Что стоит запомнить
Выбор ASR-модели в 2026 году — это не выбор имени из рейтинга, а подбор конфигурации под ваш материал. Метрика ошибок нужна, но одна она не описывает пригодность: пунктуация и корректная латиница для технической речи весят не меньше. И главное — любые ощущения от недели работы стоит проверять на фиксированном корпусе, иначе рекомендация держится на привычке, а не на данных. Это ровно тот случай, когда пять суток машинного времени дешевле полугода работы с моделью, выбранной наугад.