4 октября 2026 г. · Анатолий Крылов, редактор Тераферма
Whisper на GPU: скорость и цена расшифровки часа аудио
Whisper на GPU расшифровывает час аудио за несколько минут: на RTX 3090 или RTX 4090 с faster-whisper и моделью large-v3 это ориентировочно 2–5 минут, а в пакетном режиме ещё быстрее. При тарифе 26 ₽/час за RTX 3090 расшифровка часа записи обходится в 1–2 рубля машинного времени.
Почему Whisper стоит запускать на GPU
Whisper создана в OpenAI как открытая модель распознавания речи. Она понимает почти сотню языков, включая русский, расставляет пунктуацию и умеет работать с тайм-кодами. Веса открыты, поэтому модель можно запустить на своём сервере, и записи никуда не уходят.
На процессоре Whisper large работает медленно: час записи может обрабатываться дольше реального времени. На видеокарте та же модель работает в десятки раз быстрее реального времени. Для одной записи разница — минуты против часа, для архива на 500 часов — вечер против нескольких недель.
Какие модели Whisper бывают
| Модель | Параметры | Память (оригинал) | Скорость | Когда выбирать |
|---|---|---|---|---|
| tiny / base | 39–74 млн | ~1 ГБ | Очень высокая | Черновая расшифровка, тесты |
| small | 244 млн | ~2 ГБ | Высокая | Простые записи с чистым звуком |
| medium | 769 млн | ~5 ГБ | Средняя | Компромисс для слабых карт |
| large-v3 | 1,55 млрд | ~10 ГБ | Базовая | Максимальная точность |
| large-v3-turbo | 809 млн | ~6 ГБ | В несколько раз выше large-v3 | Быстро и почти без потери качества |
Для русского языка разница между small и large заметна: маленькие модели чаще путают окончания, фамилии и термины. Для рабочих задач берите large-v3 или large-v3-turbo. Turbo облегчена за счёт урезанного декодера: она быстрее, а по качеству на большинстве записей близка к large-v3.
Скорость: что влияет и чего ожидать
Скорость расшифровки зависит от нескольких факторов сильнее, чем от модели карты.
Реализация. Оригинальный пакет openai-whisper самый медленный. Библиотека faster-whisper на движке CTranslate2 по данным её авторов работает до четырёх раз быстрее при меньшем расходе памяти. WhisperX и пакетный режим faster-whisper добавляют ещё кратное ускорение за счёт параллельной обработки фрагментов.
Батчинг. Длинная запись делится на фрагменты по голосовой активности, и они обрабатываются пачкой. На карте с 24 ГБ батч 16–32 загружает GPU полностью.
Параметры декодирования. Beam search с шириной 5 точнее, но медленнее жадного декодирования. Для черновой расшифровки хватает beam_size=1.
Точность вычислений. FP16 остаётся стандартом для GPU. INT8 экономит память и почти не влияет на качество.
Ориентировочные цифры для faster-whisper с large-v3 на час аудио:
| Карта | Тариф, ₽/час | Обычный режим | Пакетный режим | Стоимость часа аудио |
|---|---|---|---|---|
| RTX 3060 12 ГБ | 10 | 8–12 мин | 3–5 мин | 0,5–2 ₽ |
| RTX 4060 Ti 16 ГБ | 15 | 7–10 мин | 3–4 мин | 0,8–2,5 ₽ |
| RTX 3090 24 ГБ | 22 | 4–6 мин | 1,5–3 мин | 0,6–2,2 ₽ |
| RTX 4090 24 ГБ | 44 | 3–4 мин | 1–2 мин | 0,7–3 ₽ |
Цифры зависят от записи: тишина, количество речи и длина фрагментов меняют результат. Поэтому первым делом прогоните 10–15 минут своей записи и засеките время.
Для сравнения: если расшифровывать запись вручную, на час аудио уходит несколько часов работы человека. Даже с последующей вычиткой автоматическая расшифровка экономит большую часть этого времени.
Вывод из таблицы: для Whisper дорогая карта не нужна. Даже RTX 3060 за 12 ₽/час расшифровывает час записи быстрее, чем вы прочитаете результат.
Как запустить faster-whisper на арендованной GPU
Минимальная инструкция для сервера с CUDA:
pip install faster-whisper
Скрипт расшифровки с пакетным режимом:
from faster_whisper import WhisperModel, BatchedInferencePipeline
model = WhisperModel("large-v3", device="cuda", compute_type="float16")
pipeline = BatchedInferencePipeline(model=model)
segments, info = pipeline.transcribe("meeting.mp3", language="ru", batch_size=16)
with open("meeting.txt", "w") as f:
for s in segments:
f.write(f"[{s.start:.1f}–{s.end:.1f}] {s.text}\n")
Указывайте language="ru" явно: автоопределение языка иногда ошибается на первых секундах записи с музыкой или тишиной.
Для субтитров сохраните сегменты в формат SRT, для протоколов встреч — в обычный текст с тайм-кодами. Готовый шаблон окружения лежит на странице запуска Whisper.
Как повысить точность
Скорость на GPU почти бесплатна, поэтому основное внимание стоит уделить качеству. Несколько приёмов, которые заметно снижают число ошибок.
Подготовьте звук. Whisper работает с моно-аудио 16 кГц и сам приводит файл к этому формату через ffmpeg. Но если запись тихая или с сильным шумом, предварительная нормализация громкости и шумоподавление помогают. Для записей звонков, где собеседники на разных каналах, иногда выгоднее расшифровать каждый канал отдельно.
Используйте фильтр голосовой активности. Параметр vad_filter=True в faster-whisper вырезает паузы и тишину. Это ускоряет обработку и снижает риск «галлюцинаций», когда модель на тишине выдумывает фразы вроде «Продолжение следует».
Задайте контекст. Параметр initial_prompt позволяет передать модели подсказку: список терминов, имён, названий продуктов. Если в записи часто звучат специфические слова, перечислите их в промпте, и модель будет писать их правильно.
Выберите правильный beam search. Для финальной версии используйте beam_size=5: это немного медленнее, зато точнее на сложных фрагментах. Для черновой расшифровки и поиска по архиву хватит beam_size=1.
Проверяйте начало записи. Ошибки чаще всего возникают в первые секунды, особенно если там музыка или заставка. При необходимости обрежьте вступление перед расшифровкой.
Эти настройки почти не влияют на стоимость, но заметно улучшают результат на сложных записях: совещаниях с несколькими участниками, интервью по телефону, лекциях в больших аудиториях.
Разметка спикеров и другие доработки
Whisper сам не различает, кто говорит. Для протоколов совещаний и интервью добавьте диаризацию.
- WhisperX объединяет faster-whisper, выравнивание слов по времени и диаризацию на базе pyannote. Для моделей pyannote нужно принять условия на Hugging Face и указать токен.
- Выравнивание по словам даёт точные тайм-коды для каждого слова, это полезно для субтитров и монтажа.
- Постобработка LLM. Сырую расшифровку можно передать языковой модели на том же сервере: она исправит термины, разобьёт текст на абзацы и составит краткое резюме. Модель на 7–8B в 4 битах поместится рядом с Whisper на карте с 24 ГБ.
Диаризация добавляет к времени обработки ещё несколько минут на час аудио, но стоимость остаётся на уровне рублей.
Длинные записи, видео и форматы
На практике расшифровывать приходится не только аккуратные mp3-файлы. Несколько типичных ситуаций.
Видеофайлы. Whisper принимает видео напрямую, извлекая звук через ffmpeg. Но если вы загружаете на сервер гигабайты видео ради звуковой дорожки, быстрее извлечь аудио у себя: ffmpeg -i lecture.mp4 -vn -ac 1 -ar 16000 lecture.wav. Файл станет в десятки раз меньше, и загрузка займёт секунды.
Записи по несколько часов. faster-whisper обрабатывает длинные файлы потоково, разбивая их на фрагменты, поэтому трёхчасовая запись не требует больше видеопамяти, чем десятиминутная. Ограничение только во времени обработки.
Много мелких файлов. Если в архиве тысячи коротких голосовых сообщений, основное время уходит на загрузку модели и чтение файлов, а не на распознавание. Загружайте модель один раз и обрабатывайте файлы в цикле внутри одного процесса.
Форматы результата. Для субтитров нужны SRT или VTT с тайм-кодами, для поиска по архиву — JSON с сегментами, для чтения — обычный текст с абзацами. Сохраняйте сразу JSON: из него за секунды собирается любой другой формат, а повторная расшифровка не понадобится.
Смешанные языки. Если в записи русская речь перемежается английской, явное указание language="ru" иногда заставляет модель транслитерировать английские фразы. В таких случаях попробуйте автоопределение или расшифруйте проблемные фрагменты отдельно.
Считаем бюджет для архива
Возьмём архив из 300 часов записей: интервью, звонки, лекции.
| Параметр | RTX 3060 | RTX 3090 | RTX 4090 |
|---|---|---|---|
| Время на час аудио (пакетный режим) | ~4 мин | ~2,5 мин | ~1,5 мин |
| Всего машинного времени | ~20 ч | ~12,5 ч | ~7,5 ч |
| Стоимость | ~200 ₽ | ~275 ₽ | ~330 ₽ |
Добавьте время на загрузку файлов и настройку: ещё час-два работы сервера. Итог: весь архив расшифровывается за вечер или ночь и стоит несколько сотен рублей.
Практический совет: запускайте обработку очередью в фоне через nohup или tmux и выключайте сервер командой в конце скрипта. Тогда вы не заплатите за часы простоя, если обработка закончится ночью.
Какую карту выбрать
- Разовая расшифровка нескольких записей — RTX 3060 за 12 ₽/час, без раздумий.
- Регулярная обработка, диаризация, LLM-постобработка — RTX 3090 за 26 ₽/час: 24 ГБ хватит на всё сразу.
- Большой архив в сжатые сроки — RTX 4090 или несколько RTX 3090 параллельно, каждая со своей частью файлов.
Whisper не масштабируется на несколько карт внутри одной записи, зато отлично параллелится по файлам. Два сервера с RTX 3090 обработают архив вдвое быстрее за те же деньги.
Все карты доступны с почасовой оплатой и поминутным списанием. О задачах, для которых подходят эти конфигурации, подробнее рассказано в разделе аренды GPU для ИИ.