- 100 milyon parametreli Pocket TTS, ses klonlama özelliğine sahip hafif bir metinden konuşmaya dönüştürme modeli olup, sıradan dizüstü bilgisayar CPU’larında bile gerçek zamanlı çalışabiliyor
- Mevcut büyük LLM tabanlı TTS’ler (1 milyardan fazla parametre) ile küçük Kokoro TTS (82 milyon parametre) arasındaki performans farkını daraltırken, yüksek kalite ve verimliliği aynı anda sağlıyor
- Yalnızca yaklaşık 5 saniyelik bir ses örneğiyle, konuşmacının ses rengi, duygu, tonlama ve akustik koşullarını doğru biçimde kopyalıyor
- Continuous Audio Language Model tabanlı mimariyi kullanarak ayrık token’lar yerine sürekli latent vektörleri doğrudan tahmin ediyor; böylece kalite kaybı olmadan model boyutunu küçültüyor
- MIT lisanslı açık kaynak olarak yayımlanan model, CPU ortamlarında da yüksek kaliteli konuşma sentezini mümkün kılan hafif TTS teknolojisi için yeni bir ölçüt sunuyor
Pocket TTS’ye Genel Bakış
- Pocket TTS, 100 milyon parametreli bir metinden konuşmaya dönüştürme modeli ve ses klonlama (voice cloning) özelliğini destekliyor
- Dizüstü bilgisayar CPU’larında bile gerçek zamanlı çalışabiliyor
uvx pocket-tts serve veya uvx pocket-tts generate komutlarıyla yerelde çalıştırılabiliyor
- Kyutai tarafından geliştirildi ve MIT lisansı ile açık kaynak olarak yayımlandı
- Eğitim verisi olarak yalnızca herkese açık İngilizce konuşma veri setleri kullanıldı
- Ek özel verilerle genişletilebilme olasılığından da söz ediliyor
Mevcut TTS Modelleriyle Karşılaştırma
- Güncel TTS teknolojisi ikiye ayrılıyor
- Büyük LLM tabanlı modeller: ör. Kyutai TTS 1.6B (yaklaşık 1,6 milyar parametre)
- Çeşitli sesleri, duyguları ve akustik koşulları modelleyebiliyor ancak GPU gerektiriyor
- Küçük, özelleşmiş modeller: ör. Kokoro TTS (82 milyon parametre)
- Sabit bir ses seti ve elle tasarlanmış pipeline kullanarak verimli çalışıyor ancak esnekliği sınırlı
- Pocket TTS bu iki yaklaşımın orta noktasında konumlanıyor ve CPU’da da yüksek kaliteli konuşma sentezi sunabiliyor
Performans Değerlendirmesi
- Değerlendirme Librispeech test-clean setiyle yapıldı
- Ses girdileri, 24kHz kalite sağlamak için Adobe Enhance Speech ile temizlendi
- Karşılaştırılan modeller: F5-TTS, DSM, Chatterbox Turbo, Kokoro TTS
- Değerlendirme metrikleri:
- Word Error Rate (WER)
- Ses kalitesi (ELO)
- Konuşmacı benzerliği (ELO)
- Sonuç özeti:
- Pocket TTS, 1.84 WER ile en düşük hata oranına sahip
- Ses kalitesi, F5-TTS ve DSM’den daha iyi
- Konuşmacı benzerliği, referans sesle eşdeğer düzeyde
- CPU’da gerçek zamandan hızlı çalışabilen tek model
| Model |
Parametre sayısı |
WER ↓ |
Ses kalitesi (ELO) ↑ |
Konuşmacı benzerliği (ELO) ↑ |
CPU’da gerçek zamanlı çalışma |
| F5-TTS |
336M |
2.21 |
1949 ± 27 |
1946 ± 26 |
✗ |
| Kyutai TTS 1.6B |
750M |
1.84 |
1959 ± 25 |
2037 ± 21 |
✗ |
| Chatterbox Turbo |
350M |
3.24 |
2055 ± 23 |
2012 ± 22 |
✗ |
| Kokoro |
82M |
1.93 |
Ses klonlama yok |
Ses klonlama yok |
✓ |
| Pocket TTS |
100M |
1.84 |
2016 ± 25 |
1898 ± 26 |
✓ |
- Intel Core Ultra 7 165H ve Apple M3 CPU’larında yapılan testlerde, yalnızca Pocket TTS ile Kokoro gerçek zamanlı sentez yapabildi
Mimari
- Pocket TTS, Continuous Audio Language Model araştırmasına dayanarak tasarlandı
- Geleneksel yaklaşım ayrık ses token’larını tahmin ederken, Pocket TTS sürekli latent vektörleri doğrudan tahmin ediyor
- Bu sayede RQ-transformer darboğazı ortadan kaldırılıyor ve model hafifletiliyor
Neural Audio Codec
- Mimi codec’i temel alınarak tasarlandı
- Mimi ayrık token’larla sıkıştırma yaparken, Pocket TTS sürekli latent gösterimler kullanıyor
- Normal dağılımla normalize edilmiş VAE eğitimi uygulanıyor
- WavLM, cosine similarity loss ile iç temsillere distillation yoluyla aktarılıyor
- RVQ aşamaları kaldırılıyor ve distillation loss tüm latent gösterime uygulanıyor
Generative Model
- Masked Autoregressive (MAR) framework’ü temel alıyor
- Causal Transformer omurgası ve MLP sampler’dan oluşuyor
- Lagrangian Self-Distillation (LSD) loss kullanılarak 1-step sampling gerçekleştiriliyor
- Çıkarım sırasında, tahmin edilen latent vektörler otokorelasyonlu biçimde geri besleniyor
Ses ve Metin Koşullandırma
- Model girdisi, ses prompt’u (birkaç saniye) ile metni birleştiriyor
- Ses, codec encoder ile; metin ise SentencePiece tokenizer ile gömülüyor
Model Boyutu Bileşimi
- Üretici model (Transformer + MLP): 90 milyon parametre
- Codec decoder: 10 milyon parametre
- Codec encoder: 18 milyon parametre (ses örneği kodlanırken yalnızca bir kez kullanılıyor)
Eğitim Verisi
- Tamamı herkese açık İngilizce konuşma veri setlerinden oluşuyor; toplam 88.000 saat
- AMI, EARNINGS22, GIGASpeech, SPGISpeech, TED-LIUM, VoxPopuli, LibriHeavy, Emilia
Başlıca Teknik Katkılar
Head Batch Multiplier
- Transformer’daki hesaplama darboğazını hafifletmek için z vektörü birden çok kez yeniden kullanılıyor
- Her giriş dizisi için z bir kez hesaplanıp 8 kez loss hesaplamasında yeniden kullanılıyor
- Verimliliği artırma ve eğitimi kararlı hâle getirme etkisi sağlıyor
Gaussian Temperature Sampling
- Sürekli uzayda da sampling temperature kontrolü uygulanıyor
- Gaussian noise varyansının azaltılmasıyla kalite artıyor
- 0.7 temperature değerinde iyi sonuçlar gözlemlenmiş
Latent Classifier-Free Guidance (Latent CFG)
- Mevcut CFG, latent değişken (z) düzeyinde uygulanıyor
- Koşullu ve koşulsuz çıktılar lineer olarak birleştirilerek kalite artırılıyor
- α=1.5 kullanılıyor
- SoundReactor araştırmasında da benzer bir kavram yer alıyor
Distillation
- CFG modelinin öğretmen model olarak kullanılmasıyla, hafif bir öğrenci modele distillation yapılıyor
- Öğretmen modelin MLP head’i sabitleniyor ve öğrenci model L2 loss ile z’yi öğreniyor
- 24 katmanlı öğretmen model → 6 katmanlı öğrenci model küçültmesi mümkün oluyor
Sonuç
- Pocket TTS, CPU’da da gerçek zamanlı yüksek kaliteli konuşma sentezi yapabilen hafif bir TTS modeli
- Sürekli latent uzay tabanlı mimariyi, verimli eğitim tekniklerini ve ses klonlama özelliğini bir araya getiriyor
- Açık kaynak MIT lisansı ile yayımlanması, geliştiricilere ve araştırmacılara yeniden üretilebilirlik ve genişletilebilirlik sağlıyor
4 yorum
Korece destekleyen açık TTS modelleri pek görünmüyor. Daha önce yayınlanan Kokoro-82M modelinin Koreceyi desteklediği söyleniyordu ama kalitesinin çok iyi olmadığına dair şeyler duymuştum, Kısaca bakınca GPT-Sovits ile üretip kullanmanın ya da Edge-TTS gibi bir şeyle yapmanın fena olmayan sonuçlar verdiği de söyleniyor.
Bu aralar vibe coding yaparken Whisper ile birleştirince ilginç bir şeyler çıkabilir gibi geliyor ama aklıma bir fikir gelmiyor, haha
Geçenlerde Supertonic’te Koreceyi de destekleyen bir model çıkmıştı, bir bakın derim.
Tıkla-çalıştır bir kütüphane de yaptım!
https://www.npmjs.com/package/easy-supertonic-tts
Harika görünüyor ama yaparken hedef kaynak adresi de birlikte olsa iyi olurdu; öyle rastgele kuramam da hehe
Hacker News yorumları
Yazıma bu kadar ilgi gelmesine gerçekten çok sevindim
Paris'te Kyutai araştırmasına dayalı kurumsal düzeyde ses çözümleri geliştiren bir ekibin parçasıyım
Bu alanda bir şeyler geliştiren varsa, yakında gelecek modelleri ve özellikleri paylaşmak isterim
Profilimdeki e-posta üzerinden bana ulaşabilirsiniz
Uzun vaka incelemesini okurken bir tarayıcı eklentisine ihtiyaç olduğunu fark ettim ve tarayıcı arayüzünü kendim yaptım
Ortaya çıkan şey Pocket Reader
İlgimi çektiği için bunu hemen bir MCP sunucusuna dönüştürdüm; Claude da iş bittiğinde haber veriyor
speak_when_done
Ben de benzer bir araç yapıp
saykomutunu arka plan süreci olarak çalıştırdım, ama iyi bir sesi tutarlı şekilde ayarlamak zorduO doğal ses sanki bir yerlere gizlenmiş gibi
speak-mcp
Şimdi sizin sunucunuzu da deneyeceğim
Bu sefer kod kalitesi gerçekten çok iyi
Genelde yeni modellerin kod tabanları gereksiz bağımlılık çöplüğüyle dolu olur, ama bu kez yazılım mühendisliği açısından da harika
Paylaştığınız için teşekkürler! Ben bir Kokoro hayranıyım ve yerel bir sesli asistanı kendim kurdum
ova projesi
Pocket TTS'yi de kesinlikle deneyeceğim
Ama Pocket TTS kapalı olduğu için ses klonlama özelliğini kontrol edemiyorum
Acaba mlx tabanlı mı yoksa Hugging Face transformers tabanlı mı merak ediyorum
Bu projenin küçük bir statik ikili dosya olarak dağıtılıp dağıtılamayacağını merak ediyorum
Şu anda bağımlılıkları epey büyük
Gerçekten çok hoşuma gitti
Ama MIT lisansı deniyor, README'de ayrıca bir Yasaklı Kullanım (Prohibited Use) bölümü var; bu yüzden özgür olmayan yazılım mı diye kafam karıştı
Görseller ve sesler gibi ML modelleri de yazılım sayılmayabilir
Hugging Face model kartında da aynı yasak maddesi var
Bu yüzden README'deki yasak maddeleri hukuken çelişkili olabilir
M1 Mac'te
uvx pocket-tts servekomutunu çalıştırdımTest için İki Şehrin Hikâyesi'nin ilk paragrafını okuttum, ama Javert sesi cümlelerin ortasında bazı kısımları atlıyordu
Örneğin “it was the age of foolishness” gibi bölümler söylenmedi
Bu güveni azaltıyor
İlgili issue'yu buraya açtım
Ben şimdiye kadar ses modellerini çok kullanmadım ama Pocket TTS sayesinde unmute.sh'i keşfettim
Açık kaynak ve sanırım aynı şirket tarafından yapılmış
Bu modeller homelab ortamında bile düşük maliyetle gayet kullanılabilir görünüyor
Açık kaynak modellerde seviye o kadar yükseldi ki neredeyse her kullanım için uygun bir tane var
Gerçek giriş engelinin kaldığı tek alan sanki kodlama modelleri
Deepseek 4'ün Claude Sonnet'i geçip geçemeyeceğini görmek ilginç olacak
Bunu Codex eklentime entegre ettim ve her turun sonunda özeti sesli okutuyorum; şaşırtıcı derecede iyi çalışıyor
MacBook'umda Samantha'dan çok daha akıcı çalışıyor
agentify-sh/speak