Техническое

Как работает Whisper AI: полное руководство

Технический разбор open-source модели распознавания речи от OpenAI — от mel-спектрограмм до декодирования трансформером.

OpenWhispr

OpenWhispr

Инженерное дело

3 февраля 2026 г.
Оглавление

Whisper — это модель автоматического распознавания речи (ASR), разработанная OpenAI. Выпущенная в сентябре 2022 года, она представляет собой универсальную систему распознавания речи, обученную на 680 000 часах многоязычных аудиоданных, собранных из интернета. Whisper использует архитектуру Transformer с encoder-decoder: преобразует аудио в log-mel-спектрограммы, обрабатывает их нейросетевым encoder и авторегрессионно декодирует текстовые токены. Она поддерживает транскрипцию на 99 языках, перевод на английский, определение языка и предсказание таймстемпов — всё в рамках единой модели. В отличие от большинства коммерческих ASR-сервисов, веса Whisper полностью открыты под лицензией MIT, что породило активную экосистему портов, оптимизаций и приложений — включая whisper.cpp, C/C++-реализацию, которая делает Whisper практичным для распознавания речи в реальном времени прямо на устройстве.

Последнее обновление: 17 февраля 2026 г. Количественные утверждения в этой статье сверены как минимум с двумя первичными источниками.

Краткая проверка фактов (двойные источники)

  • Релиз Whisper, масштаб обучения и лицензия: OpenAI выпустила Whisper в сентябре 2022 года; модель обучена на 680 000 часах и опубликована под лицензией MIT. статья arXiv · репозиторий OpenAI Whisper
  • Охват задач и поддержка языков: Whisper поддерживает транскрипцию, перевод на английский, определение языка и токены таймстемпов для 99 языков. карточка модели Whisper · README Whisper
  • Контекст английского бенчмарка: около 3% WER — это бенчмарк на LibriSpeech test-clean для оценки, ориентированной на английский, а не универсальная реальная частота ошибок. карточка модели large-v2 · детали бенчмарка
  • Недавние обновления моделей: large-v3 сообщает о меньшем числе ошибок, чем large-v2, на многих языках, а turbo делает упор на более низкую задержку за счёт меньших вычислений decoder. карточка модели large-v3 · обсуждение релиза turbo
  • Релевантность для OpenWhispr: OpenWhispr использует Whisper через whisper.cpp для локальной, offline-first диктовки на настольных платформах. whisper.cpp · OpenWhispr

Как Whisper обрабатывает аудио

Аудиовход
Особенности Log-Mel
Кодер
Декодер
Текст

Почему это важно для OpenWhispr:

Запускается локально через whisper.cpp — необработанный звук остается на устройстве.

Размер модели определяет соотношение скорости и точности.

Тот же конвейер обеспечивает диктовку через macOS, Windows и Linux.

Что такое Whisper?

Whisper была представлена в статье "Robust Speech Recognition via Large-Scale Weak Supervision", написанной Alec Radford, Jong Wook Kim, Tao Xu, Greg Brockman, Christine McLeavey и Ilya Sutskever в OpenAI. Код и веса модели были опубликованы на GitHub в сентябре 2022 года под лицензией MIT.

До Whisper передовые системы распознавания речи обычно обучались на курируемых датасетах с человеческой разметкой — часто ограниченных конкретными языками, акцентами или доменами. Whisper отошла от этого подхода: модель обучили на огромном разнообразном датасете из 680 000 часов аудио с транскриптами, собранными из интернета. Ключевая идея состояла в том, что такой "weakly supervised" подход — использование несовершенных машинно созданных или загруженных пользователями транскриптов вместо ручной разметки — может дать модель с впечатляющей устойчивостью к разным языкам, акцентам, фоновому шуму и технической лексике.

В результате получилась единая модель, способная выполнять несколько задач обработки речи: транскрипцию (речь в текст на том же языке), перевод (речь на любом языке в английский текст), определение языка и обнаружение речевой активности с таймстемпами. Эта multitask-возможность встроена в архитектуру модели через систему специальных токенов, указывающих, какую задачу нужно выполнить.

