Introdução
Warning
Não nos responsabilizamos por qualquer uso ilegal do código-fonte. Consulte as leis locais sobre DMCA (Digital Millennium Copyright Act) e outras leis relevantes em sua região.
Este repositório de código e os modelos são distribuídos sob a licença CC-BY-NC-SA-4.0.
Requisitos
- Memória da GPU: 4GB (para inferência), 8GB (para ajuste fino)
- Sistema: Linux, Windows
Configuração do Windows
Aviso
Recomendamos fortemente que usuários que não sejam especialistas em Windows usem a GUI para executar o projeto. A GUI está aqui.
Usuários profissionais do Windows podem considerar o uso do WSL2 ou Docker para executar a base de código.
# Crie um ambiente virtual Python 3.10, também é possível usar o virtualenv
conda create -n fish-speech python=3.10
conda activate fish-speech
# Instale o pytorch
pip3 install torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 --index-url https://download.pytorch.org/whl/cu121
# Instale o fish-speech
pip3 install -e .
# (Ativar aceleração) Instalar triton-windows
pip install https://github.com/AnyaCoder/fish-speech/releases/download/v0.1.0/triton_windows-0.1.0-py3-none-any.whl
Configuração para Linux
Para mais detalhes, consulte pyproject.toml.
# Crie um ambiente virtual python 3.10, você também pode usar virtualenv
conda create -n fish-speech python=3.10
conda activate fish-speech
# Instale o pytorch
pip3 install torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1
# Para os Usuário do Ubuntu / Debian: Instale o sox + ffmpeg
apt install libsox-dev ffmpeg
# Para os Usuário do Ubuntu / Debian: Instale o pyaudio
apt install build-essential \
cmake \
libasound-dev \
portaudio19-dev \
libportaudio2 \
libportaudiocpp0
# Instale o fish-speech
pip3 install -e .[stable]
Configuração para macos
Se você quiser realizar inferências no MPS, adicione a flag --device mps
.
Para uma comparação das velocidades de inferência, consulte este PR.
Aviso
A opção compile
não é oficialmente suportada em dispositivos Apple Silicon, então não há garantia de que a velocidade de inferência irá melhorar.
# create a python 3.10 virtual environment, you can also use virtualenv
conda create -n fish-speech python=3.10
conda activate fish-speech
# install pytorch
pip install torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1
# install fish-speech
pip install -e .[stable]
Configuração do Docker
-
Instale o NVIDIA Container Toolkit:
Para usar a GPU com Docker para treinamento e inferência de modelos, você precisa instalar o NVIDIA Container Toolkit:
Para usuários Ubuntu:
# Adicione o repositório remoto curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \ && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \ sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list # Instale o nvidia-container-toolkit sudo apt-get update sudo apt-get install -y nvidia-container-toolkit # Reinicie o serviço Docker sudo systemctl restart docker
Para usuários de outras distribuições Linux, consulte o guia de instalação: NVIDIA Container Toolkit Install-guide.
-
Baixe e execute a imagem fish-speech
-
Baixe as dependências do modelo
Certifique-se de estar no terminal do contêiner Docker e, em seguida, baixe os modelos necessários
vqgan
ellama
do nosso repositório HuggingFace. -
Configure as variáveis de ambiente e acesse a WebUI
No terminal do contêiner Docker, digite
export GRADIO_SERVER_NAME="0.0.0.0"
para permitir o acesso externo ao serviço gradio dentro do Docker. Em seguida, no terminal do contêiner Docker, digitepython tools/run_webui.py
para iniciar o serviço WebUI.Se estiver usando WSL ou MacOS, acesse http://localhost:7860 para abrir a interface WebUI.
Se estiver implantando em um servidor, substitua localhost pelo IP do seu servidor.
Histórico de Alterações
- 12/03/2024: Atualização do Fish-Speech para 1.5, com suporte para mais idiomas, sendo considerado SOTA (estado da arte) no campo de código aberto.
- 10/09/2024: Fish-Speech atualizado para a versão 1.4, aumentado o tamanho do conjunto de dados, quantizer n_groups 4 -> 8.
- 02/07/2024: Fish-Speech atualizado para a versão 1.2, removido o Decodificador VITS e aprimorado consideravelmente a capacidade de zero-shot.
- 10/05/2024: Fish-Speech atualizado para a versão 1.1, implementado o decodificador VITS para reduzir a WER e melhorar a similaridade de timbre.
- 22/04/2024: Finalizada a versão 1.0 do Fish-Speech, modificados significativamente os modelos VQGAN e LLAMA.
- 28/12/2023: Adicionado suporte para ajuste fino
lora
. - 27/12/2023: Adicionado suporte para
gradient checkpointing
,causual sampling
eflash-attn
. - 19/12/2023: Atualizada a interface web e a API HTTP.
- 18/12/2023: Atualizada a documentação de ajuste fino e exemplos relacionados.
- 17/12/2023: Atualizado o modelo
text2semantic
, suportando o modo sem fonemas. - 13/12/2023: Versão beta lançada, incluindo o modelo VQGAN e um modelo de linguagem baseado em LLAMA (suporte apenas a fonemas).