html 🗨️ ChatterBox TTS - Clonagem de voz | Nullcore
Pule para o conteúdo principal

ChatterBox TTS - Clonagem de voz

aviso

Este tutorial é uma contribuição da comunidade e não é suportado pela equipe Nullcore. Serve apenas como uma demonstração sobre como personalizar o Nullcore para o seu caso de uso específico. Quer contribuir? Confira o tutorial contribuinte.

O que éChatterbox TTS API

API do ChatterBox TTSé um invólucro de API que permite a clonagem de voz e o texto em fala, servindo como um substituto direto para o terminal da API de fala do OpenAI.

Link to Resemble AI voice samples

Principais recursos

  • Clonagem de voz com tiro zero-apenas ~ 10 segundos de qualquer amostra de voz necessária
  • Supera o elevenlabs
  • Saídas marcadas a água para clonagem de voz responsável
  • Esboço de lhama de 0,5b
  • Gerenciamento de biblioteca de voz personalizada
  • Suporte de streaming para geração rápida
  • Gerenciamento avançado de memória e limpeza automática
  • Frontend opcional para facilitar o gerenciamento e o uso

Recomendações de hardware

  • Memória: 4 GB Mínimo, 8 GB+ Recomendado
  • GPU: CUDA (NVIDIA), Apple M-Series (MPS)
  • CPU: obras, mas mais lentas - a GPU recomendada para produção
informações

O ChatterBox pode usar uma grande memória e possui requisitos de hardware que podem ser mais altos do que você está acostumado com outras soluções TTS locais. Se você tiver problemas para atender aos requisitos, pode encontrarOpenAi Edge TTSouKokoro-Fastapipara ser substituições adequadas.

Start Início rápido

🐍 Usando Python

# Clonar o repositório
Git clone https://github.com/travisvn/chatterbox-tts-api
CD ChatterBox-tts-api

# Instale UV se você ainda não
Curl -lssf https://astral.sh/uv/install.sh | sh

# Instale dependências com UV (cria automaticamente VENV)
Sync Sync

# Copie e personalize variáveis ​​de ambiente
cp .env.example .env

# Inicie a API com FASTAPI
UV Run Uvicorn App.Main: App -Host 0.0.0.0 --Port 4123
# Ou use o script principal
uv run main.py

Por que UV?Os usuários relatam melhor compatibilidade comchatterbox-tts, 25-40% de instalações mais rápidas e resolução superior de dependência.Veja Guia de Migração →

Opção B: Usando PIP (tradicional)

# Clonar o repositório
Git clone https://github.com/travisvn/chatterbox-tts-api
CD ChatterBox-tts-api

# Ambiente de configuração - usando o Python 3.11
python -m venv .venv
fonte .venv/bin/ativação

# Instale dependências
pip install -r requisitos.txt

# Copie e personalize variáveis ​​de ambiente
cp .env.example .env

# Adicione sua amostra de voz (ou use o fornecido)
# cp your--voice.mp3 voz-sample.mp3

# Inicie a API com FASTAPI
Uvicorn App.Main: App -Host 0.0.0.0 --Port 4123
# Ou use o script principal
python main.py

Encontrou problemas? Verifique oseção de solução de problemas

# Clone e comece com o Docker Compose
Git clone https://github.com/travisvn/chatterbox-tts-api
CD ChatterBox-tts-api

# Use variáveis ​​de ambiente otimizado para docker
cp .env.example.docker .env # Caminhos específicos do docker, prontos para usar
# Ou: cp .env.example .env # Caminhos de desenvolvimento local, precisa de personalização

# Escolha o seu método de implantação:

# Apenas API (padrão)
Docker Compose -F Docker/Docker-compose.yml up -d # padrão (baseado em PIP)
Docker Compose -F Docker/Docker-compose.uv.yml up -d # UV -otimizado (compilações mais rápidas)
Docker Compose -F Docker/Docker-compose.gpu.yml up -d # padrão + gpu
Docker Compose -F Docker/Docker-compose.uv.gpu.yml up -d # uv + gpu (recomendado para usuários de GPU)
Docker Compose -f Docker/Docker-compose.cpu.yml up -d # cpu -somente

