Project · Text-to-speech · October 2026
Expressive Turkish text-to-speech that laughs, sighs and whispers on cue.

01
laughs, then keeps talking in the same voice
sighs or takes a deep breath, then continues
whispers the following text
Kahveyi yine dökmüşüm. [gül] Bugün benim günüm değil galiba.
Sabahtan beri bu raporla uğraşıyorum. [iç çek] Bitmek bilmiyor.
[fısılda] Kimseye söyleme ama bu akşam sana bir sürprizim var.
[gül] Bunu gerçekten sen mi yaptın? Harika olmuş!
[gül] Tamam, tamam, kabul ediyorum, haklıydın. [iç çek] Ama bir dahaki sefere beni de dinle.
Every sample is an automatic output, with no manual editing.
02
Open Turkish text-to-speech reads correctly, but like a news anchor: no laughter, no sighs, no whispers. Open models that can laugh speak English only, and the services that do both are closed, paid cloud APIs.
The root cause is data: there is no open, licensed dataset of expressive Turkish speech to train on. Nefes 0.5 sidesteps that gap without training anything. It borrows a real laugh, sigh or whisper from an English expressive model and lets a Turkish-capable model continue from it, in one consistent voice, exactly where you put the tag.
03
Training-free: no model weights are trained or changed. Nefes steers open models at inference time.
01Text with tags
Write a tag where the emotion should happen.
02Segments
The text is split at each tag; a tag becomes a short real clip from an 18-clip nonverbal bank, generated once with Maya1 and approved by ear.
03Chained generation ×6
VoxCPM2 continues in Turkish from the audio right before it, so the laugh is real and the voice stays the same. A lookahead cut keeps natural intonation before each tag.
04Rerank
Six candidates are scored for voice similarity (WavLM-SV), intelligibility (Whisper) and naturalness (a small preference model trained on my own listening ratings).
05Best take
The highest-scoring candidate is returned: 48 kHz mono audio.
04
Measured on 10 unseen sentences never used for tuning, default settings, best of 6 picked automatically, no cherry-picking. WER covers the whole utterance, so a laugh Whisper transcribes as a word counts as an error. Weakest case: a whisper starting mid-sentence (50% WER).
05
06
$ pip install git+https://huggingface.co/alicangunduz/nefes-0.5$ nefes "Kahveyi yine dökmüşüm. [gül] Bugün benim günüm değil galiba." -o out.wav
Needs: NVIDIA GPU with ~16 GB VRAM, Python ≥ 3.10
07
Nefes 0.5preview
Training-free system
Nefes 1upcoming
Open-weight model distilled from Nefes 0.5: one pass, no extra models
Nefes 2+planned
More emotions and voices
08
Responsible useThe Nefes voice is synthetic, designed with Maya1, and belongs to no real person. No recorded human speech is included, and there is no voice cloning, by design.