Spaces:
Running
Running
File size: 3,235 Bytes
c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 c325199 4415545 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | # Text-to-speech (TTS)
AgentBridge speaks with a local neural TTS engine. **Kokoro is the engine: it works on
every machine, immediately, with nothing to install.** The engine catalog is designed to
grow β a future engine registers in `TtsEngineSupport` (AIOrchestrator) and is then
selectable through the same `/ttsengine` command and `appsettings` preference.
## Engines at a glance
| Engine | Works out of the box | Model | Speed | When to use |
|---|---|---|---|---|
| **Kokoro** (default) | **Yes β everywhere** (Windows, Linux, macOS; any CPU; no drivers, no accounts) | ~325 MB, **included in the archive** | realtime on a normal CPU | The default β the voice for the chat, the phone and the podcast tool |
The engine is selected through the same preference every time:
- **`/ttsengine`** in the terminal UI β shows the known engines and sets the engine.
- **`appsettings.json`** β `"Tts": { "Engine": "kokoro" }` (the `/ttsengine` command persists
here). A value outside the catalog falls back to Kokoro and logs why, so a stale setting
never breaks the TTS.
> The catalog (`TtsEngineSupport` in Graphene.AIOrchestrator) currently registers Kokoro
> only. Future engines add their name + availability gate there and inherit the selection
> path (host config, `/ttsengine`, `PODCAST_TTS_ENGINE` for the plugins) without host changes.
## Kokoro β nothing to install
- The voices and the model (`kokoro.onnx`) are **shipped inside every archive** β no download,
no drivers, no accounts.
- Phonemization is fully managed (no espeak binaries), so it behaves identically on Windows,
Linux and macOS, x64 and ARM64.
- The terminal, the SIP phone bridge and the podcast tool all use this engine in-process.
- **GPU acceleration** (optional): when the CUDA Toolkit 12.x + cuDNN 9.x are installed, the
engine uses the CUDA execution provider automatically (the archive ships the provider
DLL). Without CUDA it runs on the CPU β realtime anyway on a normal machine. No manual
setup; the engine probes the standard install directories and sets the runtime PATH itself.
## Platform prerequisites
| Requirement | Needed for | How to install (official) |
|---|---|---|
| nothing | Kokoro (CPU) | β |
| NVIDIA driver | Kokoro GPU (CUDA, optional) | https://www.nvidia.com/drivers |
| CUDA Toolkit 12.x + cuDNN 9.x | Kokoro GPU (CUDA, optional) | https://developer.nvidia.com/cuda-downloads Β· https://developer.nvidia.com/cudnn |
Kokoro needs **no espeak, no native phonemizer, no audio stack**: it ships everything in
managed code and works on Windows, Linux and macOS out of the box. The `install.ps1`
one-liner detects a CUDA-capable GPU and **asks** whether to install the CUDA Toolkit +
cuDNN silently; answering no keeps everything working on the CPU, and the GPU is picked up
automatically at runtime if the toolkit is installed later.
## Troubleshooting
- **"kokoro.onnx not found"** β the model file is missing next to the executable; reinstall
from the latest release archive (it is included).
- **A podcast records with a wrong voice** β the tool resolves the voice from the episode
language; check the configured language (a missing voice falls back to the first loaded
one).
|