Найти в Дзене
mdex-nn.ru

Как бесплатно превращать аудио в текст: мой опыт с нейросетями и причем тут "шёпот"

Нужно расшифровать запись лекции, совещания или видеоурока. Знакомая ситуация? Ручная расшифровка отнимает часы, а платные сервисы либо дороги, либо имеют жёсткие ограничения. Я прошёл этот путь и готов поделиться готовым бесплатным решением, а с вас лайк и подписка, если ещё этого не сделали. Сперва я искал готовые решения для своего макбука и наткнулся на приложение MacWhisper. Скажу сразу, что это тупиковый путь. В обзорах данной программулины пишут, что у неё есть бесплатная версия, но почему-то умалчивают она не позволяет сохранить результат. Всякие онлайн сервисы тоже путь в никуда. Обычно дают расшифровать не больше 10 минут, а дальше подписка. Такое ощущение, что скоро вся жизнь будет по подписке... но знаете что удивительно? Оказывается OpenAI выкатила в свободный доступ свою модель для автоматического распознавания речи (ASR) Whisper! Дальше я начал копать в этом направлении и вот к чему пришел в итоге. Вышеупомянутая программа MacWhisper не что иное, как просто графическая
Оглавление

Нужно расшифровать запись лекции, совещания или видеоурока. Знакомая ситуация? Ручная расшифровка отнимает часы, а платные сервисы либо дороги, либо имеют жёсткие ограничения. Я прошёл этот путь и готов поделиться готовым бесплатным решением, а с вас лайк и подписка, если ещё этого не сделали.

В поисках готового решения, или Как я открыл для себя «шепот» (Whisper)

Сперва я искал готовые решения для своего макбука и наткнулся на приложение MacWhisper. Скажу сразу, что это тупиковый путь. В обзорах данной программулины пишут, что у неё есть бесплатная версия, но почему-то умалчивают она не позволяет сохранить результат.

Всякие онлайн сервисы тоже путь в никуда. Обычно дают расшифровать не больше 10 минут, а дальше подписка. Такое ощущение, что скоро вся жизнь будет по подписке... но знаете что удивительно? Оказывается OpenAI выкатила в свободный доступ свою модель для автоматического распознавания речи (ASR) Whisper!

Как работает модель для автоматического распознавания речи (ASR) Whisper от OpenAI
Как работает модель для автоматического распознавания речи (ASR) Whisper от OpenAI

Дальше я начал копать в этом направлении и вот к чему пришел в итоге. Вышеупомянутая программа MacWhisper не что иное, как просто графическая оболочка для языковой модели Whisper от OpenAI, а графический интерфейс тут вовсе не обязателен. Всё прекрасно работает прямо из командной строки в терминале.

Что такое WhisperX и чем он отличается от Whisper

Кроме того, сообщество разработчиков создало надстройку WhisperX, которая устраняет недостатки оригинального Whisper, позволяя работать с длинными аудио или видеофайлами (подкасты, лекции, интервью), существенно увеличив скорость обработки и добавляя точные таймкоды для монтажа видео, создания субтитров и автоматической разбивки по дикторам (особенно полезно для записи интервью и совещаний).

Оригинальный же Whisper можно использовать если нужна простая транскрипция коротких аудио и не требуются точные таймкоды на уровне слов с идентификацией говорящих.

Практическое руководство: Как начать использовать Whisper/WhisperX

Не нужно быть программистом, чтобы запустить собственную нейросеть Whisper/WhisperX, однако для её использования понадобится командная строка (Terminal). Сперва дам общие рекомендации, а после конкретно для пользователей macOS на процессорах Apple M1 и новее.

Шаг 1: Установка Python и PIP

Убедитесь, что у вас установлен Python (рекомендуется версия 3.8 или новее). Часто pip (менеджер пакетов Python) уже установлен вместе с ним. Проверить это можно, открыв Терминал и введя:

python --version
pip3 --version

Шаг 2: Установка Whisper (базовый вариант)

