Benchmarklar

RTF (gerçek zamanlı faktör) değerinin 1.0'ın altında olması gerçek zamanlıdan daha hızlı anlamına gelir.

Apple Silicon (MLX + CoreML)

Tüm benchmarklar M2 Max, 64 GB, macOS 14 üzerinde release derlemeleri ve derlenmiş metallib ile çalıştırıldı.

ASR — Kelime Hata Oranı

LibriSpeech test-clean üzerinde değerlendirildi (2620 söyleniş, ~5.4 saat İngilizce okuma konuşması).

ModelBitBoyutWER%RTF
Qwen3-ASR 1.7B8-bit2.3 GB2.350.090
Qwen3-ASR 1.7B4-bit1.2 GB2.570.045
Parakeet TDT 0.6BINT8634 MB2.740.089
Qwen3-ASR 0.6B8-bit960 MB2.800.025
Qwen3-ASR 0.6B4-bit675 MB3.340.023

Yayımlanmış modellerle karşılaştırma

ModelParametreBoyutHassasiyetWER%Kaynak
Qwen3-ASR 1.7B1.7B2.3 GB8-bit2.35Bu benchmark
Whisper Large v3 Turbo809M1.6 GBFP162.5OpenAI (2024)
Qwen3-ASR 1.7B1.7B1.2 GB4-bit2.57Bu benchmark
Whisper Large v31.5B3.1 GBFP162.7OpenAI (2023)
Parakeet TDT 0.6B600M634 MBINT82.74Bu benchmark
Qwen3-ASR 0.6B600M960 MB8-bit2.80Bu benchmark
Whisper Medium769M1.5 GBFP163.0OpenAI (2022)
Qwen3-ASR 0.6B600M675 MB4-bit3.34Bu benchmark
Whisper Small244M483 MBFP163.4OpenAI (2022)

Uzun biçim kararlılığı (sürekli Neural Engine yükü)

200 LibriSpeech söylenişi sırayla işlendi (~30 dakika ses, M2 Max). Sürekli transkripsiyon sırasında WER veya gecikmenin bozulup bozulmadığını test eder.

Metrikİlk %25Son %25Genel
WER%1.301.232.43
RTF0.6720.4000.539

Hiçbir bozulma tespit edilmedi. WER oturum boyunca kararlıdır. CoreML yürütme planı önbelleğini ısıttıkça RTF aslında iyileşir. 42 dakika kesintisiz Neural Engine çıkarımından sonra termal kısıtlama yok. Parakeet her parçayı bağımsız işler — parçalar arası durum birikimi yoktur.

Çok dilli sonuçlar (FLEURS)

CJK dilleri için CER kullanıldı (kelime sınırı yok). Parakeet ~25 Avrupa dilini destekler (CJK yok).

DilMetrikQwen3 4-bitQwen3 8-bitParakeet INT8
İspanyolcaWER6.445.065.18
İngilizceWER6.575.649.30
ÇinceCER8.417.71
AlmancaWER9.456.8112.33
FransızcaWER11.428.5013.02
JaponcaCER16.118.64
RusçaWER16.3510.5211.49
KoreceWER19.956.89
HintçeWER25.9318.57
ArapçaWER33.4720.31

Sıkıştırma farkı

Daha düşük bit genişliklerine niceleme nedeniyle doğruluk kaybı.

VaryantWER%Yerine KoymaEklemeSilmeToplam HataBoyut
Qwen3 0.6B 8-bit2.801111922681471960 MB
Qwen3 0.6B 4-bit3.3413231233081754675 MB
Fark+0.54+212+31+40+283-30%
Parakeet TDT INT82.749901253081423634 MB
Önemli çıkarım

Qwen3-ASR 1.7B 8-bit %2.35 WER elde eder — Whisper Large v3 Turbo'yu (%2.5) ve Whisper Large v3'ü (%2.7) geçer ve Apple Silicon üzerinde 11x gerçek zamanlı çalışır.

TTS — Gidiş-Dönüş Anlaşılırlığı

