10 poin oleh GN⁺ 2026-03-01 | 1 komentar | Bagikan ke WhatsApp
  • Framework pengenalan suara real-time yang menjalankan seluruh pemrosesan di perangkat
  • Melalui arsitektur model berbasis streaming, sistem menghasilkan teks secara real-time saat pengguna masih berbicara, dan mencapai tingkat kesalahan lebih rendah (WER 6,65%) dibanding Whisper Large v3
  • Berjalan dengan API yang sama di berbagai platform seperti Python, iOS, Android, MacOS, Linux, Windows, Raspberry Pi, serta dioptimalkan berbasis inti C++ dan OnnxRuntime
  • Menyertakan model per bahasa (Inggris, Korea, Jepang, Spanyol, dll.) serta fitur Intent Recognition, sehingga developer dapat dengan mudah membangun antarmuka suara
  • Memperbaiki input tetap 30 detik, tidak adanya cache, dan keterbatasan akurasi lintas bahasa pada Whisper, sehingga menjadi alternatif yang menonjol untuk mewujudkan antarmuka suara berlatensi rendah di lingkungan edge

Gambaran umum Moonshine Voice

  • Moonshine Voice adalah toolkit AI open source untuk pengembangan aplikasi suara real-time
    • Seluruh komputasi dilakukan di perangkat lokal, sehingga menjamin respons cepat dan perlindungan privasi
    • Dengan pemrosesan streaming, teks dapat diperbarui bahkan saat pengguna sedang berbicara
  • Modelnya merupakan arsitektur yang dilatih dari nol berdasarkan riset internal, dan memberikan akurasi lebih tinggi daripada Whisper Large v3
  • Tersedia dalam berbagai ukuran, mulai dari model ultra-kecil 26MB hingga model menengah 245M parameter
  • Mendukung banyak bahasa seperti Inggris, Korea, Jepang, Tionghoa, Spanyol, Vietnam, Arab, Ukraina

Peningkatan utama dibanding Whisper

  • Menghapus jendela input tetap 30 detik milik Whisper untuk mendukung input dengan panjang variabel
  • Menambahkan fitur caching untuk mengurangi komputasi berulang saat streaming dan memangkas latensi secara signifikan
  • Dengan pelatihan model tunggal per bahasa, akurasi lebih tinggi dicapai pada ukuran model yang sama
  • Melalui library inti C++ lintas platform, API yang sama dapat digunakan dari Python, Swift, Java, dan lainnya
  • Mencapai tingkat kesalahan lebih rendah dengan model 245M parameter yang lebih kecil daripada Whisper Large v3 (1.5B parameter)

Fitur utama dan struktur API

  • Mengintegrasikan pipeline pengenalan suara ke dalam satu library untuk menangani input mikrofon, voice activity detection (VAD), konversi teks, identifikasi pembicara, dan pengenalan perintah sekaligus
  • Kelas inti:
    • Transcriber: mengubah input audio menjadi teks
    • MicTranscriber: menangani input mikrofon secara otomatis
    • IntentRecognizer: pengenalan perintah berbasis bahasa alami
  • Dengan arsitektur berbasis event, perubahan status seperti LineStarted / LineUpdated / LineCompleted dapat dideteksi secara real-time

Model dan performa

  • Moonshine Medium Streaming (245M): WER 6,65%, lebih baik daripada Whisper Large v3 (7,44%)
  • Moonshine Small Streaming (123M): WER 7,84%
  • Moonshine Tiny Streaming (34M): WER 12,00%
  • Model Tiny bahasa Korea dievaluasi dengan WER 6,46%
  • Semua model disediakan dalam format .ort berbasis OnnxRuntime dan diringankan dengan kuantisasi 8-bit

