Views
No views yet
pip install phonemizer and sudo apt install espeak-ng.1from transformers import VitsTokenizer, VitsModel, set_seed
2from phonemizer import phonemize
3import re, torch
4
5def hungarian_cleaners(text):
6 text = text.lower()
7 text = re.sub(r'\bmr\.', 'mister', text)
8 text = re.sub(r'\bdr\.', 'doktor', text)
9 phonemes = phonemize(text, language='hu', backend='espeak',
10 strip=True, preserve_punctuation=True, with_stress=True)
11 return re.sub(r'\s+', ' ', phonemes)
12
13tokenizer = VitsTokenizer.from_pretrained("legekka/diana-hungarian-tts-vits-hf")
14model = VitsModel.from_pretrained("legekka/diana-hungarian-tts-vits-hf")
15
16text = "Helló! Diána hangja vagyok."
17cleaned = hungarian_cleaners(text)
18inputs = tokenizer(cleaned, return_tensors="pt", phonemize=False)
19
20set_seed(42)
21with torch.no_grad():
22 outputs = model(inputs["input_ids"])
23
24from scipy.io.wavfile import write
25write("output.wav", 22050, outputs.waveform[0].numpy())| Parameter | Value |
|---|---|
| Architecture | VITS |
| Sampling rate | 22050 Hz |
| Vocab size | 178 |
| Text cleaner | hungarian_cleaners (IPA via espeak-ng) |
| Training steps | 200K |
| GPU | RTX 3090 |
| License | CC-BY-4.0 |