5 poin oleh GN⁺ 2026-03-20 | 1 komentar | Bagikan ke WhatsApp
  • Library text-to-speech (TTS) ringan berbasis ONNX dengan State-of-the-art, yang mampu melakukan sintesis suara berkualitas tinggi hanya dengan CPU
  • Ukuran model berada di kisaran 15M~80M parameter (25~80MB), sehingga dapat berjalan efisien tanpa GPU
  • Menyediakan 8 suara bawaan, pengaturan kecepatan, pipeline prapemrosesan teks, dan output audio 24kHz
  • Dapat langsung digunakan di Hugging Face dan mudah diintegrasikan melalui Python API
  • Solusi TTS open source yang ditujukan untuk deployment di edge device dan integrasi komersial

Gambaran umum Kitten TTS

  • Kitten TTS adalah library TTS open source berbasis ONNX yang melakukan sintesis suara berkualitas tinggi di CPU tanpa GPU
    • Ukuran model adalah 15M~80M parameter, atau 25~80MB di disk
    • Pada versi 0.8 tersedia model 15M, 40M, dan 80M
  • Saat ini masih berada pada tahap developer preview, sehingga API dapat berubah di masa mendatang
  • Menyediakan dukungan komersial (dukungan integrasi, suara kustom, lisensi enterprise)

Fitur utama

  • Arsitektur ultra-ringan: mulai dari 25MB pada int8, cocok untuk deployment di lingkungan edge
  • Optimasi CPU: menjalankan inferensi ONNX secara efisien tanpa GPU
  • 8 suara bawaan: Bella, Jasper, Luna, Bruno, Rosie, Hugo, Kiki, Leo
  • Fitur pengaturan kecepatan: mengontrol kecepatan bicara dengan parameter speed
  • Pipeline prapemrosesan teks: otomatis menangani angka, mata uang, satuan, dan lainnya
  • Output 24kHz: menghasilkan audio berkualitas tinggi pada sample rate standar

Model yang tersedia

  • Tersedia empat model
    • kitten-tts-mini (80M, 80MB)
    • kitten-tts-micro (40M, 41MB)
    • kitten-tts-nano (15M, 56MB)
    • kitten-tts-nano (int8, 15M, 25MB)
  • Sebagian pengguna melaporkan masalah pada model kitten-tts-nano-0.8-int8, dan disarankan untuk membuat issue

Demo dan cara penggunaan

  • Dapat dicoba langsung di browser melalui Hugging Face Spaces
  • Dapat diinstal hanya dengan Python 3.8 atau lebih baru dan pip
  • Contoh penggunaan dasar:
    • from kittentts import KittenTTS
    • model = KittenTTS("KittenML/kitten-tts-mini-0.8")
    • audio = model.generate("teks", voice="Jasper")
  • Fitur lanjutan: pengaturan kecepatan (speed), penyimpanan file (generate_to_file), dan melihat daftar suara yang tersedia

Struktur API

  • KittenTTS(model_name, cache_dir=None)
    • Memuat model dari Hugging Face Hub
  • model.generate(text, voice, speed, clean_text)
    • Mengubah teks menjadi audio 24kHz
  • model.generate_to_file(text, output_path, voice, speed, sample_rate, clean_text)
    • Menyimpan hasil sintesis suara langsung ke file
  • model.available_voices
    • Mengembalikan daftar suara yang tersedia

Persyaratan sistem

  • Sistem operasi: Linux, macOS, Windows
  • Python: 3.8 atau lebih baru
  • Perangkat keras: hanya membutuhkan CPU, GPU tidak diperlukan
  • Ruang disk: 25~80MB tergantung model
  • Disarankan menggunakan virtual environment (venv, conda, dll.)

Roadmap

  • Direncanakan hadir optimasi mesin inferensi, mobile SDK, model berkualitas tinggi, TTS multibahasa, dan KittenASR
  • Apache License 2.0

