A versão mais recente do projeto Bert-VITS2, a v2.0.2, introduziu melhorias significativas, corrigindo bugs críticos da versão anterior e refinando o modelo base. Esta atualização, a mais importante desde a v1.1.1, agora suporta treinamento e síntese multilíngue, mantendo a compatibilidade retroativa para modelos mais antigos. Este guia demonstrará como realizar inferência local utilizando modelos de voz de personagens de jogos, especificamente Raiden Shogun e Yae Miko, com a nova versão.
Para detalhes completos sobre as alterações, consulte as notas de lançamento oficiais:
https://github.com/fishaudio/Bert-VITS2/releases
Configuração do Modelo
Primeiro, clone o código v2.0.2 do repositório oficial:
git clone https://github.com/fishaudio/Bert-VITS2.git
Navegue até o diretório do projeto e crie uma pasta Data:
cd Bert-VITS2
mkdir Data
Esta pasta abrigará os arquivos dos modelos de voz.
Em seguida, baixe os modelos de voz para Raiden Shogun e Yae Miko:
[Link de download - Inserir link aqui]
Estes modelos foram treinados com versões anteriores do Bert-VITS2. Por questões de brevidade, o processo de treinamento não será detalhado aqui.
É importante notar que os diretórios onde os modelos são armazenados não devem conter caracteres chineses. Recomenda-se usar nomes em inglês. A estrutura de diretórios esperada é a seguinte:
E:\work\Bert-VITS2-v202_launch_yingAndBachong\Data>tree/F
Folder PATH listing for volume myssd
Volume serial number is 7CE3-15AE
E:.
├───bachong
│ │ config.json
│ │
│ └───models
│ G_47700.pth
│
└───ying
│ config.json
│ config.yml
│
├───custom_character_voice
├───filelists
└───models
G_4600.pth
Os arquivos .pth contêm o modelo em si, enquanto os arquivos config.json (ou config.yml) contêm as configurações do modelo.
Você também pode usar modelos treinados anteriormente por você, mas é crucial especificar a versão do Bert-VITS2 utilizada durante o treinamento. Por exemplo, se o seu modelo foi treinado com a versão v1.1.1, você deve indicar isso no arquivo de configuração (config.json ou config.yml) adicionando a linha:
"version": "1.1.1"
Se você não especificar a versão, o sistema assumirá a v2.0 por padrão, o que pode levar a resultados de voz anômalos se houver incompatibilidade.
Após configurar a versão, instale as dependências necessárias:
pip install -r requirements.txt
Com isso, a configuração do modelo estará completa.
Inferência Local
Após a instalação das dependências, execute o seguinte comando no diretório raiz do projeto para iniciar o servidor de inferência:
python3 server_fastapi.py
A saída do console indicará que o servidor foi iniciado com sucesso, geralmente exibindo o endereço da documentação da API (ex: http://127.0.0.1:7860/docs). O Bert-VITS2 utiliza FastAPI para sua API de inferência.
Acesse o endereço local fornecido (ex: http://127.0.0.1:7860/) em seu navegador. A interface permitirá carregar múltiplos modelos simultaneamente.
Na interface, você pode configurar parâmetros como o dispositivo de inferência (GPU/CPU) e o idioma. Por padrão, ele utiliza CUDA (GPU) e o idioma chinês. Se você não possuir uma GPU NVIDIA, pode selecionar a opção de CPU para inferência.
Insira o texto que deseja sintetizar na caixa de texto apropriada. Uma característica notável do Bert-VITS2 é a sua capacidade de lidar com textos longos sem erros. Ativando a opção de "corte automático" (auto-splitting), o sistema divide o texto com base na pontuação, reduzindo o número de tokens por inferência e evitando erros de limite de processamento.
A nova versão também suporta a inferência simultânea de múltiplos modelos. Basta selecionar as opções de modelo desejadas e baixar os áudios gerados.
Pacote de Instalação Única
Para facilitar o uso, foi criado um pacote de instalação única (one-click installer) que embuti o projeto Bert-VITS2 com Python 3.10. Após descompactar o arquivo, basta executar o launch.bat para ter um ambiente pronto para inferência.
[Link para o pacote de instalação única - Inserir link aqui]
Sinta-se à vontade para baixar e experimentar.