2.7 KiB
Speech — TTS and ASR endpoints
All on irv-ml1 unless noted. Every one is FastAPI: GET /openapi.json is the live
contract, /health is the liveness probe.
TTS
| service | endpoint | what it is |
|---|---|---|
| Breeze-TTS-2 | http://irv-ml1.nh3.internal:8204 |
clone + direction, fleet primary |
| TTS fleet gateway | http://irv-ml1.nh3.internal:8198 |
switchboard; engines sit behind it |
| Chatterbox Fast | http://irv-ml1.nh3.internal:8197 |
streaming, sub-second first-audio — the live-chat front end |
| dots.tts | http://irv-ml1.nh3.internal:8202 |
continuous-AR 48 kHz zero-shot clone |
| Kokoro | http://irv-ml1.nh3.internal:8193 |
low-latency English, streaming |
Breeze (/v1/voices, /v1/voices/detail, /v1/audio/speech, /v1/audio/design)
— /v1/voices matches dots byte-for-byte so they are drop-in swappable;
/v1/voices/detail exposes the registry with its directions visible.
Gateway (/v1/audio/speech, /v1/voices) is also reachable through LiteLLM as
the ext-tts alias. Voices: donut / emmie / glados / miranda / sindra plus emotion
variants, or the OpenAI aliases nova / alloy. ⚠ An unknown voice 404s and can trip
the router cooldown — list voices first.
ASR
| service | endpoint | what it is |
|---|---|---|
| Parakeet (NeMo) | http://10.251.50.54:8300 |
Parakeet-unified-en, NeMo torch bf16, fv-ml1 GPU 0 — fleet primary. OpenAI-compatible /v1/audio/transcriptions, plus /transcribe; liveness is /healthz (not /health) |
| via LiteLLM | http://10.250.50.70:4000/v1 |
aliases ext-stt and whisper-1 both route to the Parakeet seat above |
| VibeVoice streaming ASR 1.5B | http://10.100.50.80:8031 |
audio.cpp on nh3-ml1, streaming; built for the dataset foundry, direct (no gateway) |
| Scriberr | http://10.251.50.54:8080 (https://scriberr.nh3.phasefinal.com) |
transcription + diarization UI, fv-ml1 |
Retired, verified 2026-10-17: Speaches (irv-ml1 :8204 is now Breeze-TTS-2), the sherpa-onnx parakeet container
on fv-ml1 (stopped; NeMo replaced it), and the asset-engine parakeet entry at 10.100.79.3:8765 (the dead wg0
lifeline address). Homepage may still show the first two from stale labels.
Traps
- OmniVoice-style diffusion TTS has a TTFA floor — roughly fixed per-call cost, ~0.7 s first-audio, real RTF 2.8–5.6× (not the advertised 40×). Chatterbox-fast stays the live-chat front end for that reason.
- Never expose repetition-penalty dials on Zonos-lineage engines — it is a silence footgun.
- Several engines listed on Homepage under AI - Dormant are down by design and take
~90 s to respin. Check
/healthbefore assuming a service is broken.