Open-source релиз Whisper был важным событием. Он демократизировал доступ к качественному ASR, позволив разработчикам, исследователям и компаниям использовать модель, конкурентоспособную с коммерческими API, — без поминутной оплаты, без отправки аудио в облако и без привязки к поставщику. Это ускорило развитие инструментов вроде whisper.cpp, Faster Whisper и десятков приложений поверх них — включая OpenWhispr.

Подробно об архитектуре

Whisper использует архитектуру Transformer типа encoder-decoder — тот же базовый дизайн, что лежит в основе оригинального Transformer (Vaswani et al., 2017) и многих систем машинного перевода. Encoder обрабатывает аудио, decoder генерирует текст. Вот как работает каждый этап.

Предобработка аудио

Перед любой обработкой нейросетью сырое аудио преобразуется в визуальное представление звука, называемое log-mel-спектрограммой. Процесс устроен так:

  1. Аудио ресемплируется до 16 000 Гц (16 кГц моно).
  2. Вычисляется Short-Time Fourier Transform (STFT) с окнами по 25 миллисекунд и шагом 10 миллисекунд (hop length).
  3. Частотный спектр проецируется на 80 mel-фильтробанков (128 для large-v3), которые приближают человеческое слуховое восприятие, располагая частотные полосы логарифмически.
  4. Применяется логарифмическое масштабирование, формируя итоговую log-mel-спектрограмму.
  5. Спектрограмма делится на 30-секундные фрагменты. Аудио короче 30 секунд дополняется нулями; более длинное аудио обрабатывается последовательными фрагментами.

Результат — 2D-представление формы (80, 3000): 80 mel-каналов на 3 000 временных шагов (30 секунд при шаге 10 мс). Это похоже на изображение, и encoder обрабатывает его примерно так же, как vision-модель обрабатывает пиксельные данные.

Encoder

Encoder преобразует mel-спектрограмму в последовательность обученных аудиопредставлений. Он состоит из:

  1. Двух 1D-свёрточных слоёв — первая свёртка имеет kernel size 3 и padding 1, после неё идёт активация GELU. Вторая свёртка имеет kernel size 3, stride 2 и padding 1, что уменьшает временную размерность вдвое. Так 3 000 временных шагов сжимаются до 1 500 позиций.
  2. Синусоидальных позиционных embeddings — в отличие от decoder, encoder использует фиксированные синусоидальные embeddings (не обучаемые), чтобы кодировать позицию каждого временного шага.
  3. Блоков Transformer — стек стандартных encoder-слоёв Transformer, каждый из которых содержит multi-head self-attention и feed-forward сеть с активацией GELU, соединённые residual connections и layer normalization.

На выходе получается последовательность из 1 500 контекстуализированных аудиовекторов признаков — по одному на каждые 20 миллисекунд входного аудио, — на которые decoder будет опираться при генерации текста.

Decoder

Decoder генерирует текстовые токены авторегрессионно — по одному токену за раз, с учётом закодированного аудио и всех ранее сгенерированных токенов. Он состоит из:

  1. Слоя token embedding — преобразует ID токенов в плотные векторные представления.
  2. Обучаемых позиционных embeddings — в отличие от синусоидальных embeddings encoder, decoder использует обучаемые позиционные embeddings, которые тренируются вместе с моделью.
  3. Блоков Transformer с cross-attention — каждый слой decoder имеет три подслоя: masked self-attention (чтобы модель не смотрела на будущие токены), cross-attention к выходу encoder (чтобы модель могла "слушать" аудио) и feed-forward сеть.

Финальный выход decoder проецируется на словарь, чтобы получить вероятности токенов. Среди стратегий декодирования — greedy search, beam search и sampling на основе температуры.

Специальные токены и multitask-обучение

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

<|startoftranscript|> <|en|> <|transcribe|> <|notimestamps|> Hello, how are you today? <|endoftext|>
  • <|startoftranscript|> — Обозначает начало выходной последовательности.
  • <|en|> — Указывает язык (один из 99 языковых токенов). Может определяться автоматически или задаваться вручную.
  • <|transcribe|> или <|translate|> — Указывает, нужно ли транскрибировать на исходном языке или переводить на английский.
  • <|notimestamps|> — Управляет генерацией токенов таймстемпов. Когда таймстемпы включены, модель генерирует токены временного смещения, например <|0.00|> и <|2.40|> которые выравнивают текст с аудио.

