feat(zonos): OpenAI-ish REST adapter for asset-engine routing

Upstream Zonos ships only Gradio + Python SDK — no REST surface — so
asset-engine (which routes a clean JSON POST to /v1/audio/speech) can't
target it directly. Add a thin FastAPI adapter (stacks/zonos/adapter/):
POST /v1/audio/speech in front of the Zonos SDK, built FROM local/zonos
to reuse torch/CUDA/SDK. Returns a JSON envelope {audio, audio_format,
seed} — the seed rides back so asset-engine regenerate/fork can pin it
(Zonos is the fleet's first genuinely seedable TTS). compose gains a
zonos-api service on 8201; .env.example gains the port + voices dir.
This commit is contained in:
vh
2026-05-31 13:59:10 -07:00
parent 71df6f7474
commit 81efa8da96
7 changed files with 283 additions and 10 deletions
+6
View File
@@ -0,0 +1,6 @@
# Adapter-only deps. torch / torchaudio / the zonos SDK already live in
# the base image (local/zonos) — do NOT reinstall them here or the CUDA
# build gets clobbered.
fastapi==0.115.6
uvicorn[standard]==0.34.0
soundfile==0.12.1