В этой статье описывается пример автоматического распознавания текста из аудио файла, выполненный с помощью Python.
ТРАНСКРИБАЦИЯ — передача на письме тем или иным набором письменных знаков элементов звучащей речи (фонем, аллофонов, звуков).
Далее буквосочетание "Транскрибация" больше применяться не будет, и речь будет вестись простыми, русским буквами.
Статья предназначена только для примера и ознакомления с одной из технологий "превращения аудио-слов в текст".
Примечание: установка настроена на использования связки "Torch-cuda" для видеокарт NVIDIA !!!
Если вам требуется другой тип установки, сами смените адрес установки torch-пакета (обведено красным).
Модель нейросети "Whisper" — это современная модель для автоматического распознавания речи (ASR) и перевода речи, предложенная в статье Robust Speech Recognition via Large-Scale Weak Supervision Алека Рэдфорда и др. из OpenAI.
Оригинальный материал находится тут: (
)
Собственно в статье я объясняю и упрощаю процесс установки этой сети и модели с помощью написанного мною инсталлятора, репозиторий которого находится по адресу: (
)
Что нам потребуется?
Нам потребуется установленные на компьютере:
- git - (должеy бsть в PATH)
- Python - (я использовал v3.12)
Что это такое, где взять. как проверить, и т.п., читайте тут:
- в любом удобном вам месте запускаем терминал ("cmd"), в котором вводим команду:
git clone https://github.com/Nestorchik/audio2text.git
В зависимости от скорости вашей сети и загрузки GitHub, через какое-то время произойдет установка, и у вас появится папка "audio2text", заходим в нее.
Остальные файлы в примере:
- audio.mp3 - 30-секундный отрезок аудио для тестирования.
- main.py - образец кода для тестирования установленной модели.
- install.bat - файл с командами установщика системы.
- файлы ".git" и "README.MD" - файлы с GitHub с сервера. В "Readme" имеется копия описания установки системы (оба этих файла можете удалить, они в установке и работе не участвуют).
Первым делом мы открываем в любом текстовом редакторе файл "install.bat" и редактируем в нем строку номер 4 куда вписываем ПОЛНЫЙ ПУТЬ к вашему файлу "python.exe" имеющейся у вас установки питона.
Примечание: я тестировал установку на питоне v3.12, но я не вижу каких-то препятствий для использования другой версии питона, хотя на практике я их не тестировал. так что быть уверенным не могу.
Запуск установки
После проверки пути к вашему питону в файле "install.bat" запускаем его из того каталога, куда он установился (взаиморасположение файлов менять нельзя, они знают друг о друге!).
Начнется установка:
- будет создано новое виртуальное окружение "venv" в текущей папке, и в него будут автоматически установлены все необходимые компоненты и пакеты.
- по окончании установки не закрывайте окно терминала (!) и проследите все ли установилось без ошибок и обрывов связи!!!
В конце установки в текущей папке будет сгенерирован файл "run.bat" , который и будет являться "запускающим" систему файлом.
В текущей папке должен быть расположен файл "audio.mp3" (имя прописано в файле "main.py"), при запуске процесса программа будет искать его по имени.
Примечание: можете поместить свой файл, но тогда потребуется прописать путь к нему и его имя в файле "main.py", а сам файл должен быть ограничен по длительности 30 секундами!!!
Для использования а работе файлов более длительного звучания потребуется переписать параметры запуска в “main.py” (читай официальную документацию).
Содержимое папки после установки "VENV":
(я удалил тут ".git" и "README.MD")
ВНИМАНИЕ!!!
При первом запуске файла "run.bat" автоматически начнётся скачивание и установка служебных файлов и файлов модели, размер которых превышает 5 гигабайт!!!
Рассчитывайте время запуска так, чтобы не отключать компьютера во время этой операции, иначе придется всю установку начинать сначала!!!
Примечание: служебные файлы и файлы моделей будут скачиваться по адресу (для Windows):
Users\User_Name\.cache\huggingface
Если что-то завершится с ошибкой, во избежание накладок, просто удалите в этой папке все файлы и папки, у которых дата создания позже даты и времени старта вашей установки.
Запуск "run.bat"
(я не смогу показать вам скриншоты процесса установки моделей, поскольку они у меня уже установлены, могу только сказать, что это довольно долго!)
После скачивания служебных файлов и моделей программа автоматически продолжит выполнение, и переведет в текстовый формат все, что "услышит" в файле "audio.mp3".
Программа начала работу:
Программа завершила работу:
Зеленым обведен текст из аудио-файла "услышанный" моделью.
Красной стрелкой показано напоминание, что тот же текст сохранен в сгенерированном файле "output.txt", который создается каждый раз, если его нет, и в который дописывается распознанный текст, если он уже существует.
Все "сие волшебство" наколдовано вот в этих строках файла "main.py":
- синим — имя аудио файла
- красным — вывод в окно терминала
- зеленым — вывод в файл
Для снятия лимита 30 секунд на записи включите эти две строки в файл "main.py". Эти настройки разобьют входной файл на 16 "пакетов" по 30 секунд каждый, что увеличит общую длительность до 16х30 секунд = 8 минут.
Примечание: при возникновении "косяков" при декодировании файла, если в исходном аудио обнаружится много артефактов, в генерируемом тексте могут появиться непечатные символы, которые будут выведены на экран терминала, то в текстовый файл могут не записаться, т.к. формат файла — простой текстовый.
Остальные примеры и параметры, читайте в оригинальном описании по адресу:
И будет вам "щасте"...
На главную:
Удачи!
NStor
https://t.me/stable_cascade_rus
https://t.me/sriger