Skip to content

Text-to-speech models

The three Chorus models that synthesize speech, and where Symphony fits instead.

Three models synthesize speech from text. They share a request shape and differ in where the voice comes from.

ModelmodelVoice source
Chorus Voiceschorus-voicesNine built-in speakers
Chorus Clonechorus-clone47 shipped voices, or one cloned from reference audio you send
Chorus Designchorus-designA voice synthesized from a written description

Voices has the request shape for each.

The chorus alias

chorus routes to the preset and cloning models, so GET /v1/audio/voices?model=chorus returns all 56 of their voices at once. It does not appear in GET /v1/models, where the three models are listed separately; send chorus anyway rather than checking it against that catalog. The model field is case-insensitive.

Voice design is the exception: set "model": "chorus-design" explicitly. Sent to chorus with instructions and no voice, a request synthesizes the default speaker and the description designs nothing.

Parameters

ParameterNotes
inputThe text to speak. Required.
voiceA preset id. Non-preset ids are rejected.
instructionsStyle guidance on a preset, or the voice description on chorus-design.
response_formatmp3, opus, flac, wav, or pcm.
speedSpeaking rate multiplier, 0.25 to 4.0.
languageOutput language. See supported languages.
stream_formatsse or audio. Omit to buffer the whole clip.
ref_audioInline data: URL of reference audio, on chorus-clone.
ref_textTranscript of the reference audio.
cache_saltPrefix-cache isolation key, overwritten when ref_audio is present.

REST has types, requiredness, and error codes.

Symphony

Symphony is not available on /v1/audio/speech; the endpoint returns a 400 pointing at /v1/chat/completions. Use /v1/chat/completions for its text turns, or a session at wss://api.sprag.ai/v1/realtime?model=symphony for its speech, covered under realtime.

The model catalog carries the live list with per-model detail, and pricing has the current rates.