open-standards/aac/aac-rs/data/asr/index.json
Transaction Science ace56fe36f fix(aac listener): timers from the press, no mic on a hidden page; measured slots only
- Listening's timers (30 s for words, 90 s in all) run from the press, so
  a permission prompt nobody answers, or audio that never starts, ends it
  too, and no wait holds the sentence helper; a page already hidden does
  not open the microphone, and one hidden while the browser asked lets it
  go.
- A finish that fails drops the worker, as a failed run does; a failed
  first-run check lets the model go (it kept 1.3 GB loaded).
- Test hooks: shorter timers, the app counted as speaking, the worker's
  events counted, a failed run on request.
- Every locale of a language uses the prompt slot that was measured for it.
  FLEURS has one accent per language, so the model's en-GB, es-US, pt-PT
  and fr-CA slots cannot be measured, and are not used.
- eval/score.py counts the clips the end-of-speech rule cut at a pause
  against the run with no end at all (--no-end), the one method used for
  the notes and the README: with 1 s, Hindi 3 and Portuguese 1; with
  500 ms, 43 of 400 (Vietnamese 16, Hindi 5, Portuguese 5, Italian 4,
  German 3).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 23:11:58 -04:00

532 lines
24 KiB
JSON

{
"schema": "aac-asr-index/1",
"generated": "2026-10-01",
"models": {
"nemotron-3.5-asr-streaming-0.6b": {
"name": "Nemotron 3.5 ASR Streaming 0.6B",
"runtime": "[email protected]",
"source": "https://huggingface.co/soniqo/Nemotron-3.5-ASR-Streaming-Multilingual-0.6B-ONNX-FP16/tree/76daabfd0aaf5ec6ef1e6640eae3b364af6c9970 (NVIDIA's https://huggingface.co/nvidia/nemotron-3.5-asr-streaming-0.6b/tree/ea30d66debe3740a08b573244286791d423d6b3e), with https://github.com/snakers4/silero-vad/tree/v6.2.3 (silero_vad_16k_sequence.onnx); graphs edited to run on WebGPU",
"bytes": 1243949351,
"encoder": {
"file": {
"url": "nemotron-3.5-asr-streaming-0.6b/encoder_mel.0bb7c36cde26.onnx",
"bytes": 1749211,
"sha256": "0bb7c36cde260069c7e1ea2c802a3421fddf3bfd57eaa1739de653d7fee8005e"
},
"data": [
{
"name": "encoder.00.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.00.cd3330f47afc.bin",
"bytes": 66916352,
"sha256": "cd3330f47afc7fc74e1b6fd1c359cf1ea42b04440d59f43d20d9c49143011826"
},
{
"name": "encoder.01.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.01.4560f03a6df0.bin",
"bytes": 65306624,
"sha256": "4560f03a6df0d5e6c78b0f4ca2b67058977d28d89cc2ffe727eacfc603639cb4"
},
{
"name": "encoder.02.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.02.814d178a255d.bin",
"bytes": 63483904,
"sha256": "814d178a255dec7a98538a741f656594ac509127cdcbeabcab2f904c12bb8491"
},
{
"name": "encoder.03.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.03.932a8c0ce8cf.bin",
"bytes": 65310720,
"sha256": "932a8c0ce8cf969e086dfce29d9210dfb8651d102acf7f1e7ac79f3df2d81188"
},
{
"name": "encoder.04.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.04.489a5bca9a56.bin",
"bytes": 65306624,
"sha256": "489a5bca9a56d7f76c947622b45ae1acfd248877573172cfdda34783a47286ae"
},
{
"name": "encoder.05.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.05.9235a5cc5c91.bin",
"bytes": 63483904,
"sha256": "9235a5cc5c91d9f36ea29c5d862af3c60172b593715d500c19862e32f84b43a8"
},
{
"name": "encoder.06.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.06.c1ed0b1cd773.bin",
"bytes": 65310720,
"sha256": "c1ed0b1cd7736e533f651ec1dd47a46502f42eda55270fb497a1b6671505f024"
},
{
"name": "encoder.07.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.07.ae430eed432d.bin",
"bytes": 65306624,
"sha256": "ae430eed432d5a43324e8508285a254996fef7be1cd4e7f8a3027cc37804e6ac"
},
{
"name": "encoder.08.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.08.27e0965650ac.bin",
"bytes": 63483904,
"sha256": "27e0965650ac8bcea44a42b8cad98173f7df07f4d69c01df17a393588bcd9efa"
},
{
"name": "encoder.09.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.09.db56f6f3d543.bin",
"bytes": 65310720,
"sha256": "db56f6f3d5430b02adc0c95e7ef9914f89577a3a512d7115feac4cd0a8a5ab03"
},
{
"name": "encoder.10.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.10.fac3d9388bc1.bin",
"bytes": 65306624,
"sha256": "fac3d9388bc1e85a633972390ff43b1b7bc75f19ca2274728174ad87b70877cd"
},
{
"name": "encoder.11.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.11.9e3b9006dbd3.bin",
"bytes": 63483904,
"sha256": "9e3b9006dbd3bf39bb6abbdbf0420b768c0eecdf6fc0eda871132aed65a29af1"
},
{
"name": "encoder.12.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.12.28c56605ebb2.bin",
"bytes": 65310720,
"sha256": "28c56605ebb2fa4793cae2fe23203bff292926421b1af6d38c1654f735ee3a14"
},
{
"name": "encoder.13.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.13.c1771281a15b.bin",
"bytes": 65306624,
"sha256": "c1771281a15b7ae323d6ecdd05d99ab31b77cd05e2a3c14b292b58f3a132b727"
},
{
"name": "encoder.14.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.14.f2b92139ee2f.bin",
"bytes": 63483904,
"sha256": "f2b92139ee2f3f8495d93b0f05cb3454c577e5ce114f5fbfd62a6d0d0449ce07"
},
{
"name": "encoder.15.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.15.6f96b19f25da.bin",
"bytes": 65310720,
"sha256": "6f96b19f25da1311741f9201d542def9879e5b0a2fa39365ae141e268ae6ce0d"
},
{
"name": "encoder.16.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.16.008698bea206.bin",
"bytes": 65306624,
"sha256": "008698bea20628ef4247e3f6d1e93662e0d945cf5a0786f454907deb0282ec8f"
},
{
"name": "encoder.17.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.17.267b6a6d76f5.bin",
"bytes": 63483904,
"sha256": "267b6a6d76f596f60fde37e8ffbe19da4ea4bc9fdee80fa9c97e2b9872f9db4d"
},
{
"name": "encoder.18.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/encoder.18.747068f82cbf.bin",
"bytes": 25700352,
"sha256": "747068f82cbfb62cbf596ff8fcac1b02a7caf00adbc52bff65d3215984562e24"
}
]
},
"step": {
"file": {
"url": "nemotron-3.5-asr-streaming-0.6b/decoder_joint.352f24fbd875.onnx",
"bytes": 6619,
"sha256": "352f24fbd875c0d1c4fc41feca29eef4c2a71d2e8ffd53474174cddf571bdb77"
},
"data": [
{
"name": "decoder_joint.00.bin",
"url": "nemotron-3.5-asr-streaming-0.6b/decoder_joint.00.82d9d90267b5.bin",
"bytes": 48781376,
"sha256": "82d9d90267b5ee8441cdb4ed58e5441a988b0d1acbd5aa5fe84a1a7769716d37"
}
]
},
"vad": {
"file": {
"url": "nemotron-3.5-asr-streaming-0.6b/silero_vad_320ms.1eec45a9a632.onnx",
"bytes": 1262546,
"sha256": "1eec45a9a632b30e9aa8077b01adb31a4c7bd5b1caa2eba363efae0e68e48e2a"
},
"data": []
},
"vocab": {
"url": "nemotron-3.5-asr-streaming-0.6b/vocab.fd726dc25cc0.json",
"bytes": 236127,
"sha256": "fd726dc25cc0c0b46403675127e831bab56ca56b8c7ae3ee7781f5c6d7692f4f"
},
"credits": [
{
"what": "speech recognition",
"attribution": "NVIDIA Nemotron 3.5 ASR Streaming 0.6B by NVIDIA, in soniqo's fp16 ONNX export, its graphs edited to run on WebGPU",
"licence": "OpenMDW-1.1",
"licence_url": "https://openmdw.ai/license/1-1/",
"licence_file": "licences/OpenMDW-1.1.2ab44b683654.txt"
},
{
"what": "finding speech",
"attribution": "Silero VAD v6.2.3 by the Silero Team, its graph edited to run on WebGPU",
"licence": "MIT",
"licence_url": "https://github.com/snakers4/silero-vad/blob/v6.2.3/LICENSE",
"licence_file": "licences/MIT-silero-vad.2e63e9a38b6e.txt"
}
],
"gpu_memory_bytes": 1300000000,
"min_memory_gb": 4
}
},
"languages": {
"am": {
"status": "not-yet",
"name": "Amharic",
"note": "The speech model was not trained to write Amharic down."
},
"ar": {
"status": "ready",
"name": "Arabic",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 7,
"measure": "wer",
"published": 12.55,
"measured": 8.4,
"source": "ours (what decides): the first 25 FLEURS test clips of ar_eg (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 8 words in 100 came out wrong (NVIDIA's own test: about 13)."
},
"bn": {
"status": "not-yet",
"name": "Bengali",
"note": "The speech model was not trained to write Bengali down."
},
"cs": {
"status": "not-yet",
"name": "Czech",
"slot": 22,
"measure": "wer",
"published": 22.41,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 22 words in 100 came out wrong: too many to rely on yet."
},
"da": {
"status": "not-yet",
"name": "Danish",
"slot": 25,
"measure": "wer",
"published": 30.0,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 30 words in 100 came out wrong: too many to rely on yet."
},
"de": {
"status": "ready",
"name": "German",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 9,
"measure": "wer",
"published": 8.83,
"measured": 12.91,
"source": "ours (what decides): the first 25 FLEURS test clips of de_de (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 13 words in 100 came out wrong (NVIDIA's own test: about 9)."
},
"el": {
"status": "not-yet",
"name": "Greek",
"note": "NVIDIA trained the speech model on it only as a start for more training; it does not write Greek down well yet."
},
"en": {
"status": "ready",
"name": "English",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 0,
"measure": "wer",
"published": 8.27,
"measured": 9.78,
"source": "ours (what decides): the first 25 FLEURS test clips of en_us (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 10 words in 100 came out wrong (NVIDIA's own test: about 8)."
},
"es": {
"status": "ready",
"name": "Spanish",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 2,
"measure": "wer",
"published": 4.39,
"measured": 4.47,
"source": "ours (what decides): the first 25 FLEURS test clips of es_419 (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 4 words in 100 came out wrong (NVIDIA's own test: about 4)."
},
"fa": {
"status": "not-yet",
"name": "Persian",
"note": "The speech model was not trained to write Persian down."
},
"fi": {
"status": "not-yet",
"name": "Finnish",
"slot": 26,
"measure": "wer",
"published": 20.05,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 20 words in 100 came out wrong: too many to rely on yet."
},
"fr": {
"status": "ready",
"name": "French",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 8,
"measure": "wer",
"published": 9.79,
"measured": 11.67,
"source": "ours (what decides): the first 25 FLEURS test clips of fr_fr (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 12 words in 100 came out wrong (NVIDIA's own test: about 10)."
},
"gu": {
"status": "not-yet",
"name": "Gujarati",
"note": "The speech model was not trained to write Gujarati down."
},
"ha": {
"status": "not-yet",
"name": "Hausa",
"note": "The speech model was not trained to write Hausa down."
},
"he": {
"status": "not-yet",
"name": "Hebrew",
"note": "NVIDIA trained the speech model on it only as a start for more training; it does not write Hebrew down well yet."
},
"hi": {
"status": "not-yet",
"name": "Hindi",
"slot": 6,
"measure": "wer",
"published": 7.41,
"measured": 17.51,
"source": "ours (what decides): the first 25 FLEURS test clips of hi_in (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 18 words in 100 came out wrong: too many to rely on yet, partly because it stopped listening at a long pause between sentences (3 of 25)."
},
"hu": {
"status": "not-yet",
"name": "Hungarian",
"slot": 23,
"measure": "wer",
"published": 30.92,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 31 words in 100 came out wrong: too many to rely on yet."
},
"id": {
"status": "not-yet",
"name": "Indonesian",
"note": "The speech model was not trained to write Indonesian down."
},
"it": {
"status": "ready",
"name": "Italian",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 15,
"measure": "wer",
"published": 4.83,
"measured": 6.89,
"source": "ours (what decides): the first 25 FLEURS test clips of it_it (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 7 words in 100 came out wrong (NVIDIA's own test: about 5)."
},
"ja": {
"status": "ready",
"name": "Japanese",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 10,
"measure": "cer",
"published": 12.22,
"measured": 14.61,
"source": "ours (what decides): the first 25 FLEURS test clips of ja_jp (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 15 characters in 100 came out wrong (NVIDIA's own test: about 12)."
},
"kn": {
"status": "not-yet",
"name": "Kannada",
"note": "The speech model was not trained to write Kannada down."
},
"ko": {
"status": "ready",
"name": "Korean",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 14,
"measure": "cer",
"published": 7.27,
"measured": 10.74,
"source": "ours (what decides): the first 25 FLEURS test clips of ko_kr (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 11 characters in 100 came out wrong (NVIDIA's own test: about 7)."
},
"ml": {
"status": "not-yet",
"name": "Malayalam",
"note": "The speech model was not trained to write Malayalam down."
},
"mr": {
"status": "not-yet",
"name": "Marathi",
"note": "The speech model was not trained to write Marathi down."
},
"ms": {
"status": "not-yet",
"name": "Malay",
"note": "The speech model was not trained to write Malay down."
},
"nb": {
"status": "not-yet",
"name": "Norwegian",
"slot": 103,
"measure": "wer",
"published": 18.9,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 19 words in 100 came out wrong: too many to rely on yet."
},
"nl": {
"status": "not-yet",
"name": "Dutch",
"slot": 16,
"measure": "wer",
"published": 12.17,
"measured": 16.23,
"source": "ours (what decides): the first 25 FLEURS test clips of nl_nl (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 16 words in 100 came out wrong: too many to rely on yet."
},
"pa": {
"status": "not-yet",
"name": "Punjabi",
"note": "The speech model was not trained to write Punjabi down."
},
"pl": {
"status": "not-yet",
"name": "Polish",
"slot": 17,
"measure": "wer",
"published": 17.48,
"measured": 17.36,
"source": "ours (what decides): the first 25 FLEURS test clips of pl_pl (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 17 words in 100 came out wrong: too many to rely on yet."
},
"pt": {
"status": "ready",
"name": "Portuguese",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 12,
"measure": "wer",
"published": 5.81,
"measured": 11.43,
"source": "ours (what decides): the first 25 FLEURS test clips of pt_br (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 11 words in 100 came out wrong (NVIDIA's own test: about 6)."
},
"ro": {
"status": "not-yet",
"name": "Romanian",
"slot": 20,
"measure": "wer",
"published": 29.04,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 29 words in 100 came out wrong: too many to rely on yet."
},
"ru": {
"status": "ready",
"name": "Russian",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 11,
"measure": "wer",
"published": 9.87,
"measured": 14.32,
"source": "ours (what decides): the first 25 FLEURS test clips of ru_ru (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 14 words in 100 came out wrong (NVIDIA's own test: about 10)."
},
"sv": {
"status": "not-yet",
"name": "Swedish",
"slot": 24,
"measure": "wer",
"published": 23.63,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 24 words in 100 came out wrong: too many to rely on yet."
},
"sw": {
"status": "not-yet",
"name": "Swahili",
"note": "The speech model was not trained to write Swahili down."
},
"ta": {
"status": "not-yet",
"name": "Tamil",
"note": "The speech model was not trained to write Tamil down."
},
"te": {
"status": "not-yet",
"name": "Telugu",
"note": "The speech model was not trained to write Telugu down."
},
"th": {
"status": "not-yet",
"name": "Thai",
"note": "NVIDIA trained the speech model on it only as a start for more training; it does not write Thai down well yet."
},
"tl": {
"status": "not-yet",
"name": "Filipino",
"note": "The speech model was not trained to write Filipino down."
},
"tr": {
"status": "not-yet",
"name": "Turkish",
"slot": 18,
"measure": "wer",
"published": 12.05,
"measured": 16.19,
"source": "ours (what decides): the first 25 FLEURS test clips of tr_tr (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 16 words in 100 came out wrong: too many to rely on yet."
},
"uk": {
"status": "ready",
"name": "Ukrainian",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 19,
"measure": "wer",
"published": 14.55,
"measured": 13.8,
"source": "ours (what decides): the first 25 FLEURS test clips of uk_ua (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 14 words in 100 came out wrong (NVIDIA's own test: about 15)."
},
"ur": {
"status": "not-yet",
"name": "Urdu",
"note": "The speech model was not trained to write Urdu down."
},
"vi": {
"status": "ready",
"name": "Vietnamese",
"model": "nemotron-3.5-asr-streaming-0.6b",
"slot": 33,
"measure": "wer",
"published": 12.29,
"measured": 14.11,
"source": "ours (what decides): the first 25 FLEURS test clips of vi_vn (google/fleurs@70bb2e84, CC BY 4.0) through this app's worker on onnxruntime-web 1.30.0 WebGPU (Chrome, Apple GPU), with the VAD and the 1 s end-of-speech rule as in the app, 2026-10-01 (tools/asr/eval/results-2026-10-01.json); for reference, NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In our test of 25 read-aloud passages, on this app, about 14 words in 100 came out wrong (NVIDIA's own test: about 12)."
},
"yo": {
"status": "not-yet",
"name": "Yoruba",
"note": "The speech model was not trained to write Yoruba down."
},
"zh": {
"status": "not-yet",
"name": "Chinese",
"slot": 4,
"measure": "cer",
"published": 20.03,
"source": "NVIDIA's model card (nvidia/nemotron-3.5-asr-streaming-0.6b, revision ea30d66d): FLEURS test, 320 ms chunks, language given",
"note": "In NVIDIA's own test on read speech, about 20 characters in 100 came out wrong: too many to rely on yet."
},
"zu": {
"status": "not-yet",
"name": "Zulu",
"note": "The speech model was not trained to write Zulu down."
}
}
}