O VoiceCraft é uma ferramenta de edição de fala de código aberto e de síntese de fala de amostra zero baseada no modelo de linguagem Neural Codec. Ele emprega um método inovador de geração de sequência codificada que permite operações de inserção, exclusão e substituição em sequências de fala existentes para gerar uma fala editada natural e coerente. Além disso, o VoiceCraft oferece suporte à síntese de fala com amostra zero, eliminando a necessidade de ajuste fino adicional para alto-falantes específicos. A ferramenta apresenta bom desempenho em várias tarefas de processamento de fala, superando significativamente os atuais modelos SOTA do setor.

Lista de funções
- Edição de voz: suporta operações de inserção, exclusão e substituição para gerar uma voz de edição natural e suave.
- Síntese de fala de amostra zero: gera a voz do falante-alvo sem ajuste fino adicional.
- Com base na arquitetura do Transformer: técnicas de mascaramento causal e empilhamento atrasado são usadas para melhorar a qualidade da geração.
- Modelos de código aberto: gratuitos para download e uso no Huggingface e no AI Express.
- UI interativa: a integração com a biblioteca Gradio permite que os usuários controlem e testem modelos de forma intuitiva.
Usando a Ajuda
Processo de instalação
- Clone o repositório do projeto em um diretório local:
git clone git@github.com:jasonppy/VoiceCraft.git cd VoiceCraft
- Certifique-se de que o Docker e o NVIDIA Container Toolkit estejam instalados em seu sistema (os sistemas Windows têm drivers integrados):
sudo apt-get install -y nvidia-container-toolkit-base
- Crie a imagem do Docker:
docker build --tag "voicecraft" .
- Inicie um contêiner existente ou crie um novo contêiner e passe todas as GPUs:
./start-jupyter.sh # Linux start-jupyter.bat # Windows
- Abra um navegador e acesse a URL exibida no terminal:
docker logs jupyter
- Opcional: acesso ao interior do contêiner a partir de outro terminal:
docker exec -it jupyter /bin/bash export USER=(your_linux_username_used_above) export HOME=/home/$USER sudo apt-get update
- Verifique se a placa de vídeo está visível no contêiner:
nvidia-smi
- Abrir em seu navegadorinference_tts.ipynbA célula é executada passo a passo.
Configurações ambientais
- Criar e ativar um ambiente virtual:
conda create -n voicecraft python=3.9.16 conda activate voicecraft
- Instale as dependências necessárias:
pip install -e git+https://github.com/facebookresearch/audiocraft.git@c5157b5bf14bf83449c17ea1eeb66c19fb4bc7f0#egg=audiocraft pip install xformers==0.0.22 pip install torchaudio==2.0.2 torch==2.0.1 apt-get install ffmpeg apt-get install espeak-ng pip install tensorboard==2.16.2 pip install phonemizer==3.2.1 pip install datasets==2.16.0 pip install torchmetrics==0.11.1 pip install huggingface_hub==0.22.2 conda install -c conda-forge montreal-forced-aligner=2.2.17 openfst=1.8.2 kaldi=5.5.1068 mfa model download dictionary english_us_arpa mfa model download acoustic english_us_arpa conda install -n voicecraft ipykernel --no-deps --force-reinstall
Exemplo de raciocínio
- Raciocínio de edição de voz:
python phonemize_encodec_encode_hf.py --dataset_size xs --download_to path/to/store_huggingface_downloads --save_dir path/to/store_extracted_codes_and_phonemes --encodec_model_path path/to/encodec_model --mega_batch_size 120 --batch_size 32 --max_len 30000
- Inferência de síntese de fala com amostra zero:
python tts_demo.py -h
Gradio
- Execute-o no Colab:
Open in Colab
- Executado localmente:
apt-get install -y espeak espeak-data libespeak1 libespeak-dev apt-get install -y festival* apt-get install -y build-essential apt-get install -y flac libasound2-dev libsndfile1-dev vorbis-tools apt-get install -y libxml2-dev libxslt-dev zlib1g-dev pip install -r gradio_requirements.txt python gradio_app.py
problemas comuns
- Como melhorar a naturalidade da fala gerada? Certifique-se de que o conteúdo do texto de entrada seja consistente com o estilo e o contexto da amostra de fala de destino.
- O que devo fazer se o arquivo de voz gerado estiver com ruído? Tente usar amostras de fala de maior qualidade ou ajustar os parâmetros do modelo.































 Português do Brasil
Português do Brasil				 简体中文
简体中文					           English
English					           日本語
日本語					           Deutsch
Deutsch