Когда Whisper останавливается раньше времени и сообщает, что закончил
Проверено
Что это
Что такое тихий обрыв расшифровки
Текст, который модель выдала, был верен. Она просто остановилась, а конвейер сообщил, что всё готово.
Модель распознавания речи может вернуть неверные слова, а может остановиться на середине и отдать верную расшифровку первой части так, будто работа закончена. В нашем худшем прогоне, норвежском, она вернула 113 из 521 слова эталона после 30 минут вычислений и остановилась после 9 сегментов. Наш конвейер записал этот прогон как COMPLETED: без ошибки, без предупреждения, без признака неполного результата.
- 10 из 143прогонов остановились раньше времени
- 22%аудио в худшем прогоне
- 9 из 10на двух файлах large-v3
Какие прогоны
В каких языках расшифровка остановилась раньше времени
9 из 10 приходятся на два файла large-v3.
Покрытие — это длина расшифровки, делённая на длину эталона: 1,00 означает полную расшифровку. Каждый столбец — один оборванный прогон; пунктирная линия — порог 0,80.
- Норвежский0,22
- Малайский0,32
- Вьетнамский0,34
- Корейский0,40
- Нидерландский0,74
- Чешский0,22
- Португальский (Бразилия)0,35
- Вьетнамский0,37
- Малайский0,75
- Хинди†0,72
Хинди: оговорка об оценке
† Это прогон модели по умолчанию: 886 единиц при эталоне в 1 237, тот же завышенный счёт, который назван в поправке на странице
Только короче, никогда не длиннее
Каждое крайнее значение в этом наборе короче, но никогда не длиннее. Ни один прогон из 143 не превысил свой эталон больше чем наполовину. Это противоположный знак по сравнению со сбоем в виде цикла повторов, когда модель застревает и минутами выдаёт одну и ту же фразу, давая покрытие, в пять и более раз превышающее эталон. Оба сбоя катастрофичны, и оба не видны при выборочной проверке, но различаются знаком одного и того же числа, поэтому одна проверка ловит оба.
Как поймать
Поймайте это без эталона
Сравните объём полученной расшифровки с длиной аудио.
Для расчёта доли ошибочных слов нужна эталонная расшифровка, которой в реальной работе у вас никогда нет. Для покрытия она не нужна. В этом наборе две группы разделяются чисто:
| Что | Прогоны | Среднее покрытие | Средняя доля ошибок |
|---|---|---|---|
| Оборванные | 10 | 0,44 | 65,90% |
| Нормальные | 133 | 1,01 | 12,10% |
Порог 0,80 не подгонялся под данные: наибольшее покрытие среди оборванных прогонов — 0,75, а наименьшее среди нормальных — 0,82, поэтому любой порог внутри этого пустого промежутка даёт тот же ответ. В реальной работе: сравните время последнего возвращённого сегмента с длительностью файла на компьютере пользователя, где сравнивать больше не с чем.
Доля ошибок
Обрыв завышает долю ошибок
Примерно 9,4 пункта её доли ошибок — это не то, что модель что-то неверно расслышала. Это модель, которой там не было.
Даже без обрывов Large V3 не догоняет меньшую модель turbo
Что это значит для моделей, которые предлагает Lesskeys
В этой версии нет проверки покрытия. Описанная выше проверка — это предложение для неё, а не готовая функция.
Статус на 15 октября 2026 для версии для App Store , которая сейчас в продаже (3.1.4 )
Говорим прямо, потому что именно поэтому эту страницу стоит публиковать, а не откладывать в архив:
- Оба варианта large-v3
предлагаются в списке выбора модели , и на них приходится 9 из 10 оборванных прогонов. Тот, кто рассуждает «загрузка больше — результат лучше», выбирает самый ненадёжный вариант в списке.Lesskeys - Квантование на 834 МБ, показавшее самую низкую среднюю долю ошибок (разрыв с остальными прогонами turbo в основном даёт одна строка хинди) и ни одного обрыва, отсутствует в списке этой версии. В тесте оно было доступно только потому, что папка с моделями сканируется при запуске.
Модель по умолчанию (547 МБ) оборвалась один раз на 29 языках, на хинди (скорее всего, настоящий обрыв; см. примечание под списком покрытия). Этот прогон и прогон Large V3 Q5 на чешском выполнялись в части набора с 12 ГБ памяти, где запас был небольшой (см. ограничения).- В этой версии нет проверки покрытия. Описанная выше проверка — предложение для неё, а не готовая функция. Когда она появится, этот раздел будет переписан, а не тихо удалён.
Что это значит для Windows
Данные
Метод, таблица и ограничения
Как проводились прогоны и о чём они не могут сказать, свёрнуто.
Как измерялся обрыв
Каждый прогон шёл через поставляемое приложениеwhisper-cli. Это важно: определение речи, фильтр галлюцинаций, нормализация громкости и ограничение языка — всё было в цепочке ровно так, как у пользователя. Язык жёстко задавался для каждого прогона и соблюдался во всех 143 ячейках; фактически загруженная модель совпадала с запрошенной во всех 143. Две отсутствующие ячейки — хинди на обоих вариантах large-v3, которые не завершились вовсе.
Пять моделей: размер, средняя доля ошибок, оборванные прогоны
| Модель | Размер | Языки | Средняя доля ошибок | Медиана | Оборванные прогоны |
|---|---|---|---|---|---|
| 834 МБ | 29 | 9,16% | 6,80% | нет | |
| 1,6 ГБ | 29 | 9,52% | 7,23% | нет | |
| 547 МБ | 29 | 9,99% | 7,81% | 1 из 29 | |
| 3 ГБ | 28 | 24,64% | 15,80% | 5 из 28 | |
| 1,0 ГБ | 28 | 26,66% | 18,66% | 4 из 28 |
Ограничения этого теста
- Читаемая речь, а не встречи. FLEURS — чистая записанная проза. Разговорное аудио с перебиваниями заметно сложнее, и эти значения не следует считать тем, что вы получите на настоящем звонке.
- Один проход на ячейку. 143 ячейки, по одному прогону. Обрыв воспроизводился на двух вариантах large-v3 и в двух отдельных исследованиях, но этот набор не устанавливает частоту; он устанавливает, что это случается.
- Одна машина, два объёма памяти.
Ячейки выполнялись на одной виртуальной машине с Apple Silicon , у которой было 12 ГБ памяти для первых 33 ячеек и 24 ГБ для остальных; все 29 ячеек модели по умолчанию и первые четыре ячейкиLarge V3 Q5 (арабский, чешский, датский, немецкий) шли в части с 12 ГБ. В ней оказались два оборванных прогона: хинди на модели по умолчанию (в низшей точке было доступно 241 МБ памяти) и чешский наLarge V3 Q5 (60 МБ). У всех остальных оборванных прогонов было доступно больше 6 000 МБ. Нехватка памяти могла повлиять на эти два прогона, и этот набор не может отделить её от влияния модели. Декодирование оставили с настройками приложения для пути к файлам, а не с настройками программы командной строки. - Абсолютные значения несколько завышены из-за выбора способов нормализации пунктуации и регистра. Опорой служат сравнения моделей между собой, а не абсолютные проценты.
В этот раз расшифровки сохранялись. В более раннем прогоне их перезаписывал шаг настройки следующего прогона, и обрыв приходилось выводить по числу слов — именно поэтому он так долго оставался незамеченным. «Худшая доля ошибок» и «остановился раньше времени» в таблице результатов выглядят одинаково.
Вопросы
Вопросы о том, как Whisper останавливается раньше времени
Что такое тихий обрыв расшифровки в распознавании речи?
Модель возвращает расшифровку, охватывающую только часть аудио, а окружающий конвейер сообщает об успехе. Имеющийся текст обычно верен, поэтому ничего не выглядит неправильным, пока кто-то не сверит расшифровку с записью. В этом наборе прогонов так вышло в 10 из 143, из них 9 — на двух вариантах large-v3.
Как обнаружить оборванную расшифровку без эталона?
Сравните то, что получилось, с тем, что подали на вход: время окончания последнего сегмента с длительностью аудиофайла или длину расшифровки с ожидаемой длиной. Ни то ни другое не требует эталонной расшифровки, поэтому такую проверку можно применять в работе. В этих данных у оборванных прогонов покрытие в среднем составило 0,44 против 1,01 у нормальных.
Даёт ли большая модель Whisper лучший результат?
В этом наборе — нет. Два самых больших варианта показали самую высокую среднюю долю ошибок и дали 9 из 10 оборванных прогонов, тогда как квантование модели turbo на 834 МБ показало самое низкое среднее (9,16%, в пределах 0,2 пункта от остальных прогонов turbo, если не считать хинди) и ни разу не оборвалось. Размер загрузки не предсказывал ни точность, ни надёжность.
Это ошибка в Whisper или в приложении?
Не установлено, и страница не утверждает, что знает. Измерено лишь то, что такое состояние возникает и что окружающий конвейер его не заметил. Предлагаемая проверка покрытия — это смягчающая мера на уровне приложения, то есть на уровне, который мы контролируем; причину она не выявляет.
Ещё