
Всем привет, друзья! Сегодня я расскажу, как быстро настроить распознавание речи(транскрибацию) из видео(аудио) в текст. Для этого воспользуемся таким популярным инструментом как Whisper.
Whisper — это нейросетевая система распознавания речи (автоматического транскрибирования аудио в текст), разработанная компанией OpenAI (создатели ChatGPT).
Это статья краткое руководство, для тех кому нужно:
Перевести записи аудио лекций в текст.
Создать субтитры для фильмов(или обучающих роликов) на разных языках.
Для создания протокола встреч, чтобы не набивать текст вручную (и в дальнейшем использовать для анализа и создания документов в ИИ).
На основе связки Whisper и какой-нибудь ИИ можно сделать переводчика в режиме реального времени. (Мы здесь это рассматривать не будем.)
И так далее, на что вашей фантазии хватит.
Шаг 1: Устанавливаем Python
Для работы Whisper необходимо установить Python. Рекомендуемые версии 3.8 – 3.11.
Скачать можно по ссылке - https://www.python.org/ftp/python/3.11.3/python-3.11.3-amd64.exe
или со страницы https://www.python.org/downloads/windows/ :

После скачивания устанавливаем, ОБЯЗАТЕЛЬНО ставим галку «Add python.exe to PATH»:

Шаг 2: Устанавливаем FFmpeg
Для работы с видео и аудио нам понадобится FFmpeg. Скачать можно по прямой официальной ссылке - https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-essentials.zip Или с самого сайта - https://www.gyan.dev/ffmpeg/builds/ :

К сожалению, у FFmpeg нет установщика для windows, поэтому нам придется сделать некоторые манипуляции вручную.
После распаковки архива, переносим его, например, в корень диска C: и переименовываем папку в FFmpeg. В итоге путь до папки bin FFmpeg такой:

Копируем путь. И открываем «Изменение переменных среды» На windows 11(или 10) найти это можно так:


Находим строки path и двойным щелчком мыши открываем и добавляем путь к FFmpeg, сохраняем:


Проверим что все установилось. Откроем командную строку и введем ffmpeg:

Шаг 3: Устанавливаем Whisper
Для установки Whisper должен быть установлен Python (смотри шаг 1).
Далее устанавливаем Whisper(вводим в командной строке):
pip install -U openai-whisper

В конце установки должно быть что-то вроде этого:

Проверим что все установилось, введем whisper:

Теперь все готово к транскрибации. Давайте приступим.
Шаг 4: Распознаем речь в текст
Самый простой способ проверить – создать запись голоса:

Созданный файл:

После записи заходим в консоль и переходим в папку с записью. И запускаем распознавание (модель large, чуть ниже будет описание доступных моделей):
cd C:\habr
whisper "1.m4a" --model large --language Russian

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

Давайте посмотрим файл 1.srt (субтитры):

Вот список доступных моделей, которые мы можете применить при запросе в командной строке (в нашем примере - large):
Модель |
Размер |
Скорость |
Точность |
tiny |
39 MB |
Очень быстрая |
Базовая |
base |
74 MB |
Быстрая |
Хорошая |
small |
244 MB |
Средняя |
Отличная |
medium |
769 MB |
Медленная |
Превосходная |
large |
~1.5 GB |
Самая медленная |
Наивысшая (требует GPU) |
Все работает.
Также в сети нашел неплохую инструкция того что описано в статье, только для Linux - https://github.com/Bike2/Whisper-Local-Install
Это инструкция написана как быстрый старт для совсем новичков. Поэтому, просьба отнестись с пониманием, что все не очень подробно, и возможно уже есть похожие статьи.
Спасибо за внимание!
teleomoon
В Сети есть хорошие и бесплатные онлайн-сервисы, которые работают без всяких дополнительных установок. В чем плюсы конкретно вашего инструмента?
vaddone Автор
Основные плюсы:
1) Конфиденциальность. Все данные храняться локально, нет утечки данных. Иногда это важно.
2) Автономность. В сети ходит видео где на основе Raspberry PI и Whisper делают карманный переводчик, который работает без доступа в интернет.
3) Возможность интеграции с внешними системами для дальнейшей обработки данных (например LLM). Можно, например, интегрировать в агента ИИ для голосового ввода промптов и дальнейшего создания документации по определенным правилам (отчетов для руководителей, написание инструкций по эксплуатации, описание программных продуктов и т.д.). Можно создать голосового робота, если добавить обратный синтез речи из текста (голосовые роботы, которые стоят на телефонных номерах крупных компаний.). В общем вариантов очень много.