Kitten TTS - Model TTS open-source 25MB yang berjalan hanya dengan CPU
(github.com/KittenML)- Kitten TTS adalah model TTS (text-to-speech) open-source yang mengejar bobot ringan dan kualitas suara tinggi secara bersamaan
- Hanya menggunakan 15 juta parameter sehingga ukuran modelnya kurang dari 25MB
- Berbeda dari TTS besar lainnya, keunggulan utamanya adalah dapat dijalankan di semua lingkungan seperti mobile dan embedded
- Bahkan tanpa GPU, sintesis suara berkualitas tinggi dapat diproses di semua perangkat
- Menyediakan berbagai opsi suara premium sehingga mendukung sintesis suara berkualitas tinggi yang mirip dengan suara asli
- Inferensi suara dapat dilakukan dengan cepat sehingga dioptimalkan untuk sintesis real-time
- Model pratinjau pengembang telah dirilis, dan ke depannya bobot model lengkap yang sudah selesai dilatih, SDK mobile, versi web, dan lainnya akan dirilis secara bertahap
2 komentar
Akan bagus kalau ada model bahasa Korea juga..
Opini Hacker News
Melakukan benchmark sederhana di Ubuntu 24 dengan Razer Blade 16 dan Intel Core i9-14900HX
Latensi awal sekitar 315ms untuk teks pendek, dan kecepatan pembuatan suara menunjukkan 3,35~5,5x kecepatan real-time tergantung panjang teks
Model dimuat dalam sekitar 710ms
Perbedaan performa nyaris tidak ada di 4 jenis suara yang berbeda, dan tetap mempertahankan kecepatan sekitar 5x real-time
Di CPU Intel Celeron N4020 (1.10GHz) milikku, butuh 6 detik untuk memuat, dan kecepatannya hampir real-time terlepas dari panjang teks
Terima kasih untuk benchmark-nya
Model saat ini masih belum dioptimalkan
Saat SDK produksi dirilis, kami berencana mengoptimalkan juga hal-hal seperti loading
Ada sampel audio buatan KittenTTS yang diunggah ke Reddit
Sampel audio Reddit
Ada juga video pendek yang memuat berbagai suara
Video YouTube
Video Reddit-nya benar-benar keren
Mengejutkan bisa mendapat kualitas seperti ini dengan ukuran kurang dari 25MB dan hanya memakai CPU
Aku tidak paham kenapa orang menilainya sebagai ‘model biasa saja’
Suaranya sangat jernih dan jelas
Bahkan bagiku yang bukan penutur asli bahasa Inggris, tetap mudah dipahami
Terdengar agak lambat, dan suaranya terasa seperti berasal dari animasi
Jangan-jangan ini dilatih silang dengan suara karakter Futurama?
Semoga model seperti ini menjadi masa depan
Era model ML kecil offline yang bisa melakukan inferensi di perangkat keras murah dan mudah didapat di mana-mana
Bisa dengan mudah diintegrasikan ke perangkat atau aplikasi lain, bahkan dijalankan dari model lain
Inilah tepatnya gambaran yang Apple buat dengan SLM (small language model)
Jika ada model yang hanya menangani pengelolaan acara kalender, tidak perlu memuat seluruh pengetahuan umat manusia
Cukup fokuskan pada hal yang dibutuhkan untuk manajemen kalender
Jika model dijalankan pada perangkat keras khusus untuk satu tujuan, efisiensi energinya menjadi sangat tinggi
Bahkan jaringan saraf bisa dijalankan hanya dengan resistor (tanpa transistor)
Tentu saja perangkat keras seperti itu bukan untuk tujuan umum, dan sulit di-upgrade modelnya
Tapi untuk banyak kasus, itu sudah cukup
Aku penasaran mana yang akan lebih sukses: model yang bisa dibeli sekali lalu menjalankan apa saja, atau model yang terikat langganan dan memerlukan perangkat keras yang hanya bisa dibeli oleh perusahaan raksasa paling kaya
Sebenarnya, inilah tepatnya tujuan yang sedang kami upayakan
Ini juga visi kami
Ukuran 25MB memang mengejutkan, tapi titik inovasi yang sebenarnya adalah KittenTTS dirilis dengan lisensi Apache-2.0
Kombinasi ini memungkinkan mesin suara yang sepenuhnya offline langsung ditanamkan ke perangkat sekelas Pi Zero atau mainan bertenaga baterai
Tanpa perlu GPU, panggilan cloud, atau khawatir soal lisensi yang membatasi
Sekaligus mengubah persoalan perangkat keras atau lisensi menjadi ‘masalah packaging’
Peningkatan kualitas bisa dipikirkan nanti; yang benar-benar game changer adalah bahwa distribusi pada level ini jadi memungkinkan
Kami juga sangat antusias untuk terus membuat model AI ultra-kecil berkualitas tinggi
Kami yakin antarmuka suara lokal itu tak terelakkan, dan ingin menjadi bagian inti dari bidang ini di masa depan
Model ini adalah preview, dan sekitar minggu depan kami akan merilis versi lain yang jauh lebih matang
Selain itu, kami juga berencana merilis model sekitar 80M
Tadi disebut KittenTTS memakai Apache-2.0
Tapi kalau melihat kode sumber di GitHub, terlihat memakai phonemizer
phonemizer berlisensi GPL-3.0
Jadi saat ini sebenarnya GPL
(Catatan: juga ditambahkan komentar bahwa komentar ini terasa seperti dibuat oleh LLM)
Model festvox-kallpc16k dari Festival ukurannya sekitar 6MB, festvox-kallpc8k sekitar 3,5MB
Data multibahasa eSpeak NG sekitar 12MB
Model yang sekarang tampaknya akan menghasilkan suara yang lebih alami
Tapi komputer lama atau spesifikasi rendah pun sejak dulu sudah bisa menjalankan TTS yang cukup bagus
Jika KittenTTS benar-benar Apache-2.0, aku penasaran bagaimana dengan data pelatihannya
Bahkan jika model bisa mereproduksi input pelatihan dengan sangat mirip
apakah kita bisa yakin secara hukum bahwa itu bukan karya turunan sepenuhnya?
Karena bergantung pada espeak-ng, ini jadi GPLv3
Ada versi web
Coba demo
Suaranya lumayan, tapi melihat ukurannya, ini cukup mengesankan
Bukankah lucu di film fiksi ilmiah suara robot justru sengaja didistorsi secara aneh supaya terdengar “lebih robotik”?
Padahal suara robot yang jelas bukan suara manusia justru bisa lebih menarik dan lebih diinginkan di banyak situasi
Misalnya, toaster pintar tidak perlu berbicara seperti pembaca berita BBC
Yang penting pengucapannya terdengar jelas
Aku menyuruhnya membacakan teks demo, tapi hasilnya tidak terdengar sebagus sampelnya
Buat yang ingin mencoba, aku tinggalkan teks sampelnya
Saat menjalankan demo dengan 6 kalimat, muncul error
Setelah dikurangi jadi 3 kalimat, berjalan baik
Aku penasaran apakah batas panjang teks ini karena modelnya, atau hanya keterbatasan demo
Di lingkunganku malah sama sekali tidak jalan
Ada error 404 dari modul backend
Contoh link error 404
Aku memang sedang mencari link ini
Demo di Reddit lumayan oke, menurutku setara level beberapa tahun lalu
Tapi setelah mencobanya sendiri, hampir semua sampelnya nyaris tidak bisa dipahami
Lucu melihat persyaratan sistemnya tertulis “praktis bisa jalan di mana saja”
Di satu mesin versi Python terlalu rendah
dan di mesin lain versi Python terlalu tinggi, jadi instalasi gagal karena masalah dependensi paket
Aku sudah mengirim beberapa PR untuk menyelesaikan masalah ini
PR 21, PR 24, PR 25
Jika
uvsudah terpasang, dari branch referensi yang sudah kugabungtinggal jalankan seperti ini
Kalau instal dengan uvx, sebagian besar masalah lingkungan Python bisa teratasi
Panduan instalasi uv
Memilih Python memang menyelesaikan satu masalah, tapi sekaligus melahirkan puluhan masalah baru
Di Fedora tidak jalan karena tidak ada versi g++ yang sesuai
Penyebabnya ya Python
Setelah kucoba sendiri, ukuran dan kecepatan modelnya lumayan bagus
Tapi instalasinya butuh sangat banyak library dan komponen tambahan
Jadi akhirnya jauh sekali dari 25MB
Meski begitu, proyeknya tetap keren
Poin yang bagus soal masalah dependensi
Agar mudah diinstal dan digunakan, serta untuk menambahkan dukungan GPU dan pemrosesan teks panjang yang diinginkan orang, aku membuat server self-hosted untuk model ini
Kitten-TTS-Server
Bisa langsung dijalankan hanya dengan lingkungan Python venv standar tanpa khawatir bentrok
Cukup git clone, pip install, python server.py lalu selesai
Karena ada penyebutan ONNX, aku menduga model ONNX sudah ada atau akan segera ditambahkan
ONNX runtime itu satu library saja, jadi untuk C# ukurannya sekitar 115MB setelah dikompresi
Memang tidak sangat kecil, tapi kode yang dibutuhkan untuk benar-benar menjalankannya cuma beberapa baris, jadi dependensinya juga sedikit
Memasukkan beberapa library sekaligus membantu pengembangan dan iterasi cepat
Nanti kalau fiturnya sudah matang, library yang tidak perlu bisa dibersihkan
Yang lebih penting daripada ukuran model (dalam MB) adalah bisa berjalan di CPU dan kualitasnya, dan satu-satunya kekhawatiranku adalah latensi
Aku penasaran apakah model speech-to-text bisa berjalan offline tanpa pelatihan tambahan
Akan sangat mengesankan jika nanti kita bisa berbicara dengan AI pada kecepatan alami, seperti manusia berbicara satu sama lain
Model parakeet dari Nvidia saat ini paling mutakhir untuk bahasa Inggris
10x lebih cepat daripada Whisper, dan di CPU AMD kelas menengah milikku berjalan jauh lebih cepat dari real-time
Whisper bisa dipakai untuk pengenalan suara offline
Beberapa aplikasi mendukung dikte atau transkripsi yang sepenuhnya offline
Sebagai contoh, untuk teks “The brown fox jumps over the lazy dog..”
waktu generasi rata-ratanya 1,28 detik, sekitar 30,35 karakter per detik
Ini di AMD Ryzen 7 5800H
Sebagai model pengenalan suara offline, whisper dari OpenAI adalah yang paling terkenal
Repositori resmi Whisper
Ada yang tahu faktor apa saja yang memengaruhi latensi model TTS?
Cukup mengesankan
Untuk bidang tertentu, misalnya embedded, jelas ada tempat pemakaiannya
Hanya saja kualitasnya belum terasa cukup sempurna untuk menggantikan model besar
Menurutku model TTS open offline dengan kualitas tertinggi saat ini adalah fish-speech dan f5-tts
Saat menjalankan F5-TTS di NVidia 1660 lama (VRAM 6GB), hasilnya cukup baik
Dengan perangkat keras yang lebih baru, kita bisa mendapatkan kualitas lebih tinggi, multibahasa, bahkan zero-shot tanpa biaya berlebihan
Untuk Android, SherpaTTS punya kompatibilitas yang bagus
Model ini adalah versi preview, dan kami ingin terus meningkatkan kualitasnya jauh lebih baik lagi
Bobot Fish Speech tidak bisa dipakai secara komersial
Aku penasaran dengan kebutuhan VRAM-nya, karena KittenTTS hanya 15 juta parameter jadi bisa berjalan bahkan di komputer hemat daya dengan harga di bawah 100 ribu won
GPU 6GB yang kamu sebut itu sudah termasuk lama
Kualitasnya tidak terlalu mengesankan seperti yang kuharapkan
Tujuannya adalah suara yang alami
piper dan kokoro juga tidak terlalu memuaskan, dan XTTS agak merepotkan saat dipasang
Untuk speech recognition (STT), whisper memang jagonya
Rasanya rindu TTS yang benar-benar bagus
Tidak masalah kalau penggunaan GPU tinggi, aku ingin kualitas yang bagus
Sebagai catatan, model ini sekarang malah lebih buruk daripada kokoro
Menurutku kualitas SOTA open-weight saat ini yang terbaik adalah chatterbox
TTS open-source terbaik yang pernah kulihat adalah Dia
Ada beberapa keterbatasan, tapi tetap berjalan baik di laptop
Pinokio juga layak dicoba
Chatterbox juga patut dicoba
Kalau sumber daya GPU-mu longgar, kualitas di sini memang tidak perlu terlalu diperdebatkan
Yang penting adalah model ini bisa berjalan tanpa GPU
Dulu sebelum Tacotron2, TTS kecil seperti GlowTTS, MelGAN, dan vocoder pernah dijalankan murah di cloud Digital Ocean
Setelah itu trennya makin membesar
Tapi ke depan, menurutku era model kecil yang ditanam langsung ke tiap perangkat akan datang
Akan dipakai di Raspberry Pi, mainan, dan berbagai perangkat kecil tanpa perlu jaringan
Edge AI akan membawa ekspansi besar di bidang robot, mainan, perangkat konsumen, dan game