Этот единый формат токенов означает, что одна модель может выполнять транскрипцию, перевод, определение языка и транскрипцию с таймстемпами — без отдельных model heads или fine-tuning. Задача полностью определяется последовательностью токенов, переданной в decoder.

Обучающие данные

Оригинальные модели Whisper (от tiny до large-v2) обучались на 680 000 часах аудио с транскриптами, собранными из интернета. Этот датасет не опубликован. Его ключевая особенность — weakly supervised характер: транскрипты-метки не проверялись вручную человеческими аннотаторами. Вместо этого они поступали из субтитров, closed captions и другого пользовательского текста, связанного с аудио.

Состав данных

Согласно официальной карточке модели, обучающий набор на 680 000 часов распределяется так:

СегментЧасыДоляОписание
Английский ASR438 00065%Английское аудио с английскими транскриптами
Перевод (X на английский)126 00018%Неанглийское аудио с английскими транскриптами
Многоязычный ASR117 00017%Неанглийское аудио с транскриптами на родном языке (98 языков)

Сильный перекос в сторону английского (65% обучающих данных) объясняет, почему Whisper работает на английском заметно лучше, чем на языках с меньшим объёмом данных. Для модели large-v3, выпущенной в ноябре 2023 года, OpenAI расширила обучающий набор до 1 миллиона часов слабо размеченного аудио плюс ещё 4 миллиона часов псевдоразмеченного аудио, созданного запуском Whisper large-v2 на неразмеченных данных, — форма self-training или knowledge distillation.

Почему "Weakly Supervised" важно

Большинство предыдущих ASR-систем обучалось на датасетах вроде LibriSpeech (960 часов) или Common Voice (несколько тысяч часов на язык) — тщательно курируемых, проверенных людьми наборах. Подход Whisper обменял качество меток на масштаб: 680 000 часов против сотен или небольших тысяч часов, используемых традиционными системами. В статье показано, что этот компромисс оправдан. Разнообразие данных из интернета дало Whisper исключительную устойчивость к реальным условиям: фоновому шуму, перекрывающейся речи, акцентам, доменной лексике и акустическим средам, которые были бы сложны для моделей, обученных на студийной начитанной речи.

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

Размеры моделей

Whisper доступна в нескольких размерах, от 39 миллионов до 1,55 миллиарда параметров. Меньшие модели быстрее, но менее точны; большие точнее, но требуют больше вычислений и памяти. Варианты .en — это модели только для английского, которые обычно лучше работают с английским, особенно в малых размерах. Для больших моделей вариантов только для английского нет.

МодельПараметрыТолько английскийVRAMОтносительная скорость
tiny39 Mtiny.en~1 GB~10x
base74 Mbase.en~1 GB~7x
small244 Msmall.en~2 GB~4x
medium769 Mmedium.en~5 GB~2x
large (v1, v2, v3)1,550 M--~10 GB1x
turbo (large-v3-turbo)809 M--~6 GB~8x

Скорость указана относительно модели large. Требования к VRAM приведены для GPU-инференса с fp16-точностью через оригинальную Python-реализацию. whisper.cpp использует значительно меньше памяти (например, модели large требуется ~3,9 GB RAM вместо ~10 GB VRAM).

Модель turbo (выпущена в октябре 2024 года) — это дистиллированная версия large-v3 со значительно меньшим decoder. Она сохраняет большую часть точности large-v3 и работает примерно в 8 раз быстрее, что делает её сильным выбором, когда важна скорость. Обратите внимание: turbo не поддерживает задачу перевода.

Модель large прошла три итерации: large-v1 (сентябрь 2022), large-v2 (декабрь 2022) и large-v3 (ноябрь 2023). Каждая версия улучшала точность; large-v3 ввела 128 mel-frequency bins (вместо 80) и обучалась на гораздо большем датасете. Подробный разбор каждого размера и рекомендации по выбору смотрите в нашем руководстве по размерам моделей Whisper.

Насколько точна Whisper?

Точность Whisper обычно измеряется с помощью Word Error Rate (WER) — процента слов, транскрибированных неверно (суммарно вставки, удаления и замены). Чем ниже WER, тем лучше.

