From 56114309f5e7a3010d9e5c86367c5c1404f45648 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dieter=20Schl=C3=BCter?= Date: Thu, 18 Jun 2026 09:58:15 +0200 Subject: [PATCH] docs(deploy): Chatterbox-TTS-Dienst (GPU-Pinning per UUID, no_playback) ergaenzen Co-Authored-By: Claude Opus 4.8 --- deploy/README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/deploy/README.md b/deploy/README.md index e252038..fa8ed48 100644 --- a/deploy/README.md +++ b/deploy/README.md @@ -78,3 +78,19 @@ werden ohnehin durchgereicht. - `https://va.linix.de/` lädt die UI, links „Angemeldet als ". - Text-Chat funktioniert; **Mikrofon-Button** nimmt auf und spielt die Antwort ab. - Admins (`ADMIN_USERS`) sehen den Admin-Bereich (Nutzerliste). + +## 6. Chatterbox-TTS (optional, hohe Qualität + Voice-Cloning) +Eigener HTTP-Dienst (`~/chatterbox-tts-cli`, Conda-Env, GPU). systemd-User-Unit +`chatterbox-tts.service` (Port 9999). Wichtig: +- **GPU pinnen per UUID** (CUDA-Default-Order ist „fastest first" → Index trügt): + `Environment="CUDA_VISIBLE_DEVICES=GPU-"` (UUID via `nvidia-smi -L`). +- **`TTS_PRELOAD_LANG=de`** lädt das Modell beim Start (Warm-up). +- Der Dienst wird vom Gateway mit **`no_playback=true`** aufgerufen → er spielt **nicht** + lokal ab, sondern liefert nur die WAV (`tts_service.py` unterstützt das Flag). +```bash +systemctl --user enable --now chatterbox-tts +curl -s http://127.0.0.1:9999/health # {"status":"ok","device":"cuda:0"} +``` +Gateway: `tts_provider=chatterbox` (pro Request/Session) + `CHATTERBOX_VOICE` = Referenz-WAV. +> Chatterbox ist ~echtzeit-langsam → als Qualitäts-Option gedacht; `piper` bleibt der +> schnelle Default. Braucht ~3–4 GB GPU-Speicher.