# Использование ESPnet на Hugging Face

`espnet` — это комплексный набор инструментов для сквозной обработки речи, включающий автоматическое распознавание речи, синтез речи из текста, улучшение качества речи, разделение источников и другие задачи.

## Исследование ESPnet в Hub

Сотни моделей `espnet` можно найти, используя фильтры слева на [странице моделей](https://huggingface.co/models?library=espnet&sort=downloads).

Все модели на Hub поставляются с полезными функциями:
1. Автоматически сгенерированная карточка модели с описанием, конфигурацией обучения, лицензиями и другими сведениями.
2. Метаданные, которые помогают в поиске и содержат информацию, например, о лицензии, языке и наборах данных.
3. Интерактивный виджет, с помощью которого можно взаимодействовать с моделью непосредственно в браузере.
4. Виджет Inference Providers, позволяющий отправлять запросы на инференс.

## Использование существующих моделей

Для полного руководства по загрузке предобученных моделей рекомендуем обратиться к [официальному руководству](https://github.com/espnet/espnet_model_zoo)).

Если вас интересует выполнение инференса, то разные классы для разных задач имеют метод `from_pretrained`, который позволяет загружать модели с Hub. Например:
* `Speech2Text` для автоматического распознавания речи.
* `Text2Speech` для синтеза речи из текста.
* `SeparateSpeech` для разделения источников звука.

Вот пример инференса:

```py
import soundfile
from espnet2.bin.tts_inference import Text2Speech

text2speech = Text2Speech.from_pretrained("model_name")
speech = text2speech("foobar")["wav"]
soundfile.write("out.wav", speech.numpy(), text2speech.fs, "PCM_16")
```

Если вы хотите узнать, как загрузить конкретную модель, нажмите `Use in ESPnet` — вам будет предоставлен рабочий фрагмент кода для её загрузки!

## Обмен моделями

`ESPnet` формирует файл `zip`, который легко загрузить на Hugging Face. Полное руководство по публикации моделей — в [официальном руководстве](https://github.com/espnet/espnet_model_zoo#register-your-model)).

Скрипт `run.sh` позволяет загрузить указанную модель в репозиторий Hugging Face.

```bash
./run.sh --stage 15 --skip_upload_hf false --hf_repo username/model_repo
```

## Дополнительные ресурсы

* Документация [ESPnet](https://espnet.github.io/espnet/index.html).
* Репозиторий [модельного зоопарка](https://github.com/espnet/espnet_model_zoo) ESPnet.
* Документация по интеграции [docs](https://github.com/asteroid-team/asteroid/blob/master/docs/source/readmes/pretrained_models.md).

