whatmodel.sh / tts / SpeechT5 TTS
SpeechT5 TTS
↗ share
+ contribute
SpeechT5 TTS is an open-weights text-to-speech model from Microsoft, released February 2023. Licence: mit.
Catalogue identity notes
microsoft/speecht5_tts with microsoft/speecht5_hifigan, conditioned on a speaker x-vector (speechbrain/spkrec-xvect-voxceleb) from the reference clip.
Score within the Vapi Humanness · Bradley–Terry rating, 2026-09-25 snapshot comparison set only.
$ how it compares
The text-to-speech models ranked either side of SpeechT5 TTS, out of 148 with a score, then more from Microsoft.
| # | model | score | where | ||
|---|---|---|---|---|---|
| 138 | 26±3 | local | |||
| 139 | 25±3 | local | |||
| 140 | 23±3 | local | |||
| 141 | 20±3 | local | |||
| 142 | 19±6 | comparison only | |||
| more from Microsoft | |||||
| 70 | 53±6 | local | |||
| 81 | 50±16 | comparison only | |||
| 82 | 50±16 | comparison only | |||
see all text-to-speech models · find the ones that fit your machine
$ what it's good at
other tests3 not in a task · 95% of its score
| test | result | vs the others in its run | counts |
|---|---|---|---|
| TTSDS2 listening test · speaker-similarity MOS (4 English domains) | 2.63 / 5 ✎ | ▅·█▅▅·█▃▃▅·▅ beats 4/17 | 82% |
| TTSDS2 listening test · naturalness MOS (4 English domains) | 1.98 / 5 ✎ | ▅··▃▅··▅█▅██ beats 0/17 | 7.1% |
| TTSDS2 multilingual benchmark · English overall (YouTube, 2025 round) | 82.6% ✎ | ▂▂█·▂·█▆▂·▄▂ beats 5/17 | 6.4% |
$ where to run it
Other ways to run it
- Run it as published · needs ~0.65 GB · from huggingface.co/microsoft (official)
uv run --with transformers --with sentencepiece --with 'datasets[audio]<4' --with soundfile --with torch python -c "from transformers import SpeechT5Processor, SpeechT5ForTextToSpeech, SpeechT5HifiGan; from datasets import load_dataset; import torch; import soundfile as sf; processor = SpeechT5Processor.from_pretrained('microsoft/speecht5_tts'); model = SpeechT5ForTextToSpeech.from_pretrained('microsoft/speecht5_tts'); vocoder = SpeechT5HifiGan.from_pretrained('microsoft/speecht5_hifigan'); inputs = processor(text='Hello, my dog is cute.', return_tensors='pt'); embeddings_dataset = load_dataset('Matthijs/cmu-arctic-xvectors', split='validation'); speaker_embeddings = torch.tensor(embeddings_dataset[7306]['xvector']).unsqueeze(0); speech = model.generate_speech(inputs['input_ids'], speaker_embeddings, vocoder=vocoder); sf.write('speech.wav', speech.numpy(), samplerate=16000)"
Official weights and documentation: huggingface.co/microsoft ↗
$ how the score was worked out · TTSDS2 listening test results… 89%, TTSDS2 multilingual benchmark… 6%
Each result implies a score on its own, after adjusting for how hard its test is and who ran it. The score is their weighted average, with a small pull toward the middle for thinly tested models. Each test's weight is its counts column above; here it's added up by who ran the tests. How it works
| source | results | share of the score |
|---|---|---|
| 2 | 89% | |
| 1 | 6% | |
| prior · pull toward the middle | 5% | |
| weighted average | = 23.3 |
$ improve this page
Use a short GitHub form or edit the data through a pull request. Every number needs a source; here's which ones we can use.
data updated · sources and licences · json