ukrainian-tts /
Yurii Paniv
Add link to Telegram bot
title: Ukrainian TTS
emoji: 🐌
colorFrom: blue
colorTo: yellow
sdk: gradio
sdk_version: 3.3
python_version: 3.9
pinned: false

Ukrainian TTS πŸ“’πŸ€–

Ukrainian TTS (text-to-speech) using Coqui TTS.

pytest Open In HFπŸ€— Space Open Bot

Link to online demo ->
Note: online demo saves user input to improve user experience, by using it you give your consent to analyze this data.
Link to source code and models ->
Telegram bot ->

Code is licensed under MIT License, models are under GNU GPL v3 License.

Support ❀️

If you like my work, please support ❀️ ->
For collaboration and question please contact me here:
You're welcome to join UA Speech Recognition and Synthesis community: Telegram

Examples πŸ€–

Mykyta (male):

Olena (female):

Dmytro (male):

Olha (female):

Lada (female):

How to use: πŸ“’

As a package:

  1. Install using command:
pip install git+
  1. Run a code snippet:
from ukrainian_tts.tts import TTS, Voices, Stress

tts = TTS(use_cuda=False)
with open("test.wav", mode="wb") as file:
    _, text = tts.tts("ΠŸΡ€ΠΈΠ²Ρ–Ρ‚", Voices.Dmytro.value, Stress.Model.value, file)
print("Accented text:", text)

Run manually:

Caution: this won't use normalizer and autostress like a web demo.

  1. pip install -r requirements.txt.
  2. Download model.pth and speakers.pth from "Releases" tab.
  3. Launch as one-time command:
tts --text "Text for TTS" \
    --model_path path/to/model.pth \
    --config_path path/to/config.json \
    --speaker_idx dmytro \
    --out_path folder/to/save/output.wav

or alternatively launch web server using:

tts-server --model_path path/to/model.pth \
    --config_path path/to/config.json

How to train: πŸ‹οΈ

  1. Refer to "Nervous beginner guide" in Coqui TTS docs.
  2. Instead of provided config.json use one from this repo.

Attribution 🀝