ajh-code's picture
Add files using upload-large-folder tool
c41750d verified
|
Raw
History Blame Contribute Delete
6.24 kB
## Requisitos
- Memória da GPU: 24GB (Inferência)
- Sistema: Linux, WSL
## Configuração do Sistema
O Fish Audio S2 suporta múltiplos métodos de instalação. Escolha o que melhor se adapta ao seu ambiente de desenvolvimento.
**Pré-requisitos**: Instale as dependências de sistema para processamento de áudio:
``` bash
apt install portaudio19-dev libsox-dev ffmpeg
```
### Conda
```bash
conda create -n fish-speech python=3.12
conda activate fish-speech
# Instalação com GPU (escolha a sua versão do CUDA: cu126, cu128, cu129)
pip install -e .[cu129]
# Instalação apenas para CPU
pip install -e .[cpu]
# Instalação padrão (usa o índice padrão do PyTorch)
pip install -e .
# Se encontrar um erro durante a instalação devido ao pyaudio, considere usar o seguinte comando:
# conda install pyaudio
# De seguida, execute pip install -e . novamente
```
### UV
O UV oferece uma resolução e instalação de dependências mais rápidas:
```bash
# Instalação com GPU (escolha a sua versão do CUDA: cu126, cu128, cu129)
uv sync --python 3.12 --extra cu129
# Instalação apenas para CPU
uv sync --python 3.12 --extra cpu
```
### Suporte para Intel Arc XPU
Para utilizadores de GPUs Intel Arc, instale o suporte XPU da seguinte forma:
```bash
conda create -n fish-speech python=3.12
conda activate fish-speech
# Instalar a biblioteca padrão C++ necessária
conda install libstdcxx -c conda-forge
# Instalar o PyTorch com suporte para Intel XPU
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/xpu
# Instalar o Fish Speech
pip install -e .
```
!!! warning
A opção `compile` não é suportada no Windows e macOS. Se desejar executar com compilação, terá de instalar o Triton manualmente.
## Configuração do Docker
O modelo da série Fish Audio S2 oferece múltiplas opções de implementação com Docker para satisfazer diferentes necessidades. Pode usar imagens pré-construídas do Docker Hub, construir localmente com o Docker Compose, ou construir manualmente imagens personalizadas.
Fornecemos imagens Docker para a WebUI e o servidor API, tanto para GPU (CUDA 12.6 por defeito) como para CPU. Pode usar as imagens pré-construídas do Docker Hub, construir localmente com o Docker Compose, ou construir manualmente imagens personalizadas. Se quiser construir localmente, siga as instruções abaixo. Se apenas quiser usar as imagens pré-construídas, siga diretamente o [guia de inferência](inference.md).
### Pré-requisitos
- Docker e Docker Compose instalados
- NVIDIA Docker runtime instalado (para suporte de GPU)
- Pelo menos 24GB de memória de GPU para inferência com CUDA
### Usar o Docker Compose
Para desenvolvimento ou personalização, pode usar o Docker Compose para construir e executar localmente:
```bash
# Primeiro, clone o repositório
git clone https://github.com/fishaudio/fish-speech.git
cd fish-speech
# Iniciar a WebUI com CUDA
docker compose --profile webui up
# Iniciar a WebUI com otimização de compilação
COMPILE=1 docker compose --profile webui up
# Iniciar o servidor API
docker compose --profile server up
# Iniciar o servidor API com otimização de compilação
COMPILE=1 docker compose --profile server up
# Implementação apenas com CPU
BACKEND=cpu docker compose --profile webui up
```
#### Variáveis de Ambiente para o Docker Compose
Pode personalizar a implementação usando variáveis de ambiente:
```bash
# Exemplo de ficheiro .env
BACKEND=cuda # ou cpu
COMPILE=1 # Ativar otimização de compilação
GRADIO_PORT=7860 # Porta da WebUI
API_PORT=8080 # Porta do servidor API
UV_VERSION=0.8.15 # Versão do gestor de pacotes UV
```
O comando irá construir a imagem e executar o contentor. Pode aceder à WebUI em `http://localhost:7860` e ao servidor API em `http://localhost:8080`.
### Construção Manual com Docker
Para utilizadores avançados que desejam personalizar o processo de construção:
```bash
# Construir imagem da WebUI com suporte CUDA
docker build \
--platform linux/amd64 \
-f docker/Dockerfile \
--build-arg BACKEND=cuda \
--build-arg CUDA_VER=12.6.0 \
--build-arg UV_EXTRA=cu126 \
--target webui \
-t fish-speech-webui:cuda .
# Construir imagem do servidor API com suporte CUDA
docker build \
--platform linux/amd64 \
-f docker/Dockerfile \
--build-arg BACKEND=cuda \
--build-arg CUDA_VER=12.6.0 \
--build-arg UV_EXTRA=cu126 \
--target server \
-t fish-speech-server:cuda .
# Construir imagem apenas para CPU (suporta multiplataforma)
docker build \
--platform linux/amd64,linux/arm64 \
-f docker/Dockerfile \
--build-arg BACKEND=cpu \
--target webui \
-t fish-speech-webui:cpu .
# Construir imagem de desenvolvimento
docker build \
--platform linux/amd64 \
-f docker/Dockerfile \
--build-arg BACKEND=cuda \
--target dev \
-t fish-speech-dev:cuda .
```
#### Argumentos de Construção
- `BACKEND`: `cuda` ou `cpu` (padrão: `cuda`)
- `CUDA_VER`: Versão do CUDA (padrão: `12.6.0`)
- `UV_EXTRA`: Pacote extra do UV para CUDA (padrão: `cu126`)
- `UBUNTU_VER`: Versão do Ubuntu (padrão: `24.04`)
- `PY_VER`: Versão do Python (padrão: `3.12`)
### Montagem de Volumes
Ambos os métodos requerem a montagem dos seguintes diretórios:
- `./checkpoints:/app/checkpoints` - Diretório dos pesos do modelo
- `./references:/app/references` - Diretório dos ficheiros de áudio de referência
### Variáveis de Ambiente
- `COMPILE=1` - Ativa o `torch.compile` para uma inferência mais rápida (cerca de 10x)
- `GRADIO_SERVER_NAME=0.0.0.0` - Anfitrião do servidor WebUI
- `GRADIO_SERVER_PORT=7860` - Porta do servidor WebUI
- `API_SERVER_NAME=0.0.0.0` - Anfitrião do servidor API
- `API_SERVER_PORT=8080` - Porta do servidor API
!!! note
Os contentores Docker esperam que os pesos do modelo sejam montados em `/app/checkpoints`. Certifique-se de que descarregou os pesos do modelo necessários antes de iniciar os contentores.
!!! warning
O suporte para GPU requer o NVIDIA Docker runtime. Para implementações apenas com CPU, remova a flag `--gpus all` e use as imagens de CPU.