Fork do Qwen3-TTS totalmente otimizado para Apple Silicon Mac
Motor duplo (MLX + PyTorch) para uma experiência TTS nativa no Mac
English | 日本語 | 中文 | 한국어 | Русский | Español | Italiano | Deutsch | Français | **Português**
Se este projeto foi útil para você, considere dar uma estrela — ajuda muito!
| Recurso | Qwen3-TTS Oficial | Este Projeto |
|---|---|---|
| Otimização Apple Silicon | Limitada | Suporte completo |
| Inferência nativa MLX | Não | Sim (quantização 8bit/4bit) |
| PyTorch MPS | Configuração manual necessária | Troca automática |
| Interface gráfica | Nenhuma | Web UI em 10 idiomas |
| Clonagem de voz | Apenas CLI | Web UI + transcrição automática Whisper |
| Gerenciamento de memória | Nenhum | Otimizado para Unified Memory |
| Instalação | Complexa | Um único comando |
-
Arquitetura de motor duplo
- MLX: Nativo para Apple Silicon, quantização 8bit/4bit para velocidade e eficiência de memória
- PyTorch: Troca automática para Voice Clone (execução em CPU float32)
-
Otimização automática baseada em tarefas
- CustomVoice -> MLX preferido (rápido)
- VoiceDesign -> MLX preferido (rápido)
- VoiceClone -> PyTorch CPU (requer float32)
-
Web UI em 10 idiomas
- Interface intuitiva baseada em Gradio
- Troque o idioma no menu suspenso no topo
| Item | Mínimo | Recomendado |
|---|---|---|
| Chip | Apple Silicon (M1) | M2 Pro / M3+ |
| RAM | 16GB | 32GB+ |
| SO | macOS 14 Sonoma | macOS 15 Sequoia |
| Python | 3.10 | 3.11 |
| Armazenamento livre | 10GB | 20GB+ |
Procurando a versão Windows? Confira o Qwen3-TTS-JP — versão nativa para Windows com suporte a GPU NVIDIA (testado com RTX 5090).
git clone https://github.com/hiroki-abe-58/Qwen3-TTS-Mac-GeneLab.git
cd Qwen3-TTS-Mac-GeneLabchmod +x setup_mac.sh
./setup_mac.shOpção A: Duplo clique (recomendado)
Dê um duplo clique em run.command no Finder para iniciar automaticamente no Terminal.
Opção B: Pelo terminal
./run.shSe a porta já estiver em uso, uma porta disponível é detectada automaticamente.
Abra http://localhost:7860 (verifique a saída do terminal se a porta foi alterada)
Gere fala com 9 locutores predefinidos. Suporta controle de emoções e 10 idiomas.
Descreva as características da voz em texto para gerar uma fala correspondente.
Clone uma voz a partir de apenas 3 segundos de áudio de referência com transcrição automática Whisper.
Nota: Voice Clone requer o modelo Base (~3.8GB), baixado automaticamente no primeiro uso.
Seleção de motor (AUTO/MLX/PyTorch), monitor de memória, gerenciamento de modelos.
from mac import DualEngine, TaskType
import soundfile as sf
engine = DualEngine()
result = engine.generate(
text="Hello, this is a voice synthesis demo.",
task_type=TaskType.CUSTOM_VOICE,
language="English",
speaker="Vivian",
)
sf.write("output.wav", result.audio, result.sample_rate)Qwen3-TTS-Mac-GeneLab/
├── setup_mac.sh # Script de configuração
├── run.sh # Script de inicialização (terminal)
├── run.command # Arquivo de inicialização (duplo clique)
├── pyproject.toml # Configuração do projeto
├── requirements-mac.txt # Dependências para Mac
├── mac/ # Código específico para Mac
│ ├── engine.py # Gerenciador de motor duplo
│ ├── device_utils.py # Detecção de dispositivo
│ └── whisper_transcriber.py
├── ui/ # Gradio Web UI
│ ├── app.py # Aplicação principal
│ ├── i18n_utils.py # Utilitário i18n
│ ├── components/ # Componentes das abas
│ └── i18n/ # 10 arquivos de idioma
├── qwen_tts/ # Núcleo TTS (upstream)
└── docs/ # README multilíngue
| Erro | Causa | Solução |
|---|---|---|
conda not found |
Miniforge não instalado | Execute ./setup_mac.sh |
No space left on device |
Espaço em disco insuficiente | Certifique-se de ter 10GB+ livres |
RuntimeError: MPS backend |
Operação MPS não suportada | Defina PYTORCH_ENABLE_MPS_FALLBACK=1 |
Out of memory |
Memória insuficiente | Feche outros aplicativos ou use modelos quantizados |
Issues e Pull Requests são bem-vindos!