Skip to main content
TTSKit supports 9 built-in voices and 10 languages through the Qwen3 TTS models.

Available Voices

The following voices are available:
Identifier: ryanEnum: .ryanDescription: Default male voice
Identifier: aidenEnum: .aidenDescription: Male voice
Identifier: ono-annaEnum: .onoAnnaDescription: Female voice
Identifier: soheeEnum: .soheeDescription: Female voice
Identifier: ericEnum: .ericDescription: Male voice
Identifier: dylanEnum: .dylanDescription: Male voice
Identifier: serenaEnum: .serenaDescription: Female voice
Identifier: vivianEnum: .vivianDescription: Female voice
Identifier: uncle-fuEnum: .uncleFuDescription: Male voice

Available Languages

TTSKit supports 10 languages:

Using Voices and Languages

String Identifiers

You can use string identifiers directly:
For type safety, use the Qwen3Speaker and Qwen3Language enums:

Default Voice and Language

If not specified, TTSKit uses the model’s defaults:
The defaults are:
  • Voice: ryan
  • Language: english

Voice Selection Examples

English

Japanese

Chinese

Korean

French

German

Spanish

Portuguese

Russian

Italian

Voice and Language Matching

All voices work with all languages, but some voices may sound more natural with certain languages based on the training data.
For the best results:
  • English: All voices work well
  • Chinese: uncleFu is recommended
  • Japanese: onoAnna is recommended
  • Korean: sohee is recommended
  • Other languages: Experiment with different voices

Prompt Cache by Voice/Language

TTSKit caches the prompt prefix separately for each voice/language combination:
The cache eliminates ~90% of prefill cost on subsequent calls with the same voice/language.

Qwen3Speaker Enum

The Qwen3Speaker enum provides type-safe voice selection:

Qwen3Language Enum

The Qwen3Language enum provides type-safe language selection:

Next Steps

Generation

Learn about generation options and chunking

Configuration

Configure compute units and model variants