Английские бенчмарки

На LibriSpeech test-clean — самом распространённом английском ASR-бенчмарке с чистой начитанной речью из аудиокниг — Whisper large-v2 достигает WER около 3,0%[1][2]. Это конкурентоспособно с коммерческими ASR-системами и специально обученными моделями, хотя специализированные модели, дообученные на LibriSpeech, могут достигать более низкого WER на этом конкретном бенчмарке. Сила Whisper не в победе над узкими бенчмарками, а в устойчивости — стабильной работе в широком диапазоне реальных условий.

Улучшения large-v3

Согласно оценке OpenAI, Whisper large-v3 показывает снижение ошибок на 10-20% по сравнению с large-v2 для языков, где модель достигает менее 60% error rate на оценочных датасетах Common Voice 15 и Fleurs[2][3]. Улучшения особенно заметны для неанглийских языков, где расширенные обучающие данные (5 миллионов часов суммарно) дают наибольший эффект.

Как Whisper выглядит в сравнении (февраль 2026 г.)

После релиза Whisper новые open-source ASR-модели превзошли её на бенчмарках чистой речи. NVIDIA Parakeet TDT (0,6 млрд параметров) достигает 1,69% WER, а модель Canary — 1,6% WER на LibriSpeech test-clean; оба результата значительно ниже ~2,7% у Whisper large-v3. Тем не менее Whisper остаётся самой широко используемой open-source ASR-моделью благодаря зрелой экосистеме, языковому охвату и наличию оптимизированных runtimes вроде whisper.cpp.

Частота ошибок в словах: Whisper против конкурентов с открытым исходным кодом

LibriSpeech test-clean (чтение речи на английском языке) — чем меньше, тем лучше

NVIDIA
Другое с открытым исходным кодом
OpenAI Whisper

Источники: карты модели Hugging Face, карты модели NVIDIA, Open ASR Leaderboard (Feb 2026). Только чистая речь для чтения на английском языке — реальная точность зависит от качества звука, акцента и домена. Коммерческие API опущены, поскольку они не публикуют тесты LibriSpeech.

Примечание: коммерческие облачные API (Deepgram Nova-3, Google Chirp, AssemblyAI Universal-2) не публикуют показатели LibriSpeech WER, поэтому их нельзя напрямую сравнить на этой диаграмме. Их бенчмарки используют проприетарные реальные тестовые наборы. OpenAI также выпустила GPT-4o-transcribe в марте 2025 года как модель только для API (не open-source, не основана на Whisper) с, как сообщается, более низкой частотой ошибок, но она работает только в облаке и недоступна для локального инференса.

Где Whisper особенно сильна

  • +Устойчивость к акцентам и диалектам — Обученная на разнообразном интернет-аудио, Whisper лучше справляется с региональными акцентами, чем системы, обученные на начитанной речи.
  • +Терпимость к фоновому шуму — Модель сохраняет приемлемую точность даже при наличии музыки, других говорящих или окружающего шума.
  • +Техническая лексика — Благодаря широте обучающих данных Whisper лучше многих универсальных ASR-систем справляется с доменными терминами (медицинскими, юридическими, техническими).
  • +Многоязычность — Одна модель поддерживает 99 языков, без необходимости fine-tuning для каждого языка.

Где Whisper испытывает трудности

  • -Галлюцинации — Самая часто упоминаемая проблема. Во время тишины или очень тихих фрагментов Whisper может генерировать текст, который никогда не произносился. Это следствие weakly supervised подхода к обучению.
  • -Языки с малым объёмом данных — Языки с небольшим количеством обучающих данных (значительная часть 680K часов — английский) имеют существенно более высокие показатели ошибок.
  • -Повторяющаяся генерация текста — Авторегрессионный decoder может "застревать" в циклах, повторяя одну и ту же фразу. Beam search с определёнными параметрами может смягчить, но не полностью устранить эту проблему.
  • -По умолчанию не real-time — Whisper обрабатывает 30-секундные фрагменты, поэтому есть встроенная задержка. Streaming-решения (например, real-time режим whisper.cpp) обходят это, но добавляют сложность.

