Мне нужно было перевести в текст 20 часов записей интервью. Сервисы транскрипции берут $20-50 за час — вышло бы $400-1000. Whisper сделал это бесплатно за выходные, запущенный на моём MacBook.
Whisper (открытый исходный код от OpenAI) — модель распознавания речи, которая работает прямо на вашем компьютере. Без облака, без подписки, без ограничений на объём. Один раз установил — пользуешься сколько угодно.
Статья для тех, кто хочет автоматически переводить речь в текст: лекции, подкасты, совещания, видео. Нужен компьютер с 4+ ГБ RAM и терминал (командная строка).
Что умеет Whisper
- Транскрипция аудио и видео в текст
- 99 языков, включая русский
- Автоматическое определение языка
- Создание субтитров (.srt, .vtt)
- Работает офлайн — никаких данных в облако
Качество: на чистой записи — очень хорошее. Русский распознаёт точнее, чем большинство платных сервисов. На записях с шумом или акцентом — хуже, но всё равно полезно.
Скорость: зависит от модели и железа. На MacBook M2 файл 1 час = транскрипция 5-10 минут.
Установка
1. Python
Whisper работает через Python. Проверьте, установлен ли он:
python3 --versionЕсли нет — скачайте с python.org (версия 3.8 или новее).
2. FFmpeg (нужен для работы с аудио/видео)
Mac:
brew install ffmpegWindows (через Chocolatey):
choco install ffmpegLinux:
sudo apt install ffmpeg3. Whisper
pip install openai-whisperУстановка займёт 1-2 минуты.
Инфо
FFmpeg — инструмент для работы с медиафайлами. Whisper использует его для чтения разных форматов: mp3, mp4, wav, m4a, webm и других. Без FFmpeg Whisper не запустится.
Первый запуск
whisper аудио.mp3 --language RussianПри первом запуске Whisper скачает модель (несколько сотен МБ — один раз). Потом она хранится локально.
Результат появится в той же папке:
аудио.txt— чистый текстаудио.srt— субтитры с временными меткамиаудио.vtt— субтитры в формате VTT
Выбор модели: скорость vs качество
Whisper поставляется с несколькими моделями разного размера:
| Модель | Размер | Скорость | Качество | Когда использовать |
|---|---|---|---|---|
| tiny | 39 МБ | Очень быстро | Базовое | Черновик, тест |
| base | 74 МБ | Быстро | Нормальное | Простые записи |
| small | 244 МБ | Средне | Хорошее | Большинство задач |
| medium | 769 МБ | Медленно | Очень хорошее | Важные записи |
| large | 1.5 ГБ | Очень медленно | Лучшее | Максимальное качество |
Для русского языка рекомендую medium — хороший баланс скорости и качества:
whisper запись.mp3 --model medium --language RussianСовет
Если не уверены в языке или запись на нескольких языках — уберите --language. Whisper автоматически определит язык. Если язык известен — указывайте: это ускорит транскрипцию.
Практические сценарии
Транскрибировать лекцию (mp4)
whisper лекция.mp4 --model medium --language Russian --output_format txtПолучить субтитры для видео
whisper видео.mp4 --model small --language Russian --output_format srtФайл .srt можно открыть в любом видеоплеере как субтитры.
Транскрибировать несколько файлов сразу
whisper *.mp3 --model small --language RussianОбработает все mp3 в папке по очереди.
Транскрибировать видео с YouTube
Сначала скачайте аудио с помощью yt-dlp:
pip install yt-dlp
yt-dlp -x --audio-format mp3 "URL_ВИДЕО"
whisper скачанный_файл.mp3 --language RussianWhisper через 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 раза выше:
pip install faster-whisperfrom 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».



