Локальный запуск

Whisper: расшифровка аудио в текст на своём компьютере

Whisper это модель распознавания речи от OpenAI, которая ставится на компьютер и работает локально. Она разбирает русскую речь, сразу отдаёт файлы субтитров с таймкодами и не отправляет запись на чужой сервер. Ставится одной командой, но требует ffmpeg в системе, а выбор размера модели упирается в видеопамять.

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

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

Что такое Whisper

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

Ключевое отличие от привычных онлайн-сервисов в том, где считается результат. Онлайн-расшифровка это загрузка файла на чужой сервер с чужими лимитами по минутам и с вопросом о том, что происходит с записью дальше. Whisper считает на вашей машине: файл не уезжает никуда, длина ролика ограничена только терпением, а платить за минуты не нужно.

Установка

Основной способ описан в репозитории проекта одной командой: pip install -U openai-whisper. Она ставит сразу и библиотеку для питона, и командную строку, которой дальше и удобно пользоваться.

Второе обязательное условие: ffmpeg в системе. Без него модель не сможет прочитать звук из файлов: именно ffmpeg достаёт дорожку и приводит её к нужному виду. На Windows он ставится через choco install ffmpeg или scoop install ffmpeg, на macOS через brew install ffmpeg, в Debian и Ubuntu через sudo apt install ffmpeg.

По совместимости в документации заявлен питон версий с 3.8 по 3.11. Это тот случай, когда самая свежая версия питона может выйти боком: зависимости под неё собираются не всегда.

Какую модель выбрать

Размеров шесть, и разница между ними сводится к трём величинам: сколько параметров, сколько нужно видеопамяти и во сколько раз быстрее самой крупной модели.

МодельВидеопамятьСкорость к large
tiny, 39 млн параметровоколо 1 ГБпримерно в 10 раз быстрее
base, 74 млноколо 1 ГБпримерно в 7 раз
small, 244 млноколо 2 ГБпримерно в 4 раза
medium, 769 млноколо 5 ГБпримерно в 2 раза
large, 1550 млноколо 10 ГБопорная скорость
turbo, 809 млноколо 6 ГБпримерно в 8 раз

Turbo стоит особняком: это оптимизированная версия large-v3, которая расшифровывает заметно быстрее при незначительной потере точности. Именно она выбирается по умолчанию, если модель не указана явно.

Что брать под русскую речь

У четырёх размеров есть отдельные англоязычные версии с суффиксом .en, на русском они бесполезны. Для русской речи берутся мультиязычные модели, и практическая развилка тут простая: medium как разумный компромисс, turbo когда важнее скорость, large когда запись сложная и правки дороже времени.

Совсем маленькие tiny и base на русском годятся для черновой расшифровки «о чём вообще была запись», но не для субтитров: имена и термины они не вытягивают.

Разбираем локальные модели и связки на практике: что реально работает на домашнем железе, а что только в обзорах.Открыть канал

Команды для расшифровки

Минимальный вызов выглядит так: whisper audio.mp3 --model turbo. Файл может быть и видео: звук из него достанет ffmpeg.

Язык лучше указывать явно, а не полагаться на автоопределение: whisper zapis.mp3 --language Russian. На коротких записях и на речи с паузами автоопределение промахивается, и вся расшифровка уезжает не в тот язык.

Полный список ключей всегда под рукой: whisper --help. Там же настройки размера окна, температуры и порогов, которые пригодятся, когда базовый результат уже получен и хочется его дожать.

Готовые субтитры на выходе

Главное практическое достоинство командной строки: она отдаёт не сплошной текст, а готовые файлы. Доступные форматы вывода: txt, vtt, srt, tsv и json, плюс отдельное значение для записи всех форматов сразу.

ФорматДля чего
srtСубтитры для площадок и видеоредакторов
vttСубтитры для веба
txtСплошной текст без таймкодов, для поста или конспекта
tsvТаблица с таймкодами, если результат разбирается скриптом
jsonПолный ответ модели, включая разбивку по сегментам

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

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

Перевод речи в английский

Кроме расшифровки Whisper умеет переводить: иностранная речь на входе, английский текст на выходе. Включается это режимом --task translate.

Здесь есть ловушка, о которой сказано в документации прямо: модель turbo для задач перевода не обучалась. Если запросить у неё перевод, она вернёт исходный язык, и со стороны это выглядит как будто ключ не сработал. Для перевода нужно брать мультиязычные модели, и лучше medium или large.

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

Когда локальный запуск оправдан

Ставить модель на компьютер имеет смысл не всегда. Разовую расшифровку одного ролика быстрее сделать автосубтитрами, не трогая ни питон, ни ffmpeg.

СитуацияЛокально или онлайн
Один ролик, ничего секретногоОнлайн: быстрее и без установки
Запись нельзя выкладывать наружуТолько локально
Десятки файлов в неделюЛокально: разово настроить и гонять пакетом
Слабый ноутбук без видеокартыОнлайн или маленькая модель локально

Whisper удобно ложится в тот же набор, что и остальные локальные модели: та же логика с размерами, той же ценой в видеопамяти. Если рядом планируется языковая модель, полезны разборы LM Studio и llama.cpp, а формат весов, который встречается почти везде, объяснён в материале про GGUF.

Частые вопросы

Что такое Whisper и чем он отличается от онлайн-расшифровки?

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

Как установить Whisper?

Основной способ описан в репозитории: команда pip install -U openai-whisper. Дополнительно в системе должен быть установлен ffmpeg, без него модель не сможет прочитать звук из файлов. Заявленная совместимость с Python от 3.8 до 3.11. Установка ставит и командную строку, и питоновскую библиотеку сразу.

Какую модель Whisper выбрать?

Размеров шесть: tiny, base, small, medium, large и turbo. По документации им нужно примерно 1, 1, 2, 5, 10 и 6 гигабайт видеопамяти, а скорость относительно large составляет 10x, 7x, 4x, 2x, 1x и 8x. Turbo это оптимизированная версия large-v3, она быстрее при незначительной потере точности, и именно она выбирается по умолчанию. Для русской речи разумно начинать с medium или turbo.

В каких форматах Whisper сохраняет результат?

Командная строка умеет отдавать txt, vtt, srt, tsv и json, а также записать все форматы разом. Для субтитров нужен srt или vtt: в них уже проставлены таймкоды, и файл можно сразу загрузить на площадку или подложить в видеоредактор.

Может ли Whisper перевести речь на английский?

Да, для этого есть режим перевода: он превращает иностранную речь в английский текст. Важная оговорка из документации: модель turbo для перевода не обучалась и вернёт исходный язык, даже если режим перевода указан. Для перевода нужно брать мультиязычные модели, лучше medium или large.

Нужна ли видеокарта для Whisper?

Работать модель может и на процессоре, но медленно, и разница растёт вместе с размером модели. Требования к видеопамяти указаны в документации: около гигабайта для самых маленьких моделей и порядка десяти для large. Если видеокарты нет, разумнее брать tiny, base или small и не ждать скорости.

ИИ-офисПроект про работу с нейросетями: разборы инструментов, рабочие связки и практика, проверенная на своих задачах.