Pocket TTS — Turkish

Turkish pocket-tts models, fine-tuned from the English 24-layer teacher and depth-distilled to 6 layers. Runs on CPU.

uvx pocket-tts generate --config hf://alperiox/pocket-tts-turkish/turkish_6l.yaml \
    --voice your_voice.wav --text "Merhaba, bugün nasılsınız?"

Models

layers file CPU realtime size
student (recommended) 6 turkish_6l.yaml 5.1x 398 MB
teacher 24 turkish_24l.yaml 1.6x 1.3 GB

Evaluation

60 held-out utterances, voices unseen in training. WER uses [mpoyraz/wav2vec2-xls-r-300m-cv7-turkish] (https://huggingface.co/mpoyraz/wav2vec2-xls-r-300m-cv7-turkish); UTMOS uses utmos_pytorch; SIM-o is WavLM-base-plus-sv cosine against the voice prompt.

WER UTMOS SIM-o
real audio (same utterances) 11.88% 3.934 —
teacher 24L 13.38% 3.863 0.964
student 6L 11.88% 3.733 0.955

Read WER against the 11.88% floor, not against zero. That is the recognizer's own error rate on the ground-truth recordings of these utterances, so the student is statistically indistinguishable from real speech by this measure; the remaining errors belong to the ASR.

The student beats the teacher on WER (the regularisation effect depth distillation is known for) and trails it on naturalness by 0.13 UTMOS, which is the documented cost of 6 layers versus 24. UTMOS 3.733 matches the pocket-tts README's own target for this model size.

Training

  • Data: alperiox/alania-tr-250h-24k — 262.5 h, 24 kHz, balanced on gender (50/50), duration bands, and a 20% cap on name/number drill content, from 2,647 synthetic voices.
  • Teacher: finetune_language.yaml from english_2026-04_24l, 30k steps. Stopped when validation reached the corpus ceiling (UTMOS within 0.07 of the training audio) rather than at a step count.
  • Student: depth_distill.yaml, 160k steps. WER improved 14.12% -> 11.88% during the cosine tail alone, well after distill_mse had flattened.
  • Hardware: one RTX PRO 6000 Blackwell. ~1.5 h teacher, ~4.4 h student.

Limitations

  • One speaking pace. The training corpus has almost no speech-rate variety (chars/sec IQR 15.1-17.6), so delivery is uniform. Time-stretch augmentation at the dataloader would fix this; it was not applied here.
  • Trained on synthetic speech (VoxCPM2 output), so it inherits that generator's character and cannot exceed its quality. Expect read-aloud delivery rather than conversational.
  • No İ or I in the training text — the source corpus wrote those lowercase. Apply Turkish-aware lowercasing to input text before synthesis.

Credits

pocket-tts by Kyutai (MIT). Training data derived from Alania Turkish Synthetic Speech by PatientDesk AI (CC BY 4.0).

Downloads last month
-
Safetensors
Model size
0.1B params
Tensor type
F32
·
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for alperiox/pocket-tts-turkish

Finetuned
(34)
this model

Dataset used to train alperiox/pocket-tts-turkish