Запуск Whisper: первая расшифровка через faster-whisper

См. также — глоссарий

Это обычный Python-запуск для Linux x86-64 с Python 3.10–3.12 и возможностью создать виртуальное окружение. Он подходит для CPU VPS и уже запущенного контейнера GPU-инстанса. Если на машине доступен Docker, используйте отдельную инструкцию для контейнеров.

Повторите наш запуск на русском и английском аудио

13 октября 2026 года мы запустили скачиваемый пример без изменений на RTX 4090: large-v3, faster-whisper 1.2.1, CUDA FP16, beam size 5, автоопределение языка и VAD. Исходники — чистые записи, синтезированные Chatterbox. Послушать аудио и прочитать расшифровки без правок.

После установки примера и проверки библиотек GPU скачайте те же исходники и выполните:

mkdir -p input
curl --fail --location https://cloudcompute.ru/application-assets/tts/chatterbox-multilingual-en-20261013.wav -o input/en.wav
curl --fail --location https://cloudcompute.ru/application-assets/tts/chatterbox-multilingual-ru-20261013.wav -o input/ru.wav
python transcribe.py --model large-v3 --cache models --download-only
python transcribe.py --input input --output output --cache models \
  --model large-v3 --device cuda --compute-type float16 --language auto --offline

В models.json закреплена ревизия edaa852ec7e145841d8ffdb056a99866b5f0a478 модели Systran/faster-whisper-large-v3. Используйте новую папку результатов. SHA-256 ZIP-архива, использованного в запуске: d50f467fca73bf2fde2f0106d5690c4bb3b220bc2ad03e1a2cde490f81aa4403.

Исходник Длительность Распознавание Исходные результаты
Английский 8,32 с 0,99 с TXT · SRT · VTT · JSON
Русский 8,32 с 0,63 с TXT · SRT · VTT · JSON

Сначала модель загрузилась за 2,88 с, затем файлы обрабатывались последовательно. Время распознавания не включает загрузку модели, скачивание весов, подготовку окружения и передачу аудио; для русского файла модель уже была в памяти. Два коротких примера не заменяют проверку скорости и качества на ваших записях. Точное окружение и контрольные суммы сохранены в данных запуска.

Распознанные слова совпадают со сценариями без учёта регистра и пунктуации. В английском тексте потеряны заглавные буквы и знаки препинания, а последний субтитр заканчивается на 15,92 с при длительности записи 8,32 с. Исходный результат оставлен без правок: перед использованием исправьте тайминг. Файлы получены скриптом; экспорт субтитров через WebUI этим запуском не проверялся.

Подготовьте пример и одну запись

Скачайте ZIP по ссылке внизу, распакуйте и перейдите в whisper-transcription/. Перед установкой просмотрите requirements.txt. В нём закреплены faster-whisper 1.2.1, CTranslate2 4.6.0 и основные зависимости декодирования; остальные транзитивные зависимости и системные пакеты не образуют полный lock окружения.

Положите в input/ короткую запись, которую вправе обрабатывать. Для первого запуска возьмите разборчивую речь на нужном языке. Несколько секунд тишины помогут проверить поведение фильтра.

Установка, загрузка модели, распознавание

python3 -m venv .venv
. .venv/bin/activate
python -m pip install -r requirements.txt
mkdir -p input output models
python transcribe.py --model small --cache models --download-only
python transcribe.py --input input --output output --cache models \
  --model small --device cpu --language auto --offline

Команда загрузки получает ревизию из models.json. Режим --download-only не открывает аудио. Последняя команда требует эту модель в кеше и не подменяет её новой ревизией. Если язык известен, замените --language auto на --language ru или --language en: автоопределение работает для файла, а не для каждой фразы.

Проверьте результат

Для input/interview.mp3 текст окажется в output/interview.mp3/transcript.txt. Рядом лежат SRT и VTT; в JSON записаны таймкоды сегментов, настройки, версии пакетов и время обработки. Манифест complete.json означает, что результаты записаны и проверены по контрольным суммам. Маркер INCOMPLETE требует разбирательства после ошибки.

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

Переход на NVIDIA GPU

Сначала проверьте драйвер, библиотеки CUDA и доступные типы вычислений по инструкции диагностики, затем выполните:

python transcribe.py --input input --output output-gpu --cache models \
  --model small --device cuda --compute-type float16 --language auto --offline

При изменении оборудования или настроек используйте новый выходной каталог. Для CPU по умолчанию выбран INT8, для GPU — FP16. Если запрошенный GPU не работает, программа завершается с ошибкой и не переключается молча на CPU. Что именно сравнивать — в руководстве по моделям и оборудованию.

До удаления инстанса скачайте результаты. Локальные каталоги с моделью и текстом не заменяют внешнюю резервную копию. Для папки записей и восстановления после сбоя используйте пакетную обработку.

Все инструкции по Whisper · Скачать пример

Готовы запустить?

Запустить GPU-сервер