Феномен Егоровой
22 августа 2026 ·

Последние полгода постоянно использую Whisper для расшифровки встреч. Заметил забавный эффект: чем толще модель, тем лучше она распознаёт речь и тем увереннее несёт бред там, где речи нет.

Например, такое бывает в начале вебинара или встречи, пока участники собираются. Тихо, все молчат, разве что кто-нибудь шумно тянет кофе. И Whisper внезапно начинает выдавать что-то такое:

Редактор субтитров А.Синецкая Корректор А.Егорова
Редактор субтитров А.Синецкая Корректор А.Егорова
Редактор субтитров А.Синецкая Корректор А.Егорова
Редактор субтитров А.Синецкая Корректор А.Егорова

И что хуже, продолжает выдавать это даже тогда, когда начинается уже вполне разборчивая речь.

Это здорово раздражало, так что пришлось разобраться.

Да кто такая эта ваша Егорова

Почему тишина так распознается?

Whisper — не просто распознавалка звуков. Внутри там мощная языковая модель, которая пытается подобрать наиболее вероятный текст с учётом аудио и уже распознанного контекста. В общем случае это работает как надо: модель хорошо понимает речь, контекст, имена и сложные фразы.

Но если на входе тишина, шум или что-то невнятное, звук почти перестаёт быть ей полезен. И вот тут модель начинает гадать: какой текст здесь вообще мог бы быть, хм? Обучена она на гигантском датасете аудио с текстовыми расшифровками, которые OpenAI натаскала со всего интернета (порядка 700 тысяч часов, если не путаю).

Среди этого добра, полагаю, было полным-полно видео с субтитрами — а это штука такая, грязная. Во время тишины в сабах вполне может мелькать имя переводчика, редактора, название студии, «спасибо за просмотр» и прочий мусор, которого в аудио вообще нет.

Вот так, думаю, Синецкая с Егоровой и вошли в историю. Над чем они работали, я найти не смог, но, видимо, надпись с отсылкой на них мелькала в сабах достаточно часто, чтобы Whisper поставил знак равенства между ними и тишиной.

Почему так распознаётся не только тишина?

Угу, если бы всего лишь получали шум во время пауз, это вообще не было бы проблемой: мусорный фрагмент текста известен и его можно просто выкидывать из выдачи. Хуже всего тут то, что ошибка распознавания портит контекст модели — упрощая, Whisper распознаёт тишину как Егорову, подсовывает этот результат себе же как контекст следующего куска и едет дальше с этим знанием.

Следующий кусок, допустим, опять Егорова, и потом тоже, и потом... Когда спикер наконец-то начинает говорить, ему нужно начать ОЧЕНЬ внятно, чтобы модель согласилась, что да, это уже речь, а не Егорова, набравшая силу на двадцати кусках до него. В результате модель способна застрять в этом состоянии очень надолго.

Проблеме сто лет (ну ладно, четыре года) и она существует для множества языков. Русский, кстати, выбивается из общего ряда — если условный итальянец страдает от скучного «Субтитры созданы сообществом Amara.org», то у нас, так сказать, свой фэндом.

Как бороться?

Вообще считается, что надо тюнить инференс: сбрасывать контекст после длинных пауз, играться с no_speech_threshold, condition_on_previous_text, предварительно отрезать тишину с помощью VAD и так далее. До VAD я не добрался, но остальные варианты пробовал — действительно можно добиться вполне сносного результата на конкретном проблемном видео.

Однако мне этот вариант не подошел: мне нужно распознавать самые разные видео — записи встреч, лекции, телефонные разговоры, что угодно. Комбинация приёмов, подобранная для одного видео, не работает для другого. Из инженерного азарта я пробовал собирать обвязку в духе «прогнать видео через три разные комбинации приёмов, а потом проанализировать результат и выбрать тот, где концентрация Егоровой пожиже», но это всё равно работало так себе.

Так что я выбрал другое решение: использовать модель поглупее!

Серьёзно, это работает. По крайней мере на моих видео Whisper Small сваливается в repetition loop на тишине сильно реже. Видимо, более слабой модели сложнее уверенно вывести мусорный паттерн, поэтому на тишине она просто не выводит ничего.

Упрощая,

  • Whisper Small: Эээ... Ничего не слышу. Непонятно.
  • Whisper Medium: Эээ... Ничего не слышу... (напрягает свои параметры) А! Знаю! (вступают фанфары) Это ж Егорова!

:D

Горе от ума, буквально.

Качество расшифровки у Whisper Small получается, конечно, пониже — больше криво распознанных слов, менее связно, но это лучше, чем когда треть звука слопано Синецкой, а остальное поглодала Егорова результат в среднем более предсказуем.

Кроме того, его все равно нужно потом загнать в условный ChatGPT, чтобы собрать саммари, а для этого гигачада восстановить контекст диалога вообще не вопрос, даже если фрагменты реплик потеряны.