Всё делается буквально одной командой (при условии, что python и менеджер пакетов pip уже установлены):

pip install openai-whisper

Как использовать (пример):

whisper "ваш_аудиофайл.mp3" --model medium --language ru --output_dir "папка_с_результатом"
  • --model: Выбор модели (tiny, base, small, medium, large). Чем больше, тем точнее, но медленнее. Для русского хорошо подходит medium.
  • --language Russian: Указывает язык, что ускоряет и улучшает точность.
  • --output_dir: Папка, куда сохранится результат.

Что на выходе? Файл с текстом (.txt) и файл с субтитрами (.srt или .vtt) с таймкодами.

Если командная строка пугает, для Whisper существуют графические интерфейсы (GUI). Например, Buzz — отличное бесплатное приложение, которое внутри себя использует Whisper. Оно покажет вам кнопки, выбор файлов и красивое окно с результатом (лично мне без надобности).

Шаг 3: Установка WhisperX (предпочтительный вариант)

Это тот самый "гвоздь программы" для ваших задач с лекциями и конференциями. Для WhisperX готовых графических приложений практически нет, так как это более новая и сложная система. Его сила раскрывается именно в командной строке.

ссылка на проект https://github.com/m-bain/whisperX

Установка WhisperX:

pip install whisperx

Базовый сценарий использования:

whisperx "ваш_аудиофайл.mp3" --model medium --language ru --output_dir "папка_с_результатом"

Результат получается быстрее, чем при использовании whisper и с более точными таймкодами.

Продвинутый сценарий использования с определением дикторов:

whisperx "ваш_аудиофайл.mp3" --model medium --language ru --diarize --output_dir "папка_с_результатом"

--diarize — это ключевой флаг, который запускает идентификацию спикеров. В первый раз он попросит вас авторизоваться на Hugging Face Hub (это бесплатно), чтобы скачать модель pyannote.

Что получите на выходе? Текст, разбитый по репликам с пометками [SPEAKER_00], [SPEAKER_01] и точными таймкодами. Идеально для расшифровки интервью и совещаний.

WhisperX на macOS. mlx_whisper для процессоров Apple M1 и более свежих моделей

Для процессоров Apple M1 и более свежих, вместо WhisperX лучше использовать специально адаптированную версия mlx_whisper.

ссылка на проект: https://github.com/ml-explore/mlx-examples/tree/main/whisper

1. Установите Xcode из магазина приложений;

2. Установите Homebrew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3. Если на вашем Mac не установлен Python 3 и ffmpeg, выполните следующее действие:

brew install python
brew install ffmpeg

4. Для установки pip3, воспользуйтесь командой:

python3 -m pip install --upgrade pip

5. Добавьте путь к установленному pip (в моем случае путь был такой):

echo 'export PATH="$PATH:/Users/dreamer/Library/Python/3.9/bin"' >> ~/.bash_profile

6. установка whisperx и mlx_whisper:

pip install whisperx
pip install mlx-whisper

Пример использования whisperx по распознаванию речи из видео (001.mp4) с моделью large-v2 на ARM процессоре от Apple:

whisperx ~/Desktop/001.mp4 --model large-v2 --language ru --compute_type int8 --device cpu

Тот же самый файл (001.mp4), но с использованием whisperx с аналогичной языковой моделью large-v2:

mlx_whisper ~/Desktop/001.mp4 --model mlx-community/whisper-large-v2-mlx --language ru --output-format all

Пара полезных ссылок для самостоятельного обучения:

Подписывайтесь на канал и узнавайте первыми о новых материалах, опубликованных на сайте.

ЕСЛИ СЧИТАЕТЕ СТАТЬЮ ПОЛЕЗНОЙ,
НЕ ЛЕНИТЕСЬ СТАВИТЬ ЛАЙКИ И ДЕЛИТЬСЯ С ДРУЗЬЯМИ.
Как бесплатно превращать аудио в текст: мой опыт с нейросетями и причем тут "шепот"