# API + Frontend (Adicionar -Profile Frontend a qualquer um dos itens acima)
Docker Compose -f Docker/Docker-compose.yml -Profile front -end up -d # Standard + Frontend
Docker Compose -F Docker/Docker-compose.gpu.yml -Profile front -end up -d # gpu + frontend
Docker Compose -F Docker/Docker-compose.uv.gpu.yml -Profile front -end Up -d # uv + gpu + frontend

# Assista aos logs enquanto inicializa (o primeiro uso do TTS leva mais tempo)
Docker Logs ChatterBox-tts-api -f

# Teste a API
Curl -x Post http: // localhost: 4123/v1/áudio/discurso \
-H "Tipo de Conteúdo: Aplicativo/JSON" \
-d '{"input": "Hello from chatterbox tts!"}' \
--output test.wav
🚀 Correndo com a interface do front -end

Este projeto inclui uma interface da web opcional baseada em ReacT. Use perfis de composição do Docker para optar facilmente dentro ou fora do front -end:

Com perfis de composição do Docker

# Somente API (comportamento padrão)
Docker Compos

# API + Frontend + UI da Web (com -Profile front -end)
Docker Compose -f Docker/Docker-compose.yml -Profile front -end up -d

# Ou use o script auxiliar conveniente para o FullStack:
python start.py FullStack

# O mesmo padrão funciona com todas as variantes de implantação:
Docker Compose -F Docker/Docker-compose.gpu.yml -Profile front -end up -d # gpu + frontend
Docker Compose -F Docker/Docker-compose.uv.yml -Profile front -end up -d # uv + frontend
Docker Compose -f Docker/Docker-compose.cpu.yml -Profile front -end up -d # cpu + frontend

Desenvolvimento local

Para o desenvolvimento local, você pode executar a API e o front -end separadamente:

# Inicie a API primeiro (siga as instruções anteriores)
# Então execute o front -end:
CD Frontend && npm install && npm run dev

Clique no link fornecido da Vite para acessar a interface do usuário da web.

Construir para produção

Construa o front -end para implantação de produção:

CD Frontend && NPM Install && NPM Run Build

Você pode acessá -lo diretamente do seu sistema de arquivos local em/dist/index.html

Configuração da porta

  • Apenas API: Acessível emhttp://localhost:4123(acesso direto da API)
  • Com front -end: Web ui emhttp://localhost:4321, Solicitações de API roteadas via proxy

O front -end usa um proxy reverso para rotear solicitações, portanto, ao correr com--profile frontend, a interface da web estará disponível emhttp://localhost:4321Enquanto a API corre atrás do proxy.

Configurando o webui aberto para usarChatterbox TTS API

Recomendamos a execução da interface do front -end para que você possa fazer upload dos arquivos de áudio para as vozes que deseja usar antes de definir as configurações do Nullcore. Se iniciado corretamente (veja o guia acima), você pode visitarhttp://localhost:4321Para acessar o front -end.

Para usar a API do ChatterBox TTS com o Nullcore, siga estas etapas:

  • Abra o painel de administrador e vá paraSettingsAudio
  • Defina suas configurações TTS para corresponder ao seguinte:
    • Motor de texto em fala: OpenAI
    • URL base da API:http://localhost:4123/v1# Como alternativa, tentehttp://host.docker.internal:4123/v1
    • Chave da API:none
    • Modelo TTS:tts-1outts-1-hd
    • TTS Voice: Nome da voz que você clonou (também pode incluir aliases, definidos no front -end)
    • Divisão de resposta:Paragraphs
informações

A chave da API padrão é a stringnone(Nenhuma chave de API necessária)

Screenshot of Nullcore Admin Settings for Audio adding the correct endpoints for this project

Por favor ⭐️ Estrela orepo no githubpara apoiar o desenvolvimento

Precisar de ajuda?

O ChatterBox pode ser um desafio para executar a primeira vez, e você pode experimentar diferentes opções de instalação se tiver problemas com um em particular.

Para mais informações sobrechatterbox-tts-api, você pode visitar oRepo Github