Audio Course documentation

Практическое занятие

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Практическое занятие

В этом разделе мы объединили материал, рассмотренный в предыдущих шести разделах курса, для создания трех интегрированных аудио приложений. Как вы убедились, создание более сложных аудио инструментов вполне достижимо при использовании базовых навыков работы приобретенных в рамках данного курса.

В практическом занятии используется одно из приложений, рассматриваемых в данном разделе, которое расширяется с помощью нескольких многоязычных функций 🌍. Ваша задача - взять каскадный перевод речи в речь из Gradio демо из первого урока данного раздела и модернизировать его для перевода на любой неанглийский язык. То есть демо должно принимать речь на языке X и переводить ее в речь на языке Y, где целевой язык Y не является английским. Начать следует с дублирования шаблона в вашем пространстве имен Hugging Face. Нет необходимости использовать GPU-ускоритель - бесплатный уровень подписки с CPU отлично справится с этой задачей 🤗. Однако следует убедиться, что видимость вашего демо установлена в public. Это необходимо для того, чтобы ваше демо было доступно для нас и могло быть проверено на корректность.

Советы по обновлению функции перевода речи для выполнения многоязычного перевода приведены в разделе перевод речи в речь. Следуя этим инструкциям, вы сможете обновить демо версию для перевода с речи на языке X в текст на языке Y, а это уже половина задачи!

Для синтеза из текста на языке Y в речь на языке Y, где Y - многоязычный язык, вам потребуется [NL] использовать контрольную точку многоязычной модели TTS.

Для этого можно использовать либо контрольную точку SpeechT5 TTS, которую вы дообучали на предыдущем практическом занятии, либо предварительно обученную контрольную точку многоязычной TTS. Существует два варианта предварительно обученных контрольных точек: либо контрольная точка sanchit-gandhi/speecht5_tts_vox_nl, которая представляет собой контрольную точку SpeechT5, дообученную на голландском фрагменте набора данных VoxPopuli [NL], либо контрольная точка MMS TTS (смотрите раздел предварительно обученные модели text-to-speech).

По нашему опыту экспериментов с голландским языком, использование контрольной точки MMS TTS дает лучшую производительность, чем с дообученной SpeechT5, но вы можете обнаружить, что ваша дообученная контрольная точка TTS предпочтительнее для вашего языка. Если вы решили использовать контрольную точку MMS TTS, вам необходимо обновить requirements.txt файл вашей демонстрации для установки transformers из ветки PR:

git+https://github.com/hollance/transformers.git@6900e8ba6532162a8613d2270ec2286c3f58f57b

Ваше демо должно принимать на вход аудиофайл, а на выходе возвращать другой аудиофайл, соответствующий сигнатуре функции speech_to_speech_translation [NL] в шаблоне демо.

Поэтому мы рекомендуем оставить основную функцию speech_to_speech_translation как есть, и обновлять лишь функции translate и synthesise по мере необходимости.

После того как вы создали своё демо в виде приложения Gradio на Hugging Face Hub, вы можете отправить его на оценку. Перейдите в пространство audio-course-u7-assessment и при появлении запроса укажите идентификатор репозитория вашего демо. Этот пространство проверяет правильность сборки демо-версии, посылая [NL] образец аудиофайла в демо и проверяя, что возвращаемый аудиофайл действительно неанглийский.

Если ваше демо работает корректно, вы получите зеленую галочку рядом с вашим именем в общем пространстве прогресса ✅.