Metni sentezle, ardından elde edilen sesi Qwen3-ASR 0.6B ile yeniden transkripte et ve orijinal metne karşı WER hesapla. 30 yerleşik İngilizce sohbet cümlesi üzerinde değerlendirildi.

EngineModelParametreBoyutWER%RTF
CosyVoice30.5B 4-bit500M~1.9 GB3.250.59
Qwen3-TTS1.7B 4-bit1.7B~2.3 GB3.470.79
Qwen3-TTS1.7B 8-bit1.7B~3.5 GB3.660.85
Kokoro-82MCoreML82M~170 MB3.900.17
Qwen3-TTS0.6B 8-bit600M~960 MB9.740.76
Qwen3-TTS0.6B 4-bit600M~675 MB15.580.76

Gecikme dökümü (Qwen3-TTS)

AşamaSüreToplam %Açıklama
Embed1-3 ms<1%Metin gömme (TTFT)
Generate2-6 s~92%Otoregresif codec token'ları
Decode244-457 ms~8%Codec çözücüsünden dalga formuna
Önemli çıkarım

Tüm TTS engine'leri gerçek zamanlıdan daha hızlı çalışır (RTF < 1.0). CosyVoice3 anlaşılırlıkta öndedir (%3.25 WER). Kokoro yalnızca 170 MB ile en hızlısıdır (RTF 0.17).

VAD — Algılama Doğruluğu

FLEURS değerlendirmesi (10 dil, 250 dosya)

Aynı eşik değerinde Python FireRedVAD referans doğruluğuna karşı değerlendirildi.

EngineParametreBackendF1%FAR%MR%RTF
FireRedVAD588KCoreML (ANE)99.122.520.470.007
Silero v5309KCoreML (ANE)95.1315.761.890.022
Silero v5309KMLX (GPU)95.1115.851.890.027
Pyannote1.5MMLX (GPU)94.8614.712.920.358

VoxConverse değerlendirmesi (çoklu konuşmacı)

10 ms frame çözünürlüğünde değerlendirilen 5 çoklu konuşmacılı sohbet dosyası.

EngineParametreBackendF1%FAR%MR%RTF
Pyannote1.5MMLX (GPU)98.2250.090.190.358
Silero v5309KCoreML (ANE)97.5233.292.690.022
Silero v5309KMLX (GPU)95.9821.025.880.027
FireRedVAD588KCoreML (ANE)94.2140.125.050.007

Yayımlanmış sayılarla karşılaştırma

ModelF1%FAR%MR%ParametreVeri Kümesi
Pyannote (bizim)98.2250.090.191.5MVoxConverse
FireRedVAD (makale)97.572.693.62588KFLEURS-VAD-102
Silero (bizim)95.9821.025.88309KVoxConverse
Silero-VAD (makale)95.959.413.95309KFLEURS-VAD-102
FireRedVAD (bizim)94.2169.335.05588KVoxConverse
Önemli çıkarım

FireRedVAD FLEURS üzerinde en düşük yanlış alarm oranıyla (%2.52) %99.12 F1 elde eder ve 135x gerçek zamanlı çalışır. Silero v5, parça başına 32 ms ile en iyi akış seçeneğini sunar.

Wake-Word / Anahtar Kelime Algılama

KWS Zipformer (gigaspeech ince ayarlı)

CoreML üzerinde INT8 palettization ile streaming Zipformer2 transducer (3.49M parametre, Apache-2.0). LibriSpeech test-clean üzerinde 12 anahtar kelimeye karşı değerlendirildi (158 pozitif söyleniş, 60 negatif). Ayarlanmış eşikler: acThreshold = 0.15, contextScore = 0.5, numTrailingBlanks = 1.

MetrikDeğerNotlar
RTF (CPU + Neural Engine)0.04M serisinde 26× gerçek zamanlı
Recall (12 anahtar kelime)88%LibriSpeech test-clean, 158 pozitif söyleniş
Söyleniş başına yanlış pozitif0.2760 negatif söyleniş
CoreML INT8 vs PyTorch FP3299%Çıkış uyumu
Derlenmiş model boyutu~4 MBencoder 3.3 MB + decoder 525 KB + joiner 160 KB
Çalışma zamanı belleği~6 MBAğırlıklar + encoder durum önbellekleri

