Parler-TTS Mini v0.1 is a lightweight text-to-speech (TTS) model, trained on 10.5K hours of audio data, that can generate high-quality, natural sounding speech with features that can be controlled using a simple text prompt (e.g. gender, background noise, speaking rate, pitch and reverberation).
It is the first release model from the Parler-TTS project, which aims to provide the community with TTS training resources and dataset pre-processing code.
Usage
Using Parler-TTS is as simple as "bonjour". Simply install the library once:
You can then use the model with the following inference snippet:
py
1import torch
2from parler_tts import ParlerTTSForConditionalGeneration
3from transformers import AutoTokenizer
4import soundfile as sf
56device ="cuda:0"if torch.cuda.is_available()else"cpu"78model = ParlerTTSForConditionalGeneration.from_pretrained("parler-tts/parler_tts_mini_v0.1").to(device)9tokenizer = AutoTokenizer.from_pretrained("parler-tts/parler_tts_mini_v0.1")1011prompt ="Hey, how are you doing today?"12description ="A female speaker with a slightly low-pitched voice delivers her words quite expressively, in a very confined sounding environment with clear audio quality. She speaks very fast."1314input_ids = tokenizer(description, return_tensors="pt").input_ids.to(device)15prompt_input_ids = tokenizer(prompt, return_tensors="pt").input_ids.to(device)1617generation = model.generate(input_ids=input_ids, prompt_input_ids=prompt_input_ids)18audio_arr = generation.cpu().numpy().squeeze()19sf.write("parler_tts_out.wav", audio_arr, model.config.sampling_rate)
Tips:
Include the term "very clear audio" to generate the highest quality audio, and "very noisy audio" for high levels of background noise
Punctuation can be used to control the prosody of the generations, e.g. use commas to add small breaks in speech
The remaining speech features (gender, speaking rate, pitch and reverberation) can be controlled directly through the prompt
Contrarily to other TTS models, Parler-TTS is a fully open-source release. All of the datasets, pre-processing, training code and weights are released publicly under permissive license, enabling the community to build on our work and develop their own powerful TTS models.
Parler-TTS was released alongside:
If you found this repository useful, please consider citing this work and also the original Stability AI paper:
@misc{lacombe-etal-2024-parler-tts,
author = {Yoach Lacombe and Vaibhav Srivastav and Sanchit Gandhi},
title = {Parler-TTS},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/huggingface/parler-tts}}
}
@misc{lyth2024natural,
title={Natural language guidance of high-fidelity text-to-speech with synthetic annotations},
author={Dan Lyth and Simon King},
year={2024},
eprint={2402.01912},
archivePrefix={arXiv},
primaryClass={cs.SD}
}
License
This model is permissively licensed under the Apache 2.0 license.