1 komentar

 
GN⁺ 2026-03-20
Komentar Hacker News
  • Saya membuat pembungkus CLI untuk Kitten TTS bernama purr
    paket kitten memiliki rantai dependensi kittentts → misaki[en] → spacy-curated-transformers
    jadi jika diinstal langsung dengan uv, itu akan menarik torch dan paket NVIDIA CUDA (beberapa GB), padahal tidak diperlukan untuk menjalankannya

    • Skrip instalasinya bekerja dengan baik
      Saat pertama dijalankan muncul error “OSError: PortAudio library not found”, tetapi teratasi dengan apt install libportaudio2
    • Terima kasih banyak. Instalasi saya terus gagal karena rantai dependensinya rusak, dan ini menyelesaikannya
      Namun saya penasaran apakah ada kehilangan fungsi saat dependensi yang tidak perlu dihapus
  • Proyek yang sangat keren
    Saya akan segera mencobanya sendiri
    Tapi saya penasaran — kenapa tidak didistribusikan dalam bentuk binary command-line?
    API-nya juga hampir seperti gaya manpage, jadi sepertinya bisa dibuat dengan cepat. Hanya penasaran saja

    • Ide bagus. Itu juga ada dalam rencana
      Untuk saat ini kami ingin mendapatkan masukan untuk versi onnx, lalu setelah itu menyederhanakan proses eksekusi termasuk dengan binary command-line
  • Hal yang saya sukai dari OpenClaw adalah karena hanya dengan mengirim URL GitHub di Discord, ia langsung membuat pesan suara
    Dalam beberapa menit saya juga mendapat benchmark dan contoh audio
    Kualitasnya mengesankan untuk ukurannya. Suaranya memang belum sempurna, tapi tidak buruk
    Di CPU Intel 9700 kecepatannya sekitar 1,5x real-time untuk model 80M, dan di GPU 3080 pun tidak lebih cepat

    • Kami berencana menambahkan suara yang lebih profesional dan suara kustom DIY
      Saat ini kami memasukkan suara bergaya anime untuk menunjukkan ekspresivitasnya
      Akan sangat membantu jika Anda bisa membagikan alasan lambatnya di GPU lewat issue GitHub atau Discord. Kami juga berencana menambahkan contoh kode
    • Ini use case yang bagus. Saya tertarik dengan strukturnya yang memungkinkan pengujian dan deployment dalam sandbox tanpa koneksi yang rentan secara keamanan seperti email
    • Saya cuma bisa bilang iri. Saya butuh waktu jauh lebih lama sampai bisa menjalankannya
      Saya bersusah payah menghindari konflik versi Python, dan sempat mencoba dengan Docker tapi akhirnya tetap harus menyiapkannya secara manual
      Saya benar-benar tidak suka Python
  • Sepertinya saat ini hanya mendukung suara aksen Amerika
    Secara pribadi saya hanya tertarik pada aksen Irlandia, Inggris, dan Wales. Saya kurang suka aksen Amerika

  • TTS yang berjalan di perangkat adalah hal yang sangat bagus sebagai alat aksesibilitas
    Sebagian besar perangkat bergantung pada layanan online, dan pendekatan lokal seperti ini jauh lebih baik

    • Terima kasih atas masukannya. Kami akan segera merilis lebih banyak model kecil untuk berbagai kegunaan
  • Terasa ada peningkatan yang jauh lebih jelas dibanding model sebelumnya
    Sangat mengesankan. Terima kasih sudah membagikannya

    • Terima kasih. Model kali ini jauh lebih baik daripada sebelumnya
      Model 15M saat ini lebih baik daripada model 80M lama, dan kami berencana mempertahankan kecepatan peningkatan seperti ini
  • Ke depannya saya ingin melihat model khusus bahasa Jepang juga
    Qwen3-tts memang mendukung bahasa Jepang, tetapi kadang bahasa Mandarin ikut tercampur jadi sulit dipakai

    • Di tahap pra-pemrosesan mungkin bisa dicoba konversi ke hiragana
      Namun jika begitu, informasi tinggi nada bisa hilang (misalnya 飴 vs 雨)
    • Kami berencana mendukung bahasa Jepang di model berikutnya (sekitar 3 minggu lagi)
      Jika Anda memberi tahu use case-nya, kami ingin menggunakannya untuk meningkatkan kualitas
  • Performanya mengesankan untuk ukuran modelnya
    Namun ada masalah pada pengucapan angka
    Saya mencoba “Startup finished in 135 ms.” dan angkanya terdengar seperti noise
    Setelah diubah menjadi “one hundred and thirty five seconds” hasilnya lumayan lebih baik

    • Masalah ini juga sedang kami perbaiki di level model
      Untuk sementara bisa diatasi dengan menambahkan pra-pemrosesan teks
      Sebagian besar model TTS menangani angka dan satuan dengan mengubahnya menjadi string
    • Terima kasih atas masukannya. Dengan pra-pemrosesan kustom, 95% kasus bisa diatasi
      Ini juga akan diperbaiki di level model pada rilis berikutnya
    • Sebagai catatan, kata yang benar adalah “pronounce” atau “pronouncing”. “pronounciating” adalah typo
  • Akan bagus jika ada contoh audio yang membandingkan keempat model
    Jika ada contoh kalimat yang sama dibacakan oleh masing-masing model, akan lebih mudah dipahami

    • Saran yang bagus. Akan saya tambahkan segera
      Sementara itu, Anda bisa mencoba modelnya langsung di demo Hugging Face
  • Saya penasaran apakah ini open source, atau model open weights

    • Ya. Ini open source
      Sampai akhir pekan ini kami juga akan menambahkan phonemizer berlisensi MIT, jadi akan bisa dipakai dengan bebas