# Usando o ESPnet no Hugging Face

`espnet` é um toolkit de ponta a ponta para processamento de fala, incluindo reconhecimento automático de fala, conversão de texto em fala, aprimoramento de fala, dirarização e outras tarefas.

## Explorando o ESPnet no Hub

Você pode encontrar centenas de modelos `espnet` filtrando à esquerda na [página de modelos](https://huggingface.co/models?library=espnet&sort=downloads).

Todos os modelos no Hub vêm com recursos úteis:
1. Um cartão de modelo gerado automaticamente com uma descrição, uma configuração de treinamento, licenças e mais.
2. Tags de metadados que auxiliam na descoberta e contêm informações como licença, idioma e conjuntos de dados.
3. Um widget interativo que você pode usar para interagir com o modelo diretamente no navegador.
4. Um widget de Inference Providers que permite fazer solicitações de inferência.

## Usando modelos existentes

Para um guia completo sobre o carregamento de modelos pré-treinados, recomendamos consultar o [guia oficial](https://github.com/espnet/espnet_model_zoo)).

Se você tem interesse em fazer inferência, diferentes classes para diferentes tarefas possuem um método `from_pretrained` que permite carregar modelos do Hub. Por exemplo:
* `Speech2Text` para Reconhecimento Automático de Fala.
* `Text2Speech` para conversão de texto em fala.
* `SeparateSpeech` para Separação de Fontes de Áudio.

Aqui está um exemplo de inferência:

```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")
```

Se você quiser ver como carregar um modelo específico, pode clicar em `Use in ESPnet` e receber um trecho de código funcional para carregá-lo!

## Compartilhando seus modelos

`ESPnet` gera um arquivo `zip` que pode ser enviado facilmente para o Hugging Face. Para um guia completo sobre o compartilhamento de modelos, recomendamos consultar o [guia oficial](https://github.com/espnet/espnet_model_zoo#register-your-model)).

O script `run.sh` permite enviar um modelo específico para um repositório do Hugging Face.

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

## Recursos adicionais

* Documentação [docs](https://espnet.github.io/espnet/index.html) do ESPnet.
* Repositório [repository](https://github.com/espnet/espnet_model_zoo) do model zoo do ESPnet.
* Documentação de [integração](https://github.com/asteroid-team/asteroid/blob/master/docs/source/readmes/pretrained_models.md).

