cosyvoice: verify /api/tts streaming accepts cloned voice_ids #1
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The current stacks/cosyvoice/README.md documents streaming synthesis via
POST /api/ttswithstream=true, reusing the samevoice_idthat comes fromPOST /v1/voices/create. This assumption is based on the OpenAPI schema (which shows avoicefield on/api/tts) but was not empirically verified during the deploy session on 2026-04-23/24.What we know
/v1/audio/speechwith a clonedvoice_idworks (confirmed end-to-end with thegladosvoice)./api/ttshas avoice: stringfield and astream: boolean [default=False]field perGET /openapi.json.mode(zero_shot/instruct/sft),prompt_wav,prompt_text, andspk_idfields — the role ofvoicerelative to those is undocumented upstream./api/speakersreturns[]in this image (neosun/cosyvoice:v1.3.2), so thespk_idpath is not usable.Risk
If
/api/ttstreats thevoicefield differently from/v1/audio/speech(e.g., expects anspk_idrather than a cloned-voice id), the streaming curl in the README will fail with a 400/500 the first time someone tries it.What to do
glados). Capture:prompt_wav=@ref.wav+prompt_text=<transcript>+mode=zero_shot), which is documented in the field-differences table and is the safer fallback.Context
http://10.100.79.3:8190(WG-only, irv-ml1)stacks/cosyvoice/in this reponeosun/cosyvoice:v1.3.2(Fun-CosyVoice3-0.5B-2512)Verified end-to-end against the live deploy on irv-ml1 (voice id
9053c5a52f80):Cloned voice_ids from /v1/voices/create work uniformly across all four paths. The streaming recipe in the README's smoke test is correct as written.