whisper.cpp и локальный инференс

Оригинальная реализация Whisper требует Python, PyTorch и CUDA-совместимый GPU для приемлемой производительности. Это делает её непрактичной для desktop-приложений, мобильных устройств и edge-развёртываний. whisper.cpp, созданный Georgi Gerganov, решает эту проблему.

whisper.cpp — это полная повторная реализация инференса Whisper на чистом C/C++ без зависимостей. Он читает те же веса модели, но работает без Python, без PyTorch и без GPU (хотя GPU даёт огромный выигрыш). Ключевые возможности включают:

  • Нулевые выделения памяти во время выполнения — Вся память выделяется заранее, что делает производительность предсказуемой и подходящей для embedded-систем.
  • Оптимизация для Apple Silicon — На Mac с чипами M-серии encoder может работать на Apple Neural Engine через Core ML, обеспечивая инференс более чем в 3 раза быстрее по сравнению с исполнением только на CPU. Ускорение Metal GPU также поддерживается для полного GPU-инференса.
  • Поддержка квантования — Модели можно квантовать до 4-bit, 5-bit или 8-bit integer precision, резко снижая потребление памяти и повышая скорость с минимальной потерей точности.
  • Ускорение GPU — Поддерживает NVIDIA CUDA (через cuBLAS), Vulkan (кросс-вендорно), OpenVINO (Intel) и OpenBLAS для CPU acceleration.
  • Обнаружение речевой активности (VAD) — Встроенный VAD пропускает тихие сегменты, улучшая и скорость, и качество транскрипта.

Требования к памяти (whisper.cpp)

МодельРазмер на дискеТребуется RAM
tiny75 MB~273 MB
base142 MB~388 MB
small466 MB~852 MB
medium1.5 GB~2.1 GB
large2.9 GB~3.9 GB

whisper.cpp работает на macOS (Intel и Apple Silicon), Linux, Windows, iOS, Android, FreeBSD, Raspberry Pi и даже в браузере через WebAssembly. Он достигает транскрипции быстрее реального времени на скромном потребительском железе, включая такие небольшие устройства, как Raspberry Pi 4 и iPhone 13.

Именно эта переносимость делает локальное приватное распознавание речи практичным. Приложения вроде OpenWhispr используют whisper.cpp под капотом, чтобы предоставлять real-time push-to-talk диктовку, полностью работающую на устройстве пользователя — аудио никогда не покидает машину.

Whisper против других ASR-систем

Whisper существует в более широкой экосистеме систем распознавания речи. Вот как она сравнивается с самыми распространёнными альтернативами.

Google Cloud Speech-to-Text

Облачный ASR-сервис Google. Отличная точность, особенно на английском, поддержка real-time streaming и diarization говорящих. Главные отличия: он проприетарный, требует отправки аудио на серверы Google и тарифицируется за минуту обработанного аудио. Whisper предлагает сопоставимую точность для общего использования, работает локально и бесплатна, но не имеет встроенного streaming и diarization.

Только облакоПроприетарныйОплата за использование

Amazon Transcribe (AWS)

Облачный ASR от Amazon, тесно интегрированный с экосистемой AWS. Предлагает медицинскую транскрипцию, аналитику звонков и пользовательский словарь. Компромиссы похожи на Google: зависимость от облака, поминутная оплата и проприетарность. Whisper лучше подходит приложениям, которым нужны offline-работа, open-source лицензирование или отсутствие привязки к поставщику.

Только облакоПроприетарныйИнтеграция AWS

Mozilla DeepSpeech

Open-source ASR-движок Mozilla на основе исследования Baidu Deep Speech. Это была одна из первых качественных открытых ASR-моделей, но Mozilla прекратила активную разработку в 2021 году. Whisper фактически превзошла DeepSpeech по точности, многоязычности и динамике сообщества. DeepSpeech остаётся полезной как лёгкий, хорошо понятный baseline, но больше не рекомендуется для новых проектов.

Открытый кодРазработка прекращенаФокус на английском

Vosk

