Chatterbox TTS - Açık kaynak metinden konuşmaya dönüştürme model ailesi
(github.com/resemble-ai)- Chatterbox, Resemble AI tarafından yayımlanan en yeni açık kaynak metinden konuşmaya dönüştürme model ailesidir; ses klonlama ve çok dilli ses üretimini destekler
- En yeni Chatterbox Multilingual V3, 0.5B model boyutunu korurken konuşmacı benzerliğini iyileştirmeyi, halüsinasyonları azaltmayı ve daha doğal konuşma odaklı çok dilli ses üretimini hedefler
- Chatterbox-Turbo, İngilizce düşük gecikmeli ses ajanları için 350M'lik bir modeldir; speech-token-to-mel decoder üretimini 10 adımdan 1 adıma indirir ve
[laugh],[cough]gibi paralinguistic tag desteği sunar - Model yapısı Turbo, Multilingual V3, Single Language Pack ve mevcut Chatterbox olarak ayrılır; çok dilli model Korece dahil 23 dili destekler ve Single Language Pack 6 özel fine-tuning sunar
- Üretilen tüm sesler Resemble AI'nin PerTh watermark özelliğini içerir; MP3 sıkıştırma, ses düzenleme ve genel manipülasyonlardan sonra bile algılama doğruluğunun neredeyse %100 korunduğu belirtilir
Chatterbox TTS genel bakış
- Chatterbox, Resemble AI'nin açık kaynak metinden konuşmaya dönüştürme model ailesidir
- Demo örnekleri, Hugging Face Space, Podonos değerlendirmesi ve Discord bağlantısı birlikte sunulur
En yeni sürüm: Chatterbox Multilingual V3
- Chatterbox Multilingual V3, Chatterbox ailesinin en yeni genel amaçlı çok dilli TTS modelidir
- V3, öncekiyle aynı 0.5B model boyutunu korurken şunları iyileştirir
- konuşmacı benzerliği
- halüsinasyonların azaltılması
- diller genelinde daha doğal konuşma odaklı ses
- V2 gibi geniş dil kapsamını hedefler, ancak daha kararlı ve daha güçlü ifade yeteneğine sahip üretim sunacak şekilde tasarlanmıştır
- Birden fazla dilde çalışan tek bir ses klonlama modeli isteyen kullanıcılar için önerilen çok dilli modeldir
Single Language Pack
- Single Language Pack, öncelikli diller için özel fine-tuning model paketidir
- Genel amaçlı çok dilli modele göre daha güçlü dil bazlı davranış, daha sıkı kalite kontrolü ve lehçe duyarlı üretim gerektiğinde kullanılır
- Sunulan özel model sayısı 6'dır
Chatterbox-Turbo
- Chatterbox-Turbo, düşük gecikmeli İngilizce ses ajanları için en verimli modeldir
- 350M parametreli sadeleştirilmiş bir mimari kullanır ve önceki modellere göre daha az hesaplama ile VRAM kullanarak yüksek kaliteli ses üretmek üzere tasarlanmıştır
- Darboğaz olan speech-token-to-mel decoder damıtılarak üretim aşaması 10 adımdan 1 adıma indirilmiştir
- Turbo,
[cough],[laugh],[chuckle]gibi paralinguistic tag desteğini varsayılan olarak sunarak daha gerçekçi ifadeler ekleyebilir - Temel kullanım alanı düşük gecikmeli ses ajanlarıdır, ancak anlatım ve yaratıcı iş akışları için de uygun olduğu belirtilir
- Ticari TTS hizmeti 200ms altı ultra düşük gecikme performansı sunar ve ajanlar, uygulamalar ve interaktif medya için prodüksiyon kullanımına uygun olarak tanıtılır
Model yapısı
| Model | Boyut | Dil | Başlıca özellikler | Uygun kullanım |
|---|---|---|---|---|
| Chatterbox-Turbo | 350M | English | paralinguistic tag, düşük hesaplama·VRAM | zero-shot ses ajanları, prodüksiyon |
| Chatterbox-Multilingual V3 | 500M | 23+ | konuşmacı benzerliğinde iyileştirme, halüsinasyon azaltma, doğal çok dilli ses | küresel uygulamalar, lokalizasyon, diller arası ses klonlama |
| Single Language Pack | her biri 500M | 6 özel fine-tuning | dil ve bölge bazlı kalite kontrolü | öncelikli diller ve lehçeye duyarlı uygulamalar |
| Chatterbox | 500M | English | CFG ve exaggeration ayarı | yaratıcı kontrol sunan genel zero-shot TTS |
Kurulum ve çalıştırma
- Paket
pip install chatterbox-ttsile kurulur - Kaynaktan kurulum da desteklenir
git clone https://github.com/resemble-ai/chatterbox.git cd chatterbox pip install -e . - Geliştirme ve test ortamı Python 3.11 ve Debian 11'dir; bağımlılık sürümleri
pyproject.tomliçinde sabitlenmiştir - Kaynaktan kurulum modunda kod veya bağımlılıklar değiştirilebilir
Kullanım biçimi
- Chatterbox-Turbo, modeli
ChatterboxTurboTTS.from_pretrained(device="cuda")ile yükler ve ses klonlama için referans klip yolunuaudio_prompt_patholarak alır - Turbo örneği,
[chuckle]gibi paralinguistic tag içeren bir cümle üretir - Genel İngilizce model için
ChatterboxTTS, çok dilli model içinChatterboxMultilingualTTSkullanılır - Çok dilli V3,
ChatterboxMultilingualTTS.from_pretrained(device=device, t3_model="v3")ile yüklenir- Eski V2 checkpoint kullanmak için
t3_modelatlanır veya"v2"verilir
- Eski V2 checkpoint kullanmak için
- Farklı bir sesle sentez yapmak için
audio_prompt_pathiçinde referans ses dosyası belirtilir - Ek örnekler
example_tts.pyveexample_vc.pyiçindedir
Desteklenen diller
- Genel amaçlı Chatterbox Multilingual modeli şu 23 dili destekler
- Arabic
ar - Danish
da - German
de - Greek
el - English
en - Spanish
es - Finnish
fi - French
fr - Hebrew
he - Hindi
hi - Italian
it - Japanese
ja - Korean
ko - Malay
ms - Dutch
nl - Norwegian
no - Polish
pl - Portuguese
pt - Russian
ru - Swedish
sv - Swahili
sw - Turkish
tr - Chinese
zh
- Arabic
Mevcut Chatterbox için ayar ipuçları
- Referans klip, belirtilen dil etiketiyle eşleşmelidir
- Aksi halde dil aktarımı çıktısı, referans klibin dilindeki aksanı devralabilir
- Bunu hafifletmek için
cfg_weightdeğeri0yapılır
- Varsayılan değerler
exaggeration=0.5,cfg_weight=0.5olup çoğu istem ve dilde iyi çalışır - Referans konuşmacının konuşma hızı yüksekse,
cfg_weightdeğerini yaklaşık0.3e düşürmek hız kontrolüne yardımcı olabilir - Daha ifadeli veya dramatik ses için düşük
cfg_weightve0.7üzeriexaggerationdenenebilir- Yüksek
exaggerationkonuşma hızını artırma eğilimindedir cfg_weightazaltmak, bunu daha yavaş ve daha temkinli bir hızla dengelemeye yardımcı olabilir
- Yüksek
Yerleşik PerTh watermarking
- Chatterbox ile üretilen tüm ses dosyaları Resemble AI'nin Perth watermark özelliğini içerir
- Bu watermark, Perceptual Threshold tabanlı ve fark edilemeyen bir sinir ağı watermark'ıdır
- MP3 sıkıştırma, ses düzenleme ve yaygın manipülasyonlardan sonra da korunur ve algılama doğruluğunun neredeyse %100 kaldığı belirtilir
- Watermark çıkarma işlemi
perth.PerthImplicitWatermarker()veget_watermark()ile yapılır- Sonuç, watermark yoksa
0.0, watermark varsa1.0olarak verilir
- Sonuç, watermark yoksa
Değerlendirme
- Chatterbox Turbo, yeniden üretilebilir öznel ses değerlendirme platformu Podonos ile değerlendirilmiştir
- Karşılaştırma hedefi rakip TTS sistemleridir; değerlendirme odağı genel tercih, doğallık ve ifade gücüdür
- Açık değerlendirme raporları sunulur
- Tüm değerlendirmeler aynı koşullarda yürütülmüş olup Podonos üzerinden herkese açık şekilde erişilebilir
Lisans dışı notlar
- README, “bu modeli kötü amaçlar için kullanmayın” ifadesini açıkça içerir
- Promptların internette serbestçe erişilebilen verilerden alındığı belirtilir
1 yorum
Hacker News görüşleri
Demoya buradan bakılabilir: https://resemble-ai.github.io/chatterbox_demopage/
Örnekler aşırı seçilmiş değilse, oldukça iyi bir sürüm. Her seferinde aynı şeyi söylüyorum ama bizzat denediğimde ses yapay zekasında darboğazın ses sentezi değil, transkripsiyon kalitesi tarafında olduğunu gördüm. Son zamanlarda değişti mi bilmiyorum
LLM'e alternatif transkriptler ya da güven puanlarını birlikte verme denemesini henüz yapmadım, ama bunları da iyi kullanması muhtemel görünüyor
Yaygın ifade listeleriyle karşılaştırma işlevi de gerekli. LLM'in “live feed” veya “live here” ifadelerini yanlış telaffuz etmesi için pek mazeret yok
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v2
Gerçek zamanlı sohbet ve altyazı üretimi için kullanıyorum; 3090'da bir TV dizisi bölümünü 1 dakikadan kısa sürede işliyor. Whisper bende çok fazla halüsinasyon yapıyordu; sınıflandırıcı olarak kullanmak daha faydalı oldu
Burada ücretsiz çalıştırıp deneyebilirsiniz: https://huggingface.co/spaces/ResembleAI/Chatterbox
Daha iyi “açık” modeller istiyorsanız, rastgele ses klonlama ölçütüne göre MaskGCT, MegaTTS3; ses dönüştürme ölçütüne göre ise Seed-VC, MegaTTS3 daha iyi duyuluyor. Ancak eğitim/ince ayar kodu olan tek model Seed-VC. Zaten ince ayar yapamayacağınız bir modeli kullanmak zorundaysanız ve kendi sesinize daha iyi uyan rastgele klonlamaya ihtiyacınız varsa, Chatterbox yerine bunları kullanmak daha iyi. Özellikle ByteDance'in MegaTTS3'ü güçlü. ByteDance araştırmacıları, ElevenLabs hariç çoğu TTS araştırma ekibinden çok daha ileride; finansman, doktora seviyesinde araştırmacı ve eğitim verisi açısından da çok daha fazlasına sahipler
Ancak Avustralya aksanımı çok İngiliz, hatta seçkin bir RP aksanı gibi yaptı. Kulağa çok doğal geliyor ama benim aksanımı yeniden üretmiyor. Yine de birini gerçekten taklit etmek amaçlanmıyorsa çoğu TTS kullanımı için şaşırtıcı derecede net ve uygun
Chatterbox harika
Kurulumu daha da kolaylaştıran bir API sarmalayıcısı yaptım ve Docker'ı da destekliyor: https://github.com/travisvn/chatterbox-tts-api/
Deneyimime göre yerelde kullanılabilen ses klonlama seçenekleri arasında açık ara en iyisi
Aşağıdaki sorunun temel düzeyde olmasını mazur görün. Satır içi
inputnesnesi yerine yerel bir metin dosyası belirtmek için basit bir CLI komutu arıyordum ama bulamadım. Bir ipucu olursa sevinirim2.6'ya göre yapılmış gibi.
"chatterbox-tts 0.1.2 requires torch==2.6.0, but you have torch 2.7.0+cu128 which is incompatible. chatterbox-tts 0.1.2 requires torchaudio==2.6.0, but you have torchaudio 2.7.0+cu128 which is incompatible."Chatterbox’ın oluşturduğu tüm ses dosyalarında Resemble AI’nin Perth filigranı olduğu belirtiliyor.
MP3 sıkıştırmasına, ses düzenlemeye ve yaygın manipülasyonlara dayanabilen, neredeyse %100 tespit doğruluğunu koruyan algılanamaz bir sinir ağı filigranı deniyor; yanlış anlamadıysam
tts.pyiçindeapply_watermarkçağrısını yorum satırına almak filigranı kolayca kapatmak anlamına gelmiyor mu? https://github.com/resemble-ai/chatterbox/blob/master/src/ch...Böyle bir filigranın asıl noktasının, model ağırlıklarının içine bir şekilde gömülü olup kolayca ayrıştırılamaması gerektiğini düşünüyordum. Açık kaynak bir model yayımlarken filigranı ayrı bir son işleme adımı olarak ekleyeceklerse, baştan neden filigran koyduklarını anlamıyorum
Ya da eğitim verisi açısından, yanlışlıkla garip verilerin karışmasını önlemek gibi bir amacı da olabilir
--no-watermarkbayrağı da var. Daha büyük ürünlerde kullanacak alt kullanıcılarına bunu bir “özellik” olarak sunmak için koyduklarını sanmıştımTTS pazarının liderleri belli ve çok sağlam yerleşmiş durumda; bu yüzden Resemble, Play(HT) gibi yerlerin ağırlıkları sağlayıp geliştiricilere güçlü biçimde uyum sağlaması gerekiyor [1]. Filigranlama bunun için bir sorumluluktan kaçınma mekanizması. Filigran olmazsa 404Media gibi AI karşıtı mecralar başta olmak üzere kötüye kullanım endişeleri güçlü biçimde gündeme gelir [2].
[1] Doğru yöntem bu. Kaynak kodu ve ağırlıkları sunmalı, kendi API’sini ve ince ayarı da sağlayarak geliştiricilerin zahmet çekmemesini sağlamalılar. Ancak böyle pazar payının bir kısmını geri alabilirler.
[2] https://www.404media.co/wikipedia-pauses-ai-generated-summar...
Aptalca bir soru olabilir ama çalıştırılabilir minimum donanım gereksinimi kabaca nedir?
Faydalı olur diye sorunları not düşeyim: Python 3.13’te olmuyor;
uvile 3.12 sanal ortamı oluşturunca çözülüyor. numpy 1.26.4 yok diyor ama aslında var;uv pipyalnızca PyTorch deposunda arıyormuş. Başka depoları da kontrol etmesi için--index-strategybayrağı vermek gerekti.pip install chatterbox-ttssürümünde yalnızca CPU modunda bir hata vardı, bu yüzden Git deposunu klonlamak gerekti; main’in en yeni sürümü Debian’daprotobuf-compileristiyordu. En sonunda yorumlaması zor bir CMake hatası aldım; sanki Python geliştirme header’ları yok diye şikâyet ediyordu. Çıkarım yapmak istiyorum, Python derlemek değil; neden gerekli anlamıyorum.Sinirlenmenin üretken olmadığını biliyorum ama başkasının Python projesini çalıştırırken neredeyse her seferinde böyle bir deneyim yaşıyorum. Bir sorunla karşılaşıp geri çekiliyorsun, sonra başka bir sorunla karşılaşıp yine geri çekiliyorsun; bir saat geçse de hâlâ çalışmıyor
Model iyiyse birilerinin daha az kaynakla çalıştıracak optimizasyon yöntemini bulma ihtimali yüksek.
Düzenleme: Eski bir Nvidia 2060’ta çalıştırdım; en yüksek VRAM kullanımı yaklaşık 5 GB gibi görünüyor
Varsayılan haliyle makul hızda çalıştırmak için epey güçlü tüketici sınıfı donanım gerekiyor gibi. Yine de geliştirme alanı oldukça fazla görünüyor; uzman değilim.
[1]: https://github.com/resemble-ai/chatterbox/issues/127
Ücretsiz çalıştırılabiliyor olsa bile kiralayıp kullanmak daha ucuzsa, kendi başına çalıştırmanın anlamı kalmıyor
Duygu abartma özelliği ilginç, ancak yalnızca istediğiniz sesin açıklamasıyla ses oluşturabilen ElevenLabs kadar çok yönlü ve kolay “şekillendirilebilir” bir şey henüz görmedim.
SparkTTS birkaç ek parametre sunuyor ve GitHub proje kodundaki yer tutuculara bakılırsa modelin daha ince ayrıntılı duygu kontrolü için geliştirilebilme ihtimali de var. Şimdiden metnin içine prozodi ve tonu güçlü biçimde yönlendiren ipuçları koyup, sonucu tekrar ses dönüştürmeye vererek istenen sonuca yaklaşma konusunda belli ölçüde başarı elde ettiğim oldu. Ama ElevenLabs’a göre çok daha zahmetli bir süreç
Çok yaygın aksanlarda harikaydı, ancak onun dışındaki bazı aksanlar da oldukça yaygın olmasına rağmen kolayca başka bir aksana sabitlenebiliyor.
Örneğin birkaç İskoç kaydı Avustralya aksanıyla çıktı; epey hafif bir Yorkshire aksanında da aynı şey oldu
Bunlar bir kitabı ikna edici biçimde seslendirecek kadar iyi hale geldi mi? Yoksa birkaç paragraf okuduktan sonra ses tutarlılığı bozuluyor mu?
Uzun metinleri paragraf bazında gruplara ayırıp üretmek, ardından en sonda tekrar birleştirmek daha iyi. Ayrıca tek seferlik örnek WAV çok temiz değilse Chatterbox, üretilen sesin sonunda rastgele uğursuz bir vınlama sesi çıkarabiliyordu. Dante’nin Inferno’sunu kaydediyorsanız bu bir bonus sayılabilir
Arkadaşlara ve aileye telefon görüşmelerine daha şüpheci yaklaşmaları gerektiğini düzenli olarak hatırlatmak lazım
Acilen Walmart hediye kartına ihtiyacı olduğunu söyleyen arkadaşın, gerçekten arkadaşınız olmama ihtimali giderek artıyor
Taklitçilik o kadar kolay ve ucuz hale geliyor ki yakın gelecekte bu tür dolandırıcılık aramalarının her yeri sarmaması mümkün değil
Araya girip “x hakkında bir şiir yazar mısın?” derseniz güvenilir biçimde eleniyor. Ancak yanıt gecikmesi fazlasıyla belli oluyor
Gerçek bir durumsa karşı taraf bu parolayı biliyor olur, böylece doğrulama yapılabilir. Yapay zeka sesinin ve videonun bile mümkün olduğu bu yeni çağda, bu parolanın taklitçiliği engellediğini sürekli akılda tutturmak gerekiyor
Mevcut açık kaynak çok dilli TTS alanında en ileri seviye ne durumda? Kokoro İngilizcede harikaydı ama Fransızca, Japonca ve Almanca için hâlâ iyi bir çözüm arıyorum