Files
Socialflow/qwen-tts/README.md
T
Claude fdace9d8d5 Qwen TTS : serveur GPU distant (Unraid) réglé dans les paramètres
- qwen-tts : GPU NVIDIA détecté automatiquement (bfloat16), image CUDA 12.8
  (RTX 50xx comprises) via TORCH_VARIANT=cu128, docker-compose.gpu.yml
  dédié (clé obligatoire, choix de la carte) et guide d'installation Unraid.
- Paramètres → « Qwen TTS (voix locale) » : adresse + clé du service, test
  de connexion (modèle et carte graphique affichés), stockés en base
  (app_config.qwen_tts_url / qwen_tts_api_key) et transmis à ffmpeg-api à
  chaque voix ; QWEN_TTS_URL reste un défaut.
- Le service qwen-tts CPU du docker-compose principal devient optionnel
  (profil qwen-local).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Upu97wMmsRkBoj6iVM4rH6
2026-09-29 09:57:32 +00:00

56 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Qwen TTS : voix locale sur un serveur GPU (ex. Unraid)
Service de synthèse vocale Qwen3-TTS appelé par SocialFlow (via ffmpeg-api).
Sur une carte graphique NVIDIA, le gros modèle 1.7B (ton et émotion pilotés)
génère une voix bien plus vite qu'en temps réel ; sur CPU, il est 5 à 7 fois plus lent.
## Installation sur Unraid
1. **Pilote NVIDIA** : Apps → installer le plugin **Nvidia Driver**, redémarrer,
puis vérifier dans un terminal : `nvidia-smi -L` (liste les cartes et leur numéro).
2. **Récupérer ce dossier** sur le serveur, par exemple :
```bash
cd /mnt/user/appdata
git clone https://github.com/R0m1k3/Socialflow.git
cd Socialflow/qwen-tts
```
3. **Choisir la carte et la clé** dans un fichier `.env` à côté de `docker-compose.gpu.yml` :
```bash
QWEN_TTS_API_KEY=une-longue-cle-secrete # openssl rand -hex 32
QWEN_TTS_GPU=0 # numéro ou UUID donné par nvidia-smi -L
# QWEN_TTS_PORT=8001
```
Une RTX 3060 12 Go suffit largement (le modèle 1.7B occupe ~5–6 Go) : autant
la dédier à la voix et garder la plus grosse carte pour le reste.
4. **Construire et lancer** (le premier build télécharge les modèles, quelques Go) :
```bash
docker compose -f docker-compose.gpu.yml up -d --build
docker logs -f socialflow-qwen-tts # « Modèle … chargé sur NVIDIA GeForce … »
```
5. **Dans SocialFlow** : Paramètres → **Qwen TTS (voix locale)** → adresse
`http://IP-DE-L-UNRAID:8001` + la clé → **Tester la connexion** → **Enregistrer**.
Le moteur « Qwen (locale) » devient disponible dans le choix des voix.
## Sécurité
Le service ne doit pas être exposé sur Internet. Si SocialFlow tourne sur un
autre réseau que l'Unraid, reliez les deux par **Tailscale** (ou WireGuard)
et utilisez l'adresse Tailscale de l'Unraid (`http://100.x.y.z:8001`).
La clé d'accès est obligatoire.
## Voix clonées (voix française native)
Déposez dans `voices/` un extrait de 5 à 15 s et sa transcription (voir
`voices/README.md`), puis `docker restart socialflow-qwen-tts`. Utilisez
uniquement des voix dont vous avez les droits.
## Réglages
| Variable | Défaut | Rôle |
| --- | --- | --- |
| `QWEN_TTS_MODEL` | `Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice` | Modèle des voix prédéfinies (build) |
| `QWEN_TTS_CLONE_MODEL` | `Qwen/Qwen3-TTS-12Hz-1.7B-Base` | Modèle de clonage, vide pour désactiver (build) |
| `QWEN_TTS_GPU` | `0` | Carte NVIDIA utilisée |
| `QWEN_TTS_DEVICE` | `auto` | `cuda:0`, `cpu`… (auto : GPU si disponible) |
| `QWEN_TTS_DTYPE` | `bfloat16` sur GPU, `float32` sur CPU | Précision du calcul |