Open-source toolkit для offline-распознавания речи, поддерживающий 20+ языков с маленькими быстрыми моделями. Vosk отлично подходит для сред с ограниченными ресурсами: его модели занимают лишь долю размера Whisper и хорошо работают на маломощном железе. Компромисс — точность: Vosk заметно уступает Whisper, особенно при акцентированной речи, шумном аудио и технической лексике.

Открытый кодЛёгкийБолее низкая точность

Faster Whisper (CTranslate2)

Переализация Whisper на inference engine CTranslate2 от SYSTRAN. Она запускает те же модели Whisper с той же точностью, но до 4 раз быстрее оригинальной реализации OpenAI и с меньшим потреблением памяти. Faster Whisper основан на Python (в отличие от C/C++ у whisper.cpp) и является сильным выбором для серверной batch-транскрипции. Поддерживает CUDA GPU и CPU inference с INT8-квантованием.

Открытый кодPython / CTranslate2Та же точность Whisper

Практические применения

Сочетание точности, многоязычной поддержки и open-source доступности сделало Whisper основой для широкого круга приложений:

Диктовка на desktop

Приложения вроде OpenWhispr используют whisper.cpp, чтобы предоставлять системную push-to-talk диктовку на macOS, Windows и Linux. Аудио обрабатывается локально — ничего не отправляется в облако.

Генерация субтитров

Предсказание таймстемпов в Whisper хорошо подходит для создания субтитров и closed captions. Инструменты вроде stable-ts и auto-subtitle автоматизируют этот workflow.

Транскрипция подкастов и встреч

Whisper хорошо справляется с транскрипцией длинного аудио, особенно при фрагментной обработке. Многие редакторы подкастов и инструменты для заметок по встречам используют Whisper (или Faster Whisper) для batch-транскрипции записей.

Перевод и локализация

Встроенная возможность перевода в Whisper (с любого языка на английский) используется для кросс-языкового доступа к контенту, локализации медиа и прототипов перевода в реальном времени.

Доступность

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

Аннотация данных и исследования

Исследователи используют Whisper для создания псевдоразмеченных датасетов для обучения других моделей — тот же подход OpenAI использовала при создании обучающих данных large-v3. Она также широко применяется в лингвистических исследованиях и создании корпусов.

Источники и дополнительное чтение

  1. [Статья] Radford, A., Kim, J. W., Xu, T., Brockman, G., McLeavey, C., & Sutskever, I. (2022). Robust Speech Recognition via Large-Scale Weak Supervision. arXiv:2212.04356. arxiv.org/abs/2212.04356
  2. [Код] GitHub-репозиторий OpenAI Whisper. github.com/openai/whisper
  3. [Код] whisper.cpp — C/C++ порт от Georgi Gerganov. github.com/ggml-org/whisper.cpp
  4. [Карточка модели] Whisper large-v2 на Hugging Face (WER-бенчмарк: ~3,0% на LibriSpeech test-clean). huggingface.co/openai/whisper-large-v2
  5. [Карточка модели] Whisper large-v3 на Hugging Face (снижение ошибок на 10-20% относительно v2). huggingface.co/openai/whisper-large-v3
  6. [Карточка модели] Whisper large-v3-turbo на Hugging Face (дистиллированный вариант с фокусом на задержку). huggingface.co/openai/whisper-large-v3-turbo
  7. [Карточка модели] Карточка модели OpenAI Whisper (разбор состава обучающих данных). github.com/openai/whisper/blob/main/model-card.md
  8. [Примечания к релизу] Анонс OpenAI large-v3 и заметки по оценке. github.com/openai/whisper/discussions/1762
  9. [Примечания к релизу] Обсуждение релиза OpenAI turbo и компромиссы ради скорости. github.com/openai/whisper/discussions/2363
  10. [Код] Faster Whisper — повторная реализация на базе CTranslate2 от SYSTRAN. github.com/SYSTRAN/faster-whisper
  11. [Продукт] OpenWhispr использует Whisper через whisper.cpp для локальных workflow диктовки. openwhispr.com

Попробуйте Whisper локально с OpenWhispr

OpenWhispr использует Whisper (через whisper.cpp) для локальной приватной диктовки на macOS, Windows и Linux. Push-to-talk, 99+ языков, облако не требуется. Попробуйте бесплатно.

Аккаунт не требуется · Работает офлайн · Открытый код навсегда