нейропоток
ГайдыНачинающий

Whisper локально: бесплатная транскрипция любого аудио без ограничений

OpenAI Whisper запускается на вашем компьютере бесплатно и навсегда. Устанавливаю, тестирую русский язык, показываю как транскрибировать видео с YouTube.

Павел·5 мин чтения
Whisper локально: бесплатная транскрипция любого аудио без ограничений
Поделиться:TelegramVK

Мне нужно было перевести в текст 20 часов записей интервью. Сервисы транскрипции берут $20-50 за час — вышло бы $400-1000. Whisper сделал это бесплатно за выходные, запущенный на моём MacBook.

Whisper (открытый исходный код от OpenAI) — модель распознавания речи, которая работает прямо на вашем компьютере. Без облака, без подписки, без ограничений на объём. Один раз установил — пользуешься сколько угодно.

Статья для тех, кто хочет автоматически переводить речь в текст: лекции, подкасты, совещания, видео. Нужен компьютер с 4+ ГБ RAM и терминал (командная строка).

Что умеет Whisper

  • Транскрипция аудио и видео в текст
  • 99 языков, включая русский
  • Автоматическое определение языка
  • Создание субтитров (.srt, .vtt)
  • Работает офлайн — никаких данных в облако

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

Скорость: зависит от модели и железа. На MacBook M2 файл 1 час = транскрипция 5-10 минут.

Установка

1. Python

Whisper работает через Python. Проверьте, установлен ли он:

bash
python3 --version

Если нет — скачайте с python.org (версия 3.8 или новее).

2. FFmpeg (нужен для работы с аудио/видео)

Mac:

bash
brew install ffmpeg

Windows (через Chocolatey):

bash
choco install ffmpeg

Linux:

bash
sudo apt install ffmpeg

3. Whisper

bash
pip install openai-whisper

Установка займёт 1-2 минуты.

Инфо

FFmpeg — инструмент для работы с медиафайлами. Whisper использует его для чтения разных форматов: mp3, mp4, wav, m4a, webm и других. Без FFmpeg Whisper не запустится.

Первый запуск

bash
whisper аудио.mp3 --language Russian

При первом запуске Whisper скачает модель (несколько сотен МБ — один раз). Потом она хранится локально.

Результат появится в той же папке:

  • аудио.txt — чистый текст
  • аудио.srt — субтитры с временными метками
  • аудио.vtt — субтитры в формате VTT

Выбор модели: скорость vs качество

Whisper поставляется с несколькими моделями разного размера:

МодельРазмерСкоростьКачествоКогда использовать
tiny39 МБОчень быстроБазовоеЧерновик, тест
base74 МББыстроНормальноеПростые записи
small244 МБСреднеХорошееБольшинство задач
medium769 МБМедленноОчень хорошееВажные записи
large1.5 ГБОчень медленноЛучшееМаксимальное качество

Для русского языка рекомендую medium — хороший баланс скорости и качества:

bash
whisper запись.mp3 --model medium --language Russian

Совет

Если не уверены в языке или запись на нескольких языках — уберите --language. Whisper автоматически определит язык. Если язык известен — указывайте: это ускорит транскрипцию.

Практические сценарии

Транскрибировать лекцию (mp4)

bash
whisper лекция.mp4 --model medium --language Russian --output_format txt

Получить субтитры для видео

bash
whisper видео.mp4 --model small --language Russian --output_format srt

Файл .srt можно открыть в любом видеоплеере как субтитры.

Транскрибировать несколько файлов сразу

bash
whisper *.mp3 --model small --language Russian

Обработает все mp3 в папке по очереди.

Транскрибировать видео с YouTube

Сначала скачайте аудио с помощью yt-dlp:

bash
pip install yt-dlp yt-dlp -x --audio-format mp3 "URL_ВИДЕО" whisper скачанный_файл.mp3 --language Russian

Whisper через Python-скрипт

Для автоматизации удобнее использовать Python:

python
import whisper # Загружаем модель один раз model = whisper.load_model("medium") # Транскрибируем файл result = model.transcribe("запись.mp3", language="Russian") # Текст print(result["text"]) # Сохраняем в файл with open("транскрипция.txt", "w", encoding="utf-8") as f: f.write(result["text"]) # Сегменты с временными метками for segment in result["segments"]: start = segment["start"] end = segment["end"] text = segment["text"] print(f"[{start:.1f}s - {end:.1f}s] {text}")

Faster-Whisper: в 4 раза быстрее

Есть оптимизированная версия — Faster-Whisper. Та же точность, скорость в 3-4 раза выше:

bash
pip install faster-whisper
python
from faster_whisper import WhisperModel model = WhisperModel("medium", device="cpu", compute_type="int8") segments, info = model.transcribe("запись.mp3", language="ru") for segment in segments: print(f"[{segment.start:.1f}s] {segment.text}")

На Mac с чипом M1/M2 разница особенно заметна — файл на час обрабатывается за 3-4 минуты вместо 10-15.

Инфо

Faster-Whisper использует CTranslate2 — оптимизированный движок для inference. Результаты идентичны оригинальному Whisper, но работает значительно быстрее, особенно на CPU.

Реальные ограничения

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

Расстановка знаков препинания. Whisper ставит точки и запятые, но не всегда корректно. Для публикации текст нужно вычитать.

Определение говорящих. Whisper не различает, кто говорит. Для интервью с несколькими участниками — весь текст будет в одном потоке. Для разделения по голосам нужны дополнительные инструменты (pyannote-audio).

Мой результат

20 часов интервью → транскрипция за ночь (запустил скрипт на large-модели перед сном). Качество — примерно 95% точности на чистых записях, нужна редактура, но это в разы быстрее, чем набирать вручную.

Сэкономил $600-900 на сервисах. И теперь использую Whisper регулярно: для заметок голосом, конспектов лекций, создания субтитров для своих видео.

Следующий шаг: установите Whisper сегодня и транскрибируйте любое аудио длиной 1-2 минуты. Команда занимает 30 секунд, скачивание модели — 5 минут, результат — моментально.

Если хочется пойти дальше и автоматизировать процесс — посмотрите на автоматизацию с n8n: там можно настроить пайплайн «новый файл в папке → автоматическая транскрипция → сохранение в Notion».