Instructions to use typhoon-ai/typhoon-asr-streaming-nemotron-0.6b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- NeMo
How to use typhoon-ai/typhoon-asr-streaming-nemotron-0.6b with NeMo:
import nemo.collections.asr as nemo_asr asr_model = nemo_asr.models.ASRModel.from_pretrained("typhoon-ai/typhoon-asr-streaming-nemotron-0.6b") transcriptions = asr_model.transcribe(["file.wav"]) - Notebooks
- Google Colab
- Kaggle
Typhoon ASR Streaming Nemotron 0.6B
Cache-aware streaming Thai ASR (FastConformer-Transducer, 0.6B params, prompt-conditioned) โ the best-accuracy model of the Typhoon ASR Streaming release. Adapted to Thai from NVIDIA's Nemotron streaming ASR base: the multilingual tokenizer is extended (not replaced) with the multi-character Thai BPE from Typhoon ASR Real-time, keeping the other languages recoverable, followed by Thai adaptation and a numeric fine-tuning stage.
At a glance
| Architecture | FastConformer-Transducer (RNN-T), cache-aware streaming, prompt-conditioned |
| NeMo class | EncDecRNNTBPEModelWithPrompt |
| Tokenizer | aggregate 15,135 = Nemotron multilingual 13,087 + Thai BPE 2,048 |
| Language prompt | required: target_lang="th-TH" |
| Latency knob | chunk_size ร 80 ms โ 1040 / 480 / 80 ms |
| Streaming CER | 14.1% TVSpeech ยท 9.3% GigaSpeech2-Thai @1040 ms (13.0% TVSpeech @3200 ms) |
| Steering (TVSpeech held-out, 1040 ms) | keyword recall 16.6% โ 20.7% (phrase boost) at no CER cost |
| RTF (batch-1, H100 @1040 ms) | 0.024 (~42ร real time); batch-16 โ 300 concurrent streams/GPU |
| Paired n-gram | typhoon-ai/typhoon-asr-streaming-nemotron-0.6b-ngram |
Usage
Requires NVIDIA NeMo with cache-aware streaming and EncDecRNNTBPEModelWithPrompt support
(see the project repo for the pinned
commit and the full streaming loop / server / demo):
import nemo.collections.asr as nemo_asr
model = nemo_asr.models.ASRModel.restore_from(
"typhoon-asr-streaming-nemotron-0.6b.nemo", map_location="cuda")
model.eval()
model.set_inference_prompt("th-TH") # required (prompt-conditioned)
model.decoding.set_strip_lang_tags(True) # strip the <xx-XX> tag from output
# offline (whole file)
text = model.transcribe(audio=["clip.wav"], target_lang="th-TH",
return_hypotheses=True)[0].text
# true streaming: setup_streaming_params + conformer_stream_step โ see the repo.
Decode-time steering (phrase boosting / n-gram fusion) works inside the streaming decoder;
with this aggregate-tokenizer model set boosting_tree.source_lang="th-TH" and use the
paired .nemo n-gram โ see the repo's docs/SHALLOW_FUSION.md.
License & attribution
Released under OpenMDW-1.1 (see LICENSE in this repository), following the
base model: NVIDIA Nemotron 3.5 ASR Streaming 0.6B (OpenMDW-1.1). The base model's
copyright and origin notices are preserved in this repository as required by the license.
Modifications in this release: aggregate tokenizer extension with Thai BPE, Thai adaptation on the ~11k-hour Typhoon corpus, and numeric fine-tuning.
Trademark note: "Nemotron" is a trademark of NVIDIA Corporation. It is used here nominatively, solely to identify the base model this checkpoint derives from. This release is not affiliated with, sponsored by, or endorsed by NVIDIA.
- Downloads last month
- 21
Model tree for typhoon-ai/typhoon-asr-streaming-nemotron-0.6b
Base model
nvidia/nemotron-3.5-asr-streaming-0.6b