Ayarlanmış varsayılanlar, upstream icefall varsayılanlarına (acThreshold = 0.25, contextScore = 2.0) kıyasla recall'ı %62'den %88'e çıkardı (ve söyleniş başına FP'yi 0.43'ten 0.27'ye düşürdü). Anahtar kelime dosyası formatı ve kelime başına eşik ayarı için wake-word kılavuzuna bakın.

Konuşmacı Gömmeleri

Çıkarım gecikmesi

20 saniyelik ses klibi, ısınma sonrası 10 yineleme.

ModelBoyutBackendGecikme
CAM++ (3D-Speaker)192CoreML (ANE)12 ms
WeSpeaker ResNet34-LM256MLX (GPU)64 ms
WeSpeaker ResNet34-LM256CoreML (ANE)143 ms

Gömme kalitesi (VoxConverse)

5 çoklu konuşmacılı kayıttan segment düzeyindeki gömmeler arasındaki kosinüs benzerliği. Daha yüksek ayrım = daha iyi konuşmacı ayırt etme.

ModelBackendAynı KonuşmacıFarklı KonuşmacıAyrım
WeSpeakerMLX0.7260.1420.584
WeSpeakerCoreML0.7260.1430.582
CAM++CoreML0.7230.3950.328
Önemli çıkarım

Üç engine de Python pyannote referansıyla eşleşir (0.577 ayrım, kosinüs benzerliği >0.96). WeSpeaker hem MLX hem de CoreML üzerinde 0.584 ayrım elde eder. CAM++ 5x daha hızlı çalışır (12 ms vs 65 ms) ve iyi ayrım (0.328) sunar.

Kaynak Ayırma — SDR

MUSDB18-HQ üzerinde Sinyal-Bozulma Oranı (SDR) (50 tam uzunluklu test parçası, stereo 44.1kHz). Daha yüksek daha iyidir. İki model boyutu: HQ (stem başına 8.9M parametre) ve L (stem başına 28.3M parametre).

HedefUMX-HQ (MLX)UMX-L (MLX)UMX-HQ (yayımlanmış)
Vokal6.23 dB~10.5 dB6.32 dB
Davul6.44 dB~7.0 dB5.73 dB
Bas4.56 dB~5.5 dB5.23 dB
Diğer3.41 dB~4.5 dB4.02 dB
ModelParametre/stemBoyutRTFHız
Open-Unmix HQ8.9M136 MB0.234.3x gerçek zamanlı
Open-Unmix L28.3M432 MB0.214.8x gerçek zamanlı
Önemli çıkarım

UMX-HQ, hafif 8.9M modeliyle vokal ve davullarda yayımlanmış SDR'yi yakalar. UMX-L 3 kat daha büyük model boyutunda +2–4 dB iyileşme sağlar. Her ikisi de çok kanallı Wiener EM son filtreleme içerir ve Apple Silicon üzerinde gerçek zamanlıdan daha hızlı çalışır.

Yeniden Üretim

# ASR benchmarks (LibriSpeech test-clean)
make build
python scripts/benchmark_asr.py --batch --engine qwen3 --model 0.6B
python scripts/benchmark_asr.py --batch --engine qwen3 --model 0.6B-8bit
python scripts/benchmark_asr.py --batch --engine parakeet
python scripts/benchmark_asr.py --batch --engine parakeet --model int8

# ASR multilingual (FLEURS, auto-download)
python scripts/benchmark_asr.py --dataset fleurs --language en_us --batch

# TTS round-trip
python scripts/benchmark_tts.py --compare

# VAD comparison
python scripts/benchmark_vad.py --compare

# Speaker embeddings comparison
python scripts/benchmark_speaker.py --compare

# Source separation (MUSDB18-HQ, download from Zenodo)
python scripts/benchmark_separation.py --data-dir benchmarks/data/musdb18-hq