Buckets:

rtrm's picture
download
raw
12.1 kB
<meta charset="utf-8" /><meta name="hf:doc:metadata" content="{&quot;title&quot;:&quot;Практическое занятие&quot;,&quot;local&quot;:&quot;практическое-занятие&quot;,&quot;sections&quot;:[],&quot;depth&quot;:1}">
<link href="/docs/audio-course/pr_201/ru/_app/immutable/assets/0.e3b0c442.css" rel="modulepreload">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/entry/start.09f2bcd2.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/scheduler.f7e1785c.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/singletons.81bb146a.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/index.279db187.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/paths.fd9a933e.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/entry/app.ea37f525.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/index.9f8f0838.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/nodes/0.e875dd2e.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/each.e59479a4.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/nodes/42.ccec478a.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/Tip.4575d9cf.js">
<link rel="modulepreload" href="/docs/audio-course/pr_201/ru/_app/immutable/chunks/EditOnGithub.5a9bb8c5.js"><!-- HEAD_svelte-u9bgzb_START --><meta name="hf:doc:metadata" content="{&quot;title&quot;:&quot;Практическое занятие&quot;,&quot;local&quot;:&quot;практическое-занятие&quot;,&quot;sections&quot;:[],&quot;depth&quot;:1}"><!-- HEAD_svelte-u9bgzb_END --> <p></p> <h1 class="relative group"><a id="практическое-занятие" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#практическое-занятие"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Практическое занятие</span></h1> <p data-svelte-h="svelte-ehnz8">В этом разделе мы объединили материал, рассмотренный в предыдущих шести разделах курса, для создания трех интегрированных
аудио приложений. Как вы убедились, создание более сложных аудио инструментов вполне достижимо при использовании базовых навыков работы
приобретенных в рамках данного курса.</p> <p data-svelte-h="svelte-5jr76x">В практическом занятии используется одно из приложений, рассматриваемых в данном разделе, которое расширяется с помощью нескольких многоязычных
функций 🌍. Ваша задача - взять <a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation" rel="nofollow">каскадный перевод речи в речь из Gradio демо</a>
из первого урока данного раздела и модернизировать его для перевода на любой <strong>неанглийский</strong> язык. То есть демо
должно принимать речь на языке X и переводить ее в речь на языке Y, где целевой язык Y не является английским.
Начать следует с <a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation?duplicate=true" rel="nofollow">дублирования</a> шаблона в вашем пространстве
имен Hugging Face. Нет необходимости использовать GPU-ускоритель - бесплатный уровень подписки с CPU отлично справится с этой задачей 🤗.
Однако следует убедиться, что видимость вашего демо установлена в <strong>public</strong>. Это необходимо для того, чтобы ваше демо было доступно для нас
и могло быть проверено на корректность.</p> <p data-svelte-h="svelte-j728l1">Советы по обновлению функции перевода речи для выполнения многоязычного перевода приведены в разделе <a href="speech-to-speech">перевод речи в речь</a>.
Следуя этим инструкциям, вы сможете обновить демо версию для перевода с речи на языке X в текст на языке Y, а это уже половина задачи!</p> <p data-svelte-h="svelte-17o9t0r">Для синтеза из текста на языке Y в речь на языке Y, где Y - многоязычный язык, вам потребуется [NL] использовать контрольную точку многоязычной модели TTS.</p> <p data-svelte-h="svelte-1y8pj0q">Для этого можно использовать либо контрольную точку SpeechT5 TTS, которую вы дообучали на предыдущем практическом занятии, либо предварительно
обученную контрольную точку многоязычной TTS. Существует два варианта предварительно обученных контрольных точек: либо контрольная точка
<a href="https://huggingface.co/sanchit-gandhi/speecht5_tts_vox_nl" rel="nofollow">sanchit-gandhi/speecht5_tts_vox_nl</a>, которая представляет собой контрольную точку SpeechT5,
дообученную на голландском фрагменте набора данных <a href="https://huggingface.co/datasets/facebook/voxpopuli" rel="nofollow">VoxPopuli</a> [NL], либо контрольная точка MMS TTS
(смотрите раздел <a href="../chapter6/pre-trained_models">предварительно обученные модели text-to-speech</a>).</p> <div class="course-tip bg-gradient-to-br dark:bg-gradient-to-r before:border-green-500 dark:before:border-green-800 from-green-50 dark:from-gray-900 to-white dark:to-gray-950 border border-green-50 text-green-700 dark:text-gray-400">По нашему опыту экспериментов с голландским языком, использование контрольной точки MMS TTS дает лучшую производительность, чем
с дообученной SpeechT5, но вы можете обнаружить, что ваша дообученная контрольная точка TTS предпочтительнее для вашего языка.
Если вы решили использовать контрольную точку MMS TTS, вам необходимо обновить <a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation/blob/a03175878f522df7445290d5508bfb5c5178f787/requirements.txt#L2" data-svelte-h="svelte-l0vtp8">requirements.txt</a>
файл вашей демонстрации для установки <code data-svelte-h="svelte-olzpwg">transformers</code> из ветки PR:
<p data-svelte-h="svelte-1oo2kle"><code>git+https://github.com/hollance/transformers.git@6900e8ba6532162a8613d2270ec2286c3f58f57b</code></p></div> <p data-svelte-h="svelte-feppwu">Ваше демо должно принимать на вход аудиофайл, а на выходе возвращать другой аудиофайл, соответствующий сигнатуре функции
<a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation/blob/3946ba6705a6632a63de8672ac52a482ab74b3fc/app.py#L35" rel="nofollow"><code>speech_to_speech_translation</code></a> [NL] в шаблоне демо.</p> <p data-svelte-h="svelte-1vsd4ux">Поэтому мы рекомендуем оставить основную функцию <code>speech_to_speech_translation</code> как есть, и обновлять лишь функции <a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation/blob/a03175878f522df7445290d5508bfb5c5178f787/app.py#L24" rel="nofollow"><code>translate</code></a>
и <a href="https://huggingface.co/spaces/course-demos/speech-to-speech-translation/blob/a03175878f522df7445290d5508bfb5c5178f787/app.py#L29" rel="nofollow"><code>synthesise</code></a> по мере необходимости.</p> <p data-svelte-h="svelte-xmx54v">После того как вы создали своё демо в виде приложения Gradio на Hugging Face Hub, вы можете отправить его на оценку. Перейдите в пространство
<a href="https://huggingface.co/spaces/huggingface-course/audio-course-u7-assessment" rel="nofollow">audio-course-u7-assessment</a> и при появлении запроса укажите идентификатор репозитория вашего демо.
Этот пространство проверяет правильность сборки демо-версии, посылая [NL] образец аудиофайла в демо и проверяя, что возвращаемый аудиофайл действительно неанглийский.</p> <p data-svelte-h="svelte-1dgvgc3">Если ваше демо работает корректно, вы получите зеленую галочку рядом с вашим именем в общем <a href="https://huggingface.co/spaces/MariaK/Check-my-progress-Audio-Course" rel="nofollow">пространстве прогресса</a> ✅.</p> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/audio-transformers-course/blob/main/chapters/ru/chapter7/hands-on.mdx" target="_blank"><span data-svelte-h="svelte-1kd6by1">&lt;</span> <span data-svelte-h="svelte-x0xyl0">&gt;</span> <span data-svelte-h="svelte-1dajgef"><span class="underline ml-1.5">Update</span> on GitHub</span></a> <p></p>
<script>
{
__sveltekit_2kx7xw = {
assets: "/docs/audio-course/pr_201/ru",
base: "/docs/audio-course/pr_201/ru",
env: {}
};
const element = document.currentScript.parentElement;
const data = [null,null];
Promise.all([
import("/docs/audio-course/pr_201/ru/_app/immutable/entry/start.09f2bcd2.js"),
import("/docs/audio-course/pr_201/ru/_app/immutable/entry/app.ea37f525.js")
]).then(([kit, app]) => {
kit.start(app, element, {
node_ids: [0, 42],
data,
form: null,
error: null
});
});
}
</script>

Xet Storage Details

Size:
12.1 kB
·
Xet hash:
0619a3bf6d154d254fafca39cc73847d91875b4f1e2c4e79389f1200cbe59207

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.