Speech synthesis models
Speech synthesis models convert text to audio. Your choice of model determines the available voices, roles, synthesis settings, and APIs.
Yandex SpeechKit offers the general and livetts models. You can also use LiveTTS synthesis via the Realtime API.
Comparing models
|
Synthesis model |
Voices |
Interfaces |
Features |
|
|
Voices of the |
SpeechKit API v1 and API v3, Realtime API in compatible models |
Supports all synthesis settings available in the selected API version. The API uses the following options: |
|
|
SpeechKit API v3, Realtime API in models with LiveTTS synthesis |
Delivers natural speech pacing, intonation transitions, pauses, and emotional emphasis. Supports only the new LiveTTS voices. |
Voices of different speech synthesis models are incompatible. When using the Realtime API, select a voice from the family supported by the selected Realtime model.
LiveTTS in API v3
To use LiveTTS in the UtteranceSynthesis method, set the model field to livetts. Provide the voice and role separately in the hints.voice and hints.role parameters.
Here is an example:
{
"model": "livetts",
"text": "Hi there! What can I do for you?",
"hints": [
{
"voice": "sofia"
},
{
"role": "support"
}
],
"loudnessNormalizationType": "LUFS"
}
The following features are unavailable when using the livetts model in the UtteranceSynthesis method:
text_templateand text template variablesaudio_templateand audio template variablesspeedpitch_shiftdurationMAX_PEAKvolume normalization
To use LiveTTS in the StreamSynthesis method, set the options.model field to livetts. Provide the voice and role in the options.voice and options.role fields. speed, pitch_shift, and MAX_PEAK volume normalization are not available for LiveTTS.
The UtteranceSynthesisResponse and StreamSynthesisResponse responses for the livetts model do not include word_timings. The audio_chunk and text_chunk fields are never returned together within the same message. The message content type is specified in the chunk_type field.
For more information on method parameters and responses, see the UtteranceSynthesis and StreamSynthesis references.
LiveTTS in the Realtime API
In the Realtime API, LiveTTS synthesis is available for these two use cases:
- Speech synthesis from text without an LLM or audio input.
- Creating a voice agent that accepts audio or text inputs, processes requests using an LLM, and responds with synthesized speech.
The Realtime model is specified in the connection URI. The voice, role, and audio format are specified in the session.audio.output object, using the voice, role, and format fields respectively. Speech speed adjustment is not currently supported for Realtime models with LiveTTS synthesis; therefore, we recommend that you do not set speed.
To synthesize text without an LLM, follow the Speech synthesis using the Realtime API guide.