Maskinoversættelse · Engelsk original
Ydelsestests
RTF (realtidsfaktor) under 1.0 betyder hurtigere end realtid.
Apple Silicon (MLX + CoreML)
Alle benchmarks Apple M5 Pro, 48 GB macOS 25.5 med slipopbygning og kompileret metallib. Hver motor kører i en separat børneproces (asr-bench --isolated) så Peak RSS kolonne er den reelle per- motor omkostninger, ikke en sekventiel høj-vand mærke.
ASR - ordfejlrate
Evalueret den LibriSpeech test- clean, første 200 Udtryk (~30 ), som er en del af den engelske tale. WER beregnet via en Whisper-stil normalizer + Levenshtein over whitespace tokens. Qwen3-ASR 5- bit rækker blev målt på en 100- uterance delmængde af samme stativ på M- serien (tilføjet, når 5-bit variant landede); samme normalizer, samme datasæt.
| Motor | Quant | WER% | RTF | xRT | Peak RSS |
|---|---|---|---|---|---|
| Qwen3-ASR 1.7B MLX | 5- bit | 1.32 | 0.027 | 36.4× | 1,92 GB |
| Qwen3-ASR 1.7B MLX | 8-bit | 1.52 | 0.033 | 30.5× | 2.7 GB |
| Qwen3-ASR 0.6B MLX | 8-bit | 1.82 | 0.015 | 66.0× | 1,3 GB |
| Qwen3-ASR 0.6B MLX | 5- bit | 1.74 | 0.014 | 70.5× | 1,03 GB |
| WhisperKit Large-v3 Turbo | FP16 | 1.71 | 0.084 | 11.9× | 0.4 GB |
| WhisperASR indfødt CoreML | FP16 | 1.40 | 0.089 | 14.0× | 384 MB |
| Qwen3-ASR 0.6B MLX | 4- bit | 2.20 | 0.012 | 85.6× | 1.0 GB |
| Parakeet TDT v3 | INT8 | 2.37 | 0.009 | 117.4× | 0.9 GB |
| Qwen3-ASR 0.6B CoreML | INT8 | 3.02 | 0.098 | 10.2× | 1,4 GB |
| Omnilingual CTC 300M MLX | 4- bit | 4.26 | 0.005 | 222.1× | 0.4 GB |
| Omnilingual CTC 300M CoreML | INT8 | 5.67 | 0.128 | 7.8× | 0.5 GB |
| Nemotron Streaming | INT8 | 2.82 | 0.058 | 17.1× | 961 MB |
Hovedvalg: Qwen3-ASR MLX 1.7B 5- bit er den nye nøjagtighed leder på 1.32% WER - slår WhisperKit Large-v3 Turbo (1.71%) og vores egen 1.7B 8- bit (1.52%), mens du bruger ~600 MB minus spidsværdi RSS end 8- bit and run 23% Hurtigere. Parakeet TDT v3 er den hurtigste for engelsk- kun (117× realtid 25 Europæiske sprog). 300Læ MLX 4-bit er den flersprogede gennemløbsleder: 222× realtid 384 MB-top 1 672 sprog.
Qwen3-ASR 0.6B CoreML rækken afspejler den genopbyggede blokerings- opmærksomhed encoder (aufklarer / Qwen3-ASR-CoreML) - den tidligere eksport kørte umaskeret global selvopmærksomhed over nulpolstret mel og udledt <|im_end|> lige efter den første dom-sidste periode (24.88% WER på samme stativ før genopbygningen).
Har du brug for en fokuseret beslutningsvejledning? Se Qwen3-ASR vs Whisper: nøjagtighed, hastighed og hukommelse.
Diarisering måles separat på otte sprog: se højttaler-diariseringsbenchmarks for DER og specter- count aftale på tværs af pyannote Community-1, NVIDIA Sortformer MOSS og tale Cloud API.
Stabilitet i lang form (vedvarende belastning af Neural Engine)
200 LibriSpeech udtaler behandlet sekventielt (~ 30 min audio, M5 Pro). Test om WER eller latency degraderes under vedvarende transskription.
| Metric | Første 25% | Sidste 25% | I alt |
|---|---|---|---|
| WER% | 1.30 | 1.23 | 2.43 |
| RTF | 0.672 | 0.400 | 0.539 |
Ingen nedbrydning detekteret. WER er stabil på tværs af sessionen. RTF faktisk forbedres som CoreML varmer op for dens udførelsesplan cache. Ingen termisk væltning efter 42 minutter af kontinuerlig Neural Engine Inferens. Parakeet processer hver klump uafhængigt - ingen cross-chunk tilstand akkumulation.
Flersprogede resultater (FLEURS)
CER bruges til CJK sprog (ingen ord grænser). Parakeet understøtter ~ 25 europæiske sprog (ingen CJK).
| Sprog | Metric | Qwen3 4- bit | Qwen3 8- bit | Parakeet INT8 |
|---|---|---|---|---|
| Spansk | WER | 6.44 | 5.06 | 5.18 |
| Engelsk | WER | 6.57 | 5.64 | 9.30 |
| Kinesisk | CER | 8.41 | 7.71 | — |
| Tysk | WER | 9.45 | 6.81 | 12.33 |
| Fransk | WER | 11.42 | 8.50 | 13.02 |
| Japansk | CER | 16.11 | 8.64 | — |
| Russisk | WER | 16.35 | 10.52 | 11.49 |
| Koreansk | WER | 19.95 | 6.89 | — |
| Hindi | WER | 25.93 | 18.57 | — |
| Arabisk | WER | 33.47 | 20.31 | — |
Kompressionsdelta
Nøjagtighed tab fra kvantisering til lavere bit bredder.
| Variant | WER% | Stedfortrædere | Indsættelse | Sletning | Fejl i alt | Størrelse |
|---|---|---|---|---|---|---|
| Qwen3 0.6B 8- bit | 2.80 | 1111 | 92 | 268 | 1471 | 960 MB |
| Qwen3 0.6B 4- bit | 3.34 | 1323 | 123 | 308 | 1754 | 675 MB |
| Delta | +0.54 | +212 | +31 | +40 | +283 | -30% |
| Parakeet TDT INT8 | 2.74 | 990 | 125 | 308 | 1423 | 634 MB |
Qwen3-ASR 1.7B MLX 1.32% WER på 5- bit (1.52% på 8- bit) - slå WhisperKit Large-v3 Turbo (1.71%) under kørsel på 30-36× realtid den Apple Silicon.
TTS - Round- Trip Intelligens
Synthesize tekst, derefter transcribe audio tilbage med Qwen3-ASR 0.6B og beregne WER mod den oprindelige tekst. Evalueret på 30 build- i engelske konversationstimer.
| Motor | Model | Paramboler | Størrelse | WER% | RTF |
|---|---|---|---|---|---|
| CosyVoice3 | 0.5B 4- bit | 500M | ~ 1,9 GB | 3.25 | 0.59 |
| Qwen3-TTS | 1.7B 4- bit | 1.7B | ~ 2,3 GB | 3.47 | 0.79 |
| Qwen3-TTS | 1.7B 8- bit | 1.7B | ~ 3,5 GB | 3.66 | 0.85 |
| Kokoro-82M | CoreML | 82M | ~ 170 MB | 3.90 | 0.17 |
| Qwen3-TTS | 0.6B 8- bit | 600M | ~ 960 MB | 9.74 | 0.76 |
| Qwen3-TTS | 0.6B 4- bit | 600M | ~ 675 MB | 15.58 | 0.76 |
Stemmekloning (nulstillingsskud)
Zero- shot voice kloning fra det samme 12 s referenceklip; rundtur = Qwen3-ASR transskription af output sammenlignet med input tekst. Apple M5 Pro, 48 GB; RTF er vægtid af lyd sekunder (lavere er hurtigere).
| Motor | WER% | Peak RSS | Lyd | Synthesizerbaijan. kgm | RTF | Roundtrip |
|---|---|---|---|---|---|---|
| Higgs TTS 3 (klon) | 4B bf16 | 8,6 GB | 6.04 s. | 4.73 s | 0.78 | nøjagtig |
| F5-TTS (16 trin) | 336Læ fp16 | 0.8 GB | 5.09 s | 2.91 s | 0.57 | 1-ord sub |
| F5-TTS (32 trin) | 336Læ fp16 | 0.8 GB | 5.09 s | 5.75 s | 1.13 | 1-ord sub |
| IndexTTS2 (klon) | 1.5B- klasse fp16 | 3.0 GB | 5.80 s | 5.8 s | 1.0 | nøjagtig |
Opdeling efter late (Qwen3-TTS)
| Fase | Tid | I% af I alt | Varebeskrivelse |
|---|---|---|---|
| Indlejret | 1-3 ms | <1% | Tekstindlejring (TTFT) |
| Generér | 2-6 s | ~92% | Autoregressive codec-tokens |
| DecodeCity in Italy | 244- 457 ms | ~8% | Codec dekoder til bølgeform |
Alle TTS motorer kører hurtigere end realtid (RTF < 1.0). CosyVoice3 Forklarende bemærkninger (3.25% WER). Kokoro er den hurtigste (RTF 0.17) kun 170 MB.
VAD - Detektionsnøjagtighed
FLEURS evaluering (10 sprog, 250 filer)
Evalueret mod Python FireRedVAD referencejord sandhed på samme tærskel.
| Motor | Paramboler | Backend | F1% | FAR% | % | RTF |
|---|---|---|---|---|---|---|
| FireRedVAD | 588K | CoreML (AN) | 99.12 | 2.52 | 0.47 | 0.007 |
| Silero v5 | 309K | CoreML (AN) | 95.13 | 15.76 | 1.89 | 0.022 |
| Silero v5 | 309K | MLX (GPU) | 95.11 | 15.85 | 1.89 | 0.027 |
| Pyannote | 1.5M | MLX (GPU) | 94.86 | 14.71 | 2.92 | 0.358 |
VoxConverse-evaluering (multihøjttaler)
5 multi-højttaler samtale filer evalueret på 10 ms frame opløsning.
| Motor | Paramboler | Backend | F1% | FAR% | % | RTF |
|---|---|---|---|---|---|---|
| Pyannote | 1.5M | MLX (GPU) | 98.22 | 50.09 | 0.19 | 0.358 |
| Silero v5 | 309K | CoreML (AN) | 97.52 | 33.29 | 2.69 | 0.022 |
| Silero v5 | 309K | MLX (GPU) | 95.98 | 21.02 | 5.88 | 0.027 |
| FireRedVAD | 588K | CoreML (AN) | 94.21 | 40.12 | 5.05 | 0.007 |
Sammenligning med offentliggjorte numre
| Model | F1% | FAR% | % | Paramboler | Datasæt |
|---|---|---|---|---|---|
| Pyannote (vores) | 98.22 | 50.09 | 0.19 | 1.5M | VoxConverse Formand |
| FireRedVAD (papir) | 97.57 | 2.69 | 3.62 | 588K | FLEURS-VAD-102 |
| Silero (vores) | 95.98 | 21.02 | 5.88 | 309K | VoxConverse Formand |
| Silero- VAD (papir) | 95.95 | 9.41 | 3.95 | 309K | FLEURS-VAD-102 |
| FireRedVAD (vores) | 94.21 | 69.33 | 5.05 | 588K | VoxConverse Formand |
FireRedVAD opnår 99.12% F1 om FLEURS med den laveste falske alarmfrekvens (2.52%) og kører på 135x realtid. Silero v5 giver den bedste streaming mulighed på 32 ms per stykke.
Registrering af aktiveringsord / nøgleord
KWS Zipformer (gigaspeech fine- tune)
Streaming Zipformer2 transducer (3.49M-params Apache-2.0) med INT8 palætisering den CoreML. Vurderet imod 12 søgeord på LibriSpeech test- clean (158 positive udtalelser 60 Negativ). Tærskelværdier tunet: acThreshold = 0.15, contextScore = 0.5, numTrailingBlanks = 1.
| Metric | Værdi | Bemærkninger |
|---|---|---|
| RTF (CPU + Neural Engine) | 0.04 | 26 × realtid på M- serie |
| Genindspilning (12 søgeord) | 88% | LibriSpeech test- clean, 158 positive udtalelser |
| Falsk positives / yutterance | 0.27 | 60 negative udtalelser |
| CoreML INT8 vs PyTorch FP32 | 99% | Emissionsaftale |
| Modelstørrelse | ~ 4 MB | encoder 3,3 MB + dekoder 525 KB + snedker 160 KB |
| Lungt- hukommelse | ~ 6 MB | Vægt + encoder tilstand cache |
Tunerede standardværdier forbedret tilbagekaldelse fra 62% til 88% (og skære FP / utt fra 0.43 til 0.27) vs. de opstrøms icefal default (acThreshold = 0.25, contextScore = 2.0). wake- ordguide for keyword- file format og per- frase tærskel tuning.
Talerrepræsentationer
Ekstraktionslatens
20-andet lydklip, 10 iterationer efter opvarmning.
| Model | Dim | Backend | LATEY |
|---|---|---|---|
| CAM + + (3D- højttaler) | 192 | CoreML (AN) | 12 ms |
| WeSpeaker ResNet34-LM | 256 | MLX (GPU) | 64 ms |
| WeSpeaker ResNet34-LM | 256 | CoreML (AN) | 143 ms |
Indlejringskvalitet (VoxConverse)
Kosinlighed mellem segment- niveau indlejringer fra 5 multihøjttaleroptagelser. Højere adskillelse = bedre højttalerdiskrimination.
| Model | Backend | Intra- speaker | Inter- speaker | Separation |
|---|---|---|---|---|
| WeSpeaker | MLX | 0.726 | 0.142 | 0.584 |
| WeSpeaker | CoreML | 0.726 | 0.143 | 0.582 |
| CAM + + | CoreML | 0.723 | 0.395 | 0.328 |
Alle tre motorer matcher Python pyannote reference (0.577 separation, cosin lighed > 0.96). WeSpeaker opnår 0.584 separation på både MLX og CoreML. CAM + + kører 5x hurtigere (12 ms vs 65 ms) med god adskillelse (0.328).
Kildeseparation - SDR
Signal- to- forvrængningsforhold (SDR) på MUSDB18-HQ (50 fuld længde testspor, stereo 44.1kHz). Højere er bedre. To modelstørrelser: HQ (8.9M params / stem) og L (28.3M paramer / stængel).
| Mål | UMX- HQ (MLX) | UMX- L (MLX) | UMX- HQ (udgivet) |
|---|---|---|---|
| Vocaler | 6,23 dB | ~ 10.5 dB | 6,32 dB |
| Trommer | 6.44 dB | ~ 7.0 dB | 5,73 dB |
| Bass | 4,56 dB | ~ 5.5 dB | 5.23 dB |
| Andre varer | 3,41 dB | ~ 4.5 dB | 4.02 dB |
| Model | Paramer / stængler | Størrelse | RTF | Hastighed |
|---|---|---|---|---|
| Open- Mix HQ | 8.9M | 136 MB | 0.23 | 4.3x realtid |
| Open- unmix L | 28.3M | 432 MB | 0.21 | 4.8x real- time |
UMX- HQ kampe udgivet SDR på vokal og trommer med en letvægts 8.9M model. UMX- L giver +2–4 dB forbedring ved 3x modelstørrelsen. Begge omfatter multichannel Wiener EM post- filtrering og køre hurtigere end real- tid på Apple Silicon.
Android - on- device (Galaxy S23)
Målt på a Samsung Galaxy S23 (SM-S918B), arm64, CPU Kun til, INT8, hvor bemærket. RTF er væg clip (lavere er hurtigere end real time; < 1.0 is real time); Peak RSS er det residente sæt af den kørende model. STT rækker bruge en 20 s klip; TTS rapporter RTF eller time- to- first-audio (TTFA).
| Model | Opgave | Løbetid | Hastighed | Peak RSS |
|---|---|---|---|---|
| Parakeet- EOU 120M | Streaming af STT + EOU | ONNX INT8 | 0.21 RTF | 232 MB |
| Omnilingual CTC 300M | Flersproget STT | LiteRT | 0.15 RTF | 831 MB |
| Nemotron Streaming 0.6B | Streaming af STT | LiteRT | 0.67 RTF | 1,30 GB |
| Parakeet- TDT 0.6B | STT (batch) | ONNX INT8 | 0.082 RTF | 1,15 GB |
| Supertonic-3 99M | TTS (forudindstillet stemme) | LiteRT | 0.34 RTF ~ 1.1 s TTFA | 832 MB |
| Kokoro-82M | TTS (forudindstillet stemme) | ONNX FP32 | 0.53 RTF | 640 MB |
Hovedlinje: Parakeet-EOU-120M er den letteste STT her på ~ 232 MB - flersproget (25 Europæiske), streaming, med inline end- of-utterance detektering, omtrent 5–6× lysere end 0.6B Parakeet. Deaktivering af ONNX CPU hukommelse arena (nu standard) skære Parakeet- TDT fra ~1.34 GB to ~1.15 GB.
Reproduktion
# 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