Pengembangan dan deployment

  • Dapat diinstal di lingkungan utama seperti Python (pip install moonshine-voice), Swift (SPM), Android (Maven), Windows (header C++)
  • Menyediakan paket yang dioptimalkan untuk Raspberry Pi, memungkinkan pengenalan real-time dengan mikrofon USB
  • Dirilis dengan lisensi MIT (model bahasa Inggris) dan Moonshine Community License (model bahasa lain)
  • Roadmap mendatang: meringankan binary untuk mobile, menambah bahasa, meningkatkan identifikasi pembicara, kustomisasi domain

Benchmark dan pemanfaatan

  • Kecepatan pemrosesan lebih dari 5x dibanding Whisper, cocok untuk antarmuka suara real-time
  • Dirancang dengan target latensi respons di bawah 200ms, sehingga dapat dimanfaatkan pada aplikasi percakapan
  • Melalui contoh pengenalan perintah, variasi perintah bahasa alami seperti “Turn on the lights” juga dapat dikenali
  • Performa publik telah diverifikasi di HuggingFace OpenASR Leaderboard

1 komentar

 
GN⁺ 2026-03-01
Komentar Hacker News
  • Menurut OpenASR Leaderboard, Parakeet V2/V3 dan Canary-Qwen (versi fine-tuning Qwen) punya performa lebih baik daripada Moonshine
    Ketiga model tersebut sama-sama open source, tetapi Parakeet adalah model yang paling kecil
    Saya sedang memakai Parakeet V3 secara lokal bersama Handy, dan hasilnya sangat bagus

    • Parakeet V3 memiliki jumlah parameter lebih dari dua kali lipat (600M) dibanding Moonshine Medium (245M)
      Jadi menurut saya sulit membandingkannya secara langsung
      Agak mengejutkan bahwa informasi ukuran model tidak ada di leaderboard
    • Saya baru saja mencoba Handy dan benar-benar terkesan
      Bahkan tulisan ini pun saya buat sambil berbicara lewat Handy
      Tanda baca otomatisnya juga sempurna, dan karena suara langsung diubah menjadi teks secara lokal, jauh lebih nyaman daripada Google Docs
      Dulu saya bahkan sampai memasang browser Orion supaya bisa memakai input suara berbasis Chrome, tetapi sekarang Handy saja sudah cukup
      Kecepatan mengetik saya biasanya 100~120 WPM, dan ini lebih cepat dari itu
      Ini benar-benar alat yang meningkatkan kualitas hidup
    • Saya sedang mengembangkan aplikasi transkripsi iOS yang local-first, dan berencana pindah dari Whisper Medium ke Parakeet V3
      Saat memakai codex-cli dan Handy bersama di macOS, shortcut bawaan (Option+Space) bermasalah karena menyisipkan spasi di tengah ucapan
      Sebagai gantinya, kombinasi Left Ctrl + Fn bekerja dengan rapi
      Saya penasaran shortcut apa yang dipakai orang lain
    • Saya sudah lama memakai model WhisperX, tetapi baru kali ini tahu tentang Handy
      Setelah mencobanya sendiri, hasilnya benar-benar luar biasa
      Mulai sekarang saya akan memakainya sebagai aplikasi default untuk semua pekerjaan klien
    • Handy memang aplikasi dengan kualitas sangat baik
  • Selamat atas hasilnya
    Secara pribadi, fitur streaming adalah hal yang paling menarik bagi saya
    Saya membuat aplikasi dikte untuk macOS bernama LocalVoxtral berbasis Voxtral Realtime, dan perbedaan UX antara streaming dan STT offline itu sangat besar
    Saat kata-kata langsung muncul ketika kita sedang bicara, feedback loop-nya menjadi benar-benar berbeda
    Kita bisa menangkap kesalahan dan memperbaiki kalimat secara real-time, jadi terasa jauh lebih alami
    Saya penasaran berapa sebenarnya latensi streaming Moonshine dalam penggunaan nyata
    Saya juga ingin tahu apakah ada endpoint WebSocket yang kompatibel dengan OpenAI Realtime

    • Aplikasi saya memakai paket Python moonshine-voice
      Saya memilih Moonshine sebagai default karena keseimbangan akurasi dan latensinya yang paling baik
      Ke depannya saya berencana menambahkan benchmark objektif yang membandingkan beberapa model dengan data audio yang sama
      Saya juga punya server WebSocket kustom (rift-local) yang dibuat dengan mengacu pada API Sherpa-onnx
      Server itu dioptimalkan untuk koneksi tunggal, jadi kurang cocok untuk banyak koneksi
  • Saya sudah membantu beberapa streamer Twitch menambahkan fitur transkripsi dan terjemahan ke stream mereka melalui obs-localvocal
    Penggunaan utamanya adalah mengubah suara berbahasa Jerman menjadi subtitle bahasa Inggris
    Kami butuh alternatif yang lebih cepat dan akurat daripada Whisper, tetapi para streamer lebih menyukai bentuk plugin OBS yang bisa dipasang
    Moonshine tidak punya fitur terjemahan, dan juga belum mendukung deteksi otomatis multibahasa, jadi ada keterbatasan untuk streamer yang sering code-switching
    Akan ideal jika ada fitur yang otomatis mendeteksi bahasa lalu mengganti model

  • Mengklaim akurasi lebih tinggi daripada Whisper Large v3 adalah langkah yang berani
    Saya penasaran apakah saat evaluasi masalah hallucination loop pada Whisper sudah diperhitungkan
    Saya juga ingin tahu apakah penggunaan VRAM saat deployment di edge device cocok untuk Mac 8GB
    Jika bisa berjalan tanpa kuantisasi, itu cukup signifikan

  • Dalam lingkungan streaming, stabilitas parsial lebih penting daripada sekadar WER
    Untuk asisten suara, jika transkripsi parsial berubah setiap beberapa ratus ms, UX-nya akan rusak
    Akan jauh lebih praktis jika ada metrik seperti latensi token pertama, rasio real-time, dan rasio token yang direvisi setelah 1 detik/3 detik
    Jika angka-angka ini bagus, model ini sangat menjanjikan untuk pipeline asisten lokal

    • Saya jadi penasaran apakah pada manusia juga ada semacam ‘tingkat revisi parsial’
      Saya sendiri kadang mengalami menafsir ulang ucapan saya saat sedang berbicara, dan rasanya itu sering terjadi tanpa sadar
      Kalau begitu, mungkin rasio ini tidak harus terlalu rendah
  • Bahasa yang saat ini didukung adalah Inggris, Arab, Jepang, Korea, Tiongkok, Spanyol, Ukraina, dan Vietnam, dan sebagian besar berukuran Base (58M parameter)

  • Saya tidak paham mengapa panduan instalasi Raspberry Pi merekomendasikan 'sudo pip install --break-system-packages moonshine-voice'
    Meski begitu, dokumentasinya juga memberikan alternatif menggunakan uv
    Dengan uv run, tidak perlu menjalankan perintah source secara terpisah

  • Tidak jelas apakah “peningkatan akurasi” itu berdasarkan bahasa Inggris atau multibahasa
    Setidaknya harus ada tabel WER per bahasa agar perbandingan bisa dilakukan

  • Saya penasaran apakah ada rencana dukungan JavaScript di browser
    Dulu sempat ada demo, tetapi sekarang sudah hilang
    Pernah bisa berjalan secara lokal, tetapi pada suatu titik tiba-tiba rusak tanpa alasan jelas

    • Ada port berbasis WASM bernama moonshine-js
      Ada juga dokumen perbandingan yang merangkum solusi transkripsi offline di browser
      Selain itu ada demo Moonshine terpisah berbasis transformers.js (menggunakan WebGPU, dengan fallback WASM)
  • Untuk mencoba Moonshine lewat GUI browser, jalankan perintah berikut

    uv tool install rift-local && rift-local serve --open
    

    Ini akan membuka front-end web untuk transkripsi lokal bernama RIFT, yang juga punya tombol salin
    Bisa juga dipakai untuk membandingkan dengan Web Speech API dan model lain (termasuk API cloud)
    Tautan terkait: rift-local, demo RIFT