Instructions to use branchkit/nemo-ctc-en-conformer-small-onnx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- NeMo
How to use branchkit/nemo-ctc-en-conformer-small-onnx with NeMo:
import nemo.collections.asr as nemo_asr asr_model = nemo_asr.models.ASRModel.from_pretrained("branchkit/nemo-ctc-en-conformer-small-onnx") transcriptions = asr_model.transcribe(["file.wav"]) - Notebooks
- Google Colab
- Kaggle
NeMo Conformer-CTC small (English), ONNX for sherpa-onnx
An ONNX conversion of NVIDIA's nvidia/stt_en_conformer_ctc_small (~13M parameters, 4x subsampling, 1024-piece SentencePiece tokenizer), for offline CTC decoding with sherpa-onnx. It is the command-recognition model for BranchKit's voice plugin.
Attribution and license
"stt_en_conformer_ctc_small" by NVIDIA, https://huggingface.co/nvidia/stt_en_conformer_ctc_small (revision e5b9941cc1b0b8a08c29b31a111c674f3040a80f), is licensed under CC BY 4.0. These files are a modified version of it, distributed under the same license. They are provided as is, without warranties of any kind.
Changes made:
model.onnx: the checkpoint (stt_en_conformer_ctc_small.nemo, sha256f9af79844c7160b3668f373cd62dbf28b69df0e2e441c3b5e0f20159dd8c7088) restored with NeMo 2.1.0 asEncDecCTCModelBPEand exported with its ownexport(). sherpa-onnx metadata was added:vocab_size,normalize_type=per_feature,subsampling_factor=4,model_type=EncDecCTCModelBPE.model.int8.onnx:model.onnxwith dynamic int8 quantization of MatMul weights (onnxruntimequantize_dynamic, QUInt8).tokens.txt: the model's decoder vocabulary, onepiece idper line, with<blk>appended last.bpe.model: the checkpoint's SentencePiece tokenizer, unmodified.bpe.vocab: a text dump ofbpe.model, onepiece scoreper line.
Weights were not retrained or fine-tuned.
Files
| file | size | sha256 |
|---|---|---|
model.onnx |
60.1 MB | 1088fc73ce8bd7dc39ccd72e36693bb574c47959fb5b60c930596f9daa255fbb |
model.int8.onnx |
27.4 MB | 06828c7bc831e3d1be3a9c4aedcfd82d947e70e536dd2b01eb4e06712b462b86 |
tokens.txt |
12 KB | 1adce7866285e6a4aac6208b120d5b8e4302b7cae5f2ae541c343097773fd988 |
bpe.model |
260 KB | d9b04033136c5d0413047fe94d2f0ab6cb088d292014bb076ee1700bdac545a9 |
bpe.vocab |
27 KB | 13d12e8b0fce5ad809774f53ddefb949b0b367b7217ec2e9875d32570030a095 |
Use with sherpa-onnx
import sherpa_onnx
rec = sherpa_onnx.OfflineRecognizer.from_nemo_ctc(model="model.int8.onnx", tokens="tokens.txt")
bpe.model and bpe.vocab are for grammar-constrained decoding, which spells arbitrary words into the model's tokens; plain decoding needs only the model and tokens.txt.
Model tree for branchkit/nemo-ctc-en-conformer-small-onnx
Base model
nvidia/stt_en_conformer_ctc_small