Jarbas's picture
ONNX export of primeline/parakeet-primeline (fp32 + int8)
411093f verified
|
Raw
History Blame Contribute Delete
2.34 kB
---
license: cc-by-4.0
language:
- de
library_name: onnx
pipeline_tag: automatic-speech-recognition
tags:
- automatic-speech-recognition
- onnx
- onnx-asr
- nemo
- parakeet
- tdt
base_model: primeline/parakeet-primeline
---
# primeline-parakeet — ONNX
ONNX export of [`primeline/parakeet-primeline`](https://huggingface.co/primeline/parakeet-primeline),
a 600M-parameter German ASR model built on the NVIDIA FastConformer encoder with a
Token-and-Duration Transducer (TDT) decoder. The export runs on ONNX Runtime through
[`onnx-asr`](https://github.com/istupakov/onnx-asr), so transcription needs neither PyTorch
nor the NeMo toolkit. Output keeps punctuation and capitalisation.
## Usage
```python
import onnx_asr
model = onnx_asr.load_model("OpenVoiceOS/primeline-parakeet-onnx")
print(model.recognize("audio.wav"))
```
The `int8` weights load with `quantization="int8"`.
In OpenVoiceOS, select it through
[`ovos-stt-plugin-onnx-asr`](https://github.com/TigreGotico/ovos-stt-plugin-onnx-asr):
```json
{
"stt": {
"module": "ovos-stt-plugin-onnx-asr",
"ovos-stt-plugin-onnx-asr": {
"model": "OpenVoiceOS/primeline-parakeet-onnx"
}
}
}
```
## Files
| File | Size | Notes |
|---|---|---|
| `encoder-model.onnx` + `encoder-model.onnx.data` | 2.5 GB | FP32 encoder, weights in one external-data file |
| `decoder_joint-model.onnx` | 73 MB | FP32 decoder + joint network |
| `encoder-model.int8.onnx` | 654 MB | INT8 dynamic, per-channel |
| `decoder_joint-model.int8.onnx` | 18 MB | INT8 dynamic, per-channel |
| `vocab.txt` | | SentencePiece tokens plus the `<blk>` CTC blank |
| `config.json` | | `nemo-conformer-tdt`, 128 mel features, subsampling factor 8 |
## Export
Exported with NeMo `ASRModel.restore_from(...)` followed by `model.export()`, which writes the
encoder and the fused decoder-joint graph separately. INT8 variants come from ONNX Runtime
dynamic quantization with per-channel weights.
## Verification
Transcribed five German sentences rendered by gTTS. Both the FP32 and the INT8 variant scored
0% word error rate and reproduced the punctuation and capitalisation of the source text. This is
a smoke test on synthetic speech, not a benchmark — for accuracy figures on real corpora see the
WER table on the base model card.
## License
CC-BY-4.0, inherited from the base model.