AnySpeechRecognizer Rilis: AI Suara dan Keputusan Lokal di Apple
Hugging Face ngerilis AnySpeechRecognizer dan AnyDecisionModel buat ekosistem Apple. Kamu bisa transkripsi suara dan ambil keputusan AI langsung di Mac dan iPhone.
· 10 menit baca

Inti singkat
- AnySpeechRecognizer mengintegrasikan model terbuka seperti Parakeet dan Qwen3-ASR ke API SpeechAnalyzer Apple.
- Paket ini menambahkan fitur speaker diarization dengan NVIDIA Streaming Sortformer untuk melacak siapa yang bicara.
- AnyDecisionModel mengambil keputusan lewat probabilitas token langsung tanpa repot mem-parsing teks generasi LLM.
- Kedua pustaka berjalan lokal di Apple Silicon memakai Core ML dan MLX demi privasi data dan efisiensi biaya.
Daftar isi9 bagian
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
Hugging Face baru saja ngerilis AnySpeechRecognizer dan AnyDecisionModel, dua paket Swift open source yang ngebawa model kecerdasan buatan terbuka buat suara dan pengambilan keputusan langsung di perangkat Apple. Pembaruan ini bikin developer aplikasi iOS dan macOS bisa ngejalanin model speech-to-text dan klasifikasi terstruktur secara lokal tanpa harus ngirim data pengguna ke server luar.
Selama ini, banyak developer cenderung ngelempar semua beban kerja ke model bahasa besar (LLM). Mau dengerin rekaman panggilan pelanggan? Kirim audionya ke LLM. Mau nentuin komplain tadi harus diterusin ke divisi mana? Minta LLM buat jawab lagi. Padahal, menurut laporan resmi Hugging Face yang ditulis oleh Mattt, pendekatan kayak gitu sering kali boros biaya, lambat, dan kurang presisi dibanding memakai model khusus yang memang dirancang buat tugas masing-masing.
Setelah sebelumnya ngerilis AnyLanguageModel 1.0 buat standarisasi LLM di ekosistem Swift, Hugging Face sekarang ngelanjutin strategi yang sama ke ranah suara dan logika keputusan. Hasilnya adalah dua pustaka bertenaga yang bisa kamu pasang langsung di Mac dan iPhone dengan API Swift yang udah sangat familiar.
Panduan gratis · gratis
Panduan Cepat API AI untuk Developer
Dari request pertama sampai siap produksi: contoh kode, streaming, kontrol biaya, keamanan API key, dan penanganan error.
- Contoh request dengan cURL, Python, dan JavaScript
- Streaming dan format OpenAI vs Anthropic
- Cara mengontrol biaya token
- Checklist keamanan dan siap produksi
Apa Itu AnySpeechRecognizer dan Kenapa Dibutuhkan?
Di sistem operasi macOS 26 dan iOS 26, Apple sebenarnya udah ngenalin API modern bernama SpeechAnalyzer. Konsep API ini rapi banget: kamu tinggal nambahin modul kayak SpeechTranscriber dan SpeechDetector ke dalam satu analyzer, masukin file rekaman atau aliran buffer audio langsung dari mikrofon, lalu baca teks hasilnya lewat async sequence saat kata-kata mulai terdeteksi. Pengelolaan unduhan bobot modelnya juga udah diatur rapi lewat AssetInventory.
Masalahnya cuma satu: Apple cuma nyediain mesin transkripsi bawaan mereka sendiri di balik API itu. Kalau akurasinya kurang memuaskan buat kebutuhan proyekmu, kamu nggak punya opsi resmi buat ganti mesin. Nah, di sinilah AnySpeechRecognizer masuk. Paket ini mempertahankan bentuk API bawaan Apple, tapi ngasih kamu kebebasan penuh buat milih mesin pengenal suara open source kelas dunia.
Untuk mulai makai di proyek Xcode, kamu bahkan cuma perlu ngubah satu baris impor:
- import Speech
+ import AnySpeechRecognizerPaket ini menduplikasi modul SpeechAnalyzer, SpeechTranscriber, DictationTranscriber, SpeechDetector, dan AssetInventory. Kalau kode proyekmu udah pakai modul standar itu, ganti impor aja udah langsung jalan dengan mesin default Apple. Begitu kamu mau beralih ke model NVIDIA Parakeet, kamu cuma perlu ngubah inisialisasi transkribernya:
let transcriber = SpeechTranscriber(
model: ParakeetSpeechModel(variant: .v3),
transcriptionOptions: [],
reportingOptions: [.volatileResults],
attributeOptions: [.audioTimeRange]
)Semua langkah lain, mulai dari pengecekan aset sampai pembacaan hasil transkripsi berkala, tetap persis sama kayak dokumentasi resmi Apple. Praktis banget kan?
Pilihan Model Speech-to-Text: Parakeet vs Qwen3-ASR di Core ML
Biar model-model open source ini bisa ngebut di Apple Silicon, tim Hugging Face udah mengonversi arsitekturnya ke format Core ML dan mengunggahnya langsung ke Hugging Face Hub. Sebagian besar alur konversinya ngikutin skrip mobius dari FluidInference.
Berikut daftar model Core ML yang tersedia di Hub beserta lisensi dan ukurannya:
| Model | Checkpoint Asal | Lisensi | Ukuran Download |
|---|---|---|---|
| Parakeet TDT 0.6B v3 | nvidia/parakeet-tdt-0.6b-v3 | CC BY 4.0 | ~600 MB |
| Parakeet Ultra | moondream/parakeet-ultra | CC BY 4.0 | ~600 MB |
| Parakeet Unified EN 0.6B | nvidia/parakeet-unified-en-0.6b | NVIDIA Open Model License | ~600 MB |
| Qwen3-ASR 0.6B | Qwen/Qwen3-ASR-0.6B-hf | Apache 2.0 | ~0.9 GB |
| Qwen3-ASR 1.7B | Qwen/Qwen3-ASR-1.7B-hf | Apache 2.0 | ~2.4 GB |
| Streaming Sortformer 4spk v2 | nvidia/diar_streaming_sortformer_4spk-v2 | CC BY 4.0 | ~250 MB |
| Streaming Sortformer 4spk v2.1 | nvidia/diar_streaming_sortformer_4spk-v2.1 | NVIDIA Open Model License | ~250 MB |
NVIDIA Parakeet v3 adalah model 0.6B yang bisa mengenali 25 bahasa Eropa. Kerennya, Parakeet langsung nebak bahasa apa yang lagi didengar tanpa perlu kamu tentuin secara manual di kode. Kalau kamu butuh akurasi yang lebih tinggi lagi, ada Parakeet Ultra, hasil racikan post-training dari Moondream yang terbukti lebih presisi di banyak pengukuran. Buat aplikasi yang fokus ke bahasa Inggris saja, ada varian Parakeet Unified.
Ketiga varian Parakeet ini jalan di runtime Core ML khusus bawaan paket AnySpeechRecognizer. Runtime ini mendukung transkripsi file rekaman maupun audio mikrofon live, hasil sementara (volatile results), waktu per kata (word timing), sampai skor keyakinan (word confidence).
Sementara itu, Qwen3-ASR adalah model suara bikinan Alibaba dengan ukuran 0.6B dan 1.7B. Model ini mendukung 30 bahasa dan 22 dialek bahasa Mandarin, termasuk Kanton, Jepang, dan Korea yang belum tercakup di Parakeet. Kamu bisa biarin model mendeteksi bahasa otomatis atau ngunci bahasa tertentu lewat parameter Swift:
let transcriber = SpeechTranscriber(
model: QwenSpeechModel(variant: .large, language: Locale.Language(identifier: "yue")),
transcriptionOptions: [],
reportingOptions: [],
attributeOptions: []
)Bedanya, Qwen3-ASR ngeluarin satu hasil akhir utuh per segmen audio maksimal 40 detik, tanpa fitur hasil sementara atau penanda waktu per kata. Karena model ini jalan di GPU dan prosesnya lebih berat dibanding Parakeet, Qwen3-ASR jauh lebih pas dipakai buat nranskripsi file rekaman ketimbang audio live.
Fitur Speaker Diarization dengan NVIDIA Streaming Sortformer
Kekurangan paling kentara dari framework Speech bawaan Apple adalah ketiadaan modul speaker diarization—fitur penting buat membedakan siapa yang lagi ngomong saat ada obrolan banyak orang. AnySpeechRecognizer melengkapi kelemahan ini dengan modul baru bernama SpeakerDiarizer.
Modul ini ngejalanin model NVIDIA Streaming Sortformer langsung di atas Core ML, beriringan dengan modul transcriber Apple atau Parakeet di dalam garis waktu yang sama:
let diarizer = SpeakerDiarizer(model: SortformerDiarizationModel())
if let request = try await AssetInventory.assetInstallationRequest(
supporting: [transcriber, diarizer]
) {
try await request.downloadAndInstall()
}
let analyzer = SpeechAnalyzer(modules: [transcriber, diarizer])Sortformer sanggup melacak sampai 4 pembicara secara simultan, bahkan pas mereka berdua atau bertiga ngomong barengan saling tumpang tindih. Hasilnya bakal dirangkum ke objek SpeakerTimeline yang mengaitkan setiap kata bertempo waktu ke orang yang ngucapinnya. Jadi, kamu bisa mencetak transkrip percakapan rapi berdasarkan giliran bicara masing-masing orang. Secara bawaan, modul ini pakai Sortformer v2, tapi kamu juga bisa milih v2.1 yang dilatih pakai data rekaman rapat lebih banyak.
Uji Performa dan Word Error Rate di Mac Studio M4 Max
Biar nggak sekadar klaim kosong, tim Hugging Face menguji performa AnySpeechRecognizer pakai tool command-line bawaan bernama hear. Pengujian dilakukan di komputer Mac Studio bertenaga Apple M4 Max dengan sistem operasi macOS 27.0.1. Tolok ukurnya memakai dataset audio standar LibriSpeech (durasi file 3 sampai 8 menit), dengan metrik Word Error Rate (WER—makin kecil angkanya, makin sedikit kata yang salah dengar):
| Engine Transkripsi | Mode Audio | WER test-clean | WER test-other |
|---|---|---|---|
| Parakeet Unified | File | 1.43% | 2.19% |
| Parakeet Unified | Live mic | 1.45% | 2.42% |
| Parakeet v3 | File | 1.55% | 2.78% |
| Parakeet v3 | Live mic | 4.73% | 4.29% |
| Parakeet Ultra | File | 1.66% | 2.55% |
| Parakeet Ultra | Live mic | 2.65% | 3.28% |
| Apple Speech bawaan | File | 2.12% | 3.97% |
Dari tabel di atas, keluarga model Parakeet kelihatan unggul telak mengalahkan transkriber bawaan Apple, baik di rekaman bersih (test-clean) maupun audio berisik (test-other). Soal kecepatan, Parakeet mampu menuntaskan file audio berdurasi 1 jam cuma dalam 20 sampai 40 detik saat membaca file, atau sekitar 1,5 sampai 2,5 menit pada mode live streaming.
Penggunaan memorinya juga sangat irit, cuma sekitar 100 MB setelah model Core ML selesai dikompilasi ke RAM. Sebagai perbandingan, Qwen3-ASR jauh lebih lambat dan butuh memori beberapa gigabyte di GPU. Meski begitu, Hugging Face mengingatkan kalau situasi rapat asli tetap sangat sulit buat semua engine: di dataset AMI di mana para peserta rapat sering memotong pembicaraan lawan bicara, semua model yang diuji mencatatkan WER di atas 23%.
AnyDecisionModel: Cara Baru Ambil Keputusan AI Tanpa Teks Bebas
Kalau AnySpeechRecognizer memperluas API Apple, paket kedua yaitu AnyDecisionModel bener-bener ngenalin paradigma baru buat developer Swift. Selama ini, cara paling umum meminta LLM mengambil keputusan adalah dengan mengirim prompt panjang, lalu mem-parsing string balasan dari model.
Masalahnya, model sering ngetik format yang nggak konsisten atau ngelantur. Selain itu, cara teks bebas ini nggak ngasih tahu seberapa yakin model terhadap opsi alternatif lainnya. AnyDecisionModel ngubah total pendekatan itu: jawaban diambil langsung dari kalkulasi probabilitas token di satu kali tarikan komputasi (forward pass), bukan dari teks yang di-generate.
Lihat betapa bersihnya kode Swift saat mengklasifikasi tiket aduan pelanggan berikut:
import AnyDecisionModel
enum Department: String, Choosable {
case billing, technical, sales
}
let ticket = "Saldo saya kepotong dua kali saat transaksi, terus pas mau ajukan komplain aplikasinya malah keluar sendiri."
let model = MLXDecisionModel(modelID: "mlx-community/Qwen3-4B-Instruct-2507-4bit")
let session = DecisionSession(model: model, state: .text(ticket))
let urgent = try await session.probability(of: "Apakah pesan ini mendesak?")
let team = try await session.choice("Masuk divisi mana?", from: Department.self)
let anger = try await session.score(
"Seberapa marah pelanggan ini?",
levels: ["Tenang", "Frustrasi", "Sangat marah"]
)Variabel urgent menghasilkan angka probabilitas desimal (Double). Variabel team bertipe data Choice<Department> yang langsung memuat case enum Swift asli lengkap dengan probabilitas tiap opsi dan nilai keyakinan. Karena enum Department mengikuti protokol Choosable, variabel team.value bisa langsung dipakai di blok percabangan switch tanpa khawatir error parsing string.
Pernyataan: Pelanggan mengalami saldo terpotong ganda dan aplikasi menutup otomatis saat proses pengaduan.Pertanyaan: Apakah kendala ini masuk ke dalam kategori gangguan teknis aplikasi?Pilihan: [Ya, Tidak]
Biar probabilitasnya akurat, backend lokal AnyDecisionModel menyediakan fitur Calibration buat mengatur temperatur jawaban, serta rotationDebiasing. Fitur de-biasing ini penting banget karena LLM sering kali bias memilih opsi jawaban yang posisinya berada di paling awal urutan daftar.
Demo Emoji Magnet dan Model Keputusan Berbasis Clef-Flash
Sebagai bukti konsep, tim Hugging Face merilis aplikasi demo macOS bernama Emoji Magnet yang ada di repositori AnyDecisionModel-Examples. Aplikasi ini menampilkan bidang berisi 343 buah emoji. Saat pengguna mengetik frasa seperti "benda yang kamu pakai", emoji pakaian dan sepatu bakal otomatis terangkat ke atas tumpukan.
Aplikasi Emoji Magnet sama sekali nggak punya aturan kata kunci manual. AI yang memutuskan semuanya saat aplikasi berjalan. Setiap kali pengguna berhenti mengetik, aplikasi mengevaluasi 343 pertanyaan ya-atau-tidak ke model lokal Qwen3 4B via backend MLX. Berkat teknik prefix caching, satu kelompok berisi 16 pertanyaan bisa diselesaikan cuma dalam 0,45 detik di Mac M4 Max, dan seluruh 343 emoji tuntas dievaluasi dalam 10 detik.
Selain membaca probabilitas token dari LLM biasa, AnyDecisionModel juga mendukung model keputusan murni seperti Clef buatan Cloudflare. Clef punya arsitektur decision head khusus yang dilatih buat memetakan status teks ke skema pertanyaan secara serentak. Varian Clef-Flash 9B dengan kuantisasi 4-bit (ukuran download 6,2 GB) bisa dijalankan di Mac dengan RAM minimal 16 GB lewat modul MLXHeadDecisionModel.
Enam Pilihan Backend di AnyDecisionModel
AnyDecisionModel dirancang fleksibel dengan menyediakan enam backend berbeda sesuai infrastruktur yang kamu miliki:
- MLX: Menjalankan model bahasa kecil di chip Apple Silicon memakai pustaka
mlx-swift-lm. - MLX decision heads: Menjalankan model yang punya kepala keputusan terlatih seperti Clef-Flash.
- Core AI: Mengakses model Core AI bawaan di macOS 27 dan iOS 27.
- llama.cpp: Membaca probabilitas keputusan dari file model kuantisasi GGUF lokal melalui
llama.swift. - Jev: Memanggil API hosted System One dari TypeSafe secara cloud.
- Ollama: Terhubung ke server Ollama lokal (butuh versi 0.35.0 ke atas) atau layanan cloud Ollama (versi 0.40.5 ke atas).
Paket ini memanfaatkan fitur Swift package traits. Tanpa mengaktifkan trait tambahan, paket ini nggak punya dependensi pihak ketiga sama sekali dan bisa dikompilasi di Linux untuk backend Jev serta Ollama. Kalau kamu mau komputasi offline di perangkat Mac, cukup aktifkan trait MLX, CoreAI, atau Llama.
Panduan Mulai: Instalasi Package.swift dan Tool CLI hear
Buat nyobain kedua pustaka ini di proyek aplikasi Apple kamu, pastikan lingkungan kerjamu sudah menggunakan Swift 6.2 ke atas dan menargetkan macOS 26 atau iOS 26 ke atas. Khusus backend MLX dan runtime Core ML Parakeet, kamu wajib menggunakan komputer Mac berbasis chip Apple Silicon.
Tambahkan dependensi paket ke dalam berkas Package.swift proyekmu:
dependencies: [
.package(url: "https://github.com/mattt/AnySpeechRecognizer", from: "0.1.0"),
.package(
url: "https://github.com/mattt/AnyDecisionModel",
from: "0.6.0",
traits: ["MLX"]
),
]Kalau kamu pengin langsung menguji transkripsi audio lewat Terminal sebelum menulis kode aplikasi, paket AnySpeechRecognizer menyertakan tool CLI bernama hear. Siapkan aset model terlebih dahulu lalu proses file rekamanmu:
hear prepare --backend parakeet
hear rekaman-rapat.wav --backend parakeetDampak Nyata untuk Developer dan Pengguna di Indonesia
Peluncuran AnySpeechRecognizer dan AnyDecisionModel memberikan keuntungan besar buat pengembangan ekosistem aplikasi di Indonesia:
- Kepatuhan Privasi dan UU PDP: Banyak aplikasi lokal di sektor hukum, perbankan, dan telemedis ragu memanfaatkan AI transkripsi karena takut melanggar Undang-Undang Pelindungan Data Pribadi (UU PDP). Dengan memproses suara rekaman dan keputusan penanganan tiket langsung di perangkat Mac atau iPhone karyawan, data rahasia sama sekali nggak perlu dikirim ke server pihak ketiga di luar negeri.
- Penghematan Biaya Operasional: Memakai cloud API speech-to-text komersial untuk ratusan jam audio rekaman per bulan biayanya bisa menguras kantong. Model Core ML terbuka seperti Parakeet berukuran sekitar 600 MB bisa diunduh sekali di perangkat pengguna dan dijalankan tanpa biaya tagihan API berkala.
- Transkripsi Asia dengan Qwen3-ASR: Kehadiran model Qwen3-ASR yang mendukung dialek Asia di Core ML jadi nilai tambah besar buat wilayah Asia Tenggara dibanding model-model barat yang kaku.
Kalau sistem aplikasi Apple kamu butuh kombinasi antara pemrosesan suara lokal dan pemikiran analitis kompleks di cloud, kamu bisa menghubungkannya dengan model frontier melalui Classai Router. Developer dapat memanggil model kelas dunia seperti qwen3.7-max (Rp1.440 / Rp7.170 per 1 juta token) atau claude-sonnet-5 (Rp3.210 / Rp15.750 per 1 juta token) lewat satu API key yang kompatibel dengan SDK OpenAI tanpa ribet urusan kartu kredit luar negeri.
Buat kamu yang tertarik memperdalam skill arsitektur kecerdasan buatan, kamu bisa cek pilihan kelas teknis di Kelas Developer Classai. Saatnya mulai eksplorasi AnySpeechRecognizer di Xcode dan rasakan sendiri kemudahan membangun AI suara lokal di ekosistem Apple!
Sumber & referensi
- 01
Hugging Face · 29 Oktober 2026
Introducing AnySpeechRecognizer and AnyDecisionModel: Open Models for Speech and Decisions on Apple Platforms
Artikel ini ditulis ulang oleh Tim Classai dengan bantuan AI berdasarkan sumber di atas — bukan terjemahan. Ada yang keliru? Kabari kami di [email protected].
Pertanyaan yang sering ditanyakan
Apa kelebihan AnySpeechRecognizer dibanding framework Speech bawaan Apple?
AnySpeechRecognizer memungkinkan developer memilih mesin AI terbuka seperti NVIDIA Parakeet dan Alibaba Qwen3-ASR yang terbukti lebih akurat di berbagai pengujian, serta menambahkan fitur speaker diarization untuk mendeteksi siapa yang berbicara.
Apakah AnySpeechRecognizer dan AnyDecisionModel butuh koneksi internet?
Koneksi internet hanya dibutuhkan saat pertama kali mengunduh model dari Hugging Face Hub ke cache lokal perangkat. Setelah bobot terpasang, seluruh proses transkripsi suara dan kalkulasi keputusan berjalan sepenuhnya offline tanpa internet.
Apa bedanya AnyDecisionModel dengan pemanggilan LLM biasa lewat prompt teks?
AnyDecisionModel membaca probabilitas token model secara langsung dalam satu kali proses komputasi tanpa menghasilkan teks bebas. Cara ini menghasilkan tipe data Swift yang strongly-typed, minim latensi, dan bebas risiko format teks ngaco atau halusinasi.
Perangkat Apple apa saja yang kompatibel menjalankan pustaka ini?
Kamu membutuhkan Mac, iPhone, atau iPad yang menjalankan minimal macOS 26 atau iOS 26 dengan Swift 6.2 ke atas. Khusus untuk runtime Parakeet Core ML dan backend inferensi MLX, perangkat wajib menggunakan prosesor Apple Silicon.

Classai Weekly
dari Luthfi · Setiap Senin, 06.30 WIB
Nggak sempat ngikutin berita AI? Biar aku yang rangkumin tiap Senin.
- 5 berita AI paling penting minggu ini — udah disaring, nggak perlu baca puluhan situs
- Kenapa itu penting buat kamu — plus opini jujur Luthfi soal arahnya
- 1 prompt siap pakai yang bisa langsung dicoba
- Pilihan kelas & model AI minggu ini — kadang ada promo khusus pelanggan
Langkah berikutnya
Sudah paham teorinya. Sekarang praktikkan.
Daftar, isi saldo mulai puluhan ribu rupiah, dan panggil model AI pilihanmu dari kode yang sudah ada.
Ditulis oleh
Pengembang Classai Router
Tim Engineering Classai membangun dan menjalankan Classai Router, gateway API AI yang kompatibel dengan format OpenAI dan Anthropic. Kami menulis panduan teknis dari pengalaman mengoperasikan API AI setiap hari.


