OpenVoiceOS/stt_es_quartznet15x5_onnx
sttesquartznet15x5_onnx
Spanish speech-to-text model. ONNX export of stt_es_quartznet15x5 — an NVIDIA NeMo QuartzNet15x5 (char CTC) CTC model — for onnx-asr. Runs offline with ONNX Runtime; PyTorch and NeMo are not required.
Part of the OpenVoiceOS STT/ASR ONNX collection.
Files
There is no int8 variant: these architectures are convolution-dominated, and dynamic quantization produces ConvInteger nodes that ONNX Runtime cannot execute on CPU. int8 requires static QDQ quantization with calibration data.
Note: 64-mel NeMo models need onnx-asr with nemo64 preprocessor support — currently the TigreGotico fork or the runtime backfill in ovos-stt-plugin-onnx-asr — until it lands upstream.Usage
With onnx-asr (pip install onnx-asr[cpu,hub]):
import onnx_asr
model = onnx_asr.load_model("OpenVoiceOS/stt_es_quartznet15x5_onnx")
print(model.recognize("speech.wav")) # 16 kHz PCM wavWith OpenVoiceOS, through ovos-stt-plugin-onnx-asr (mycroft.conf):
{
"stt": {
"module": "ovos-stt-plugin-onnx-asr",
"ovos-stt-plugin-onnx-asr": {
"model": "OpenVoiceOS/stt_es_quartznet15x5_onnx"
}
}
}Export and verification
Exported from the original checkpoint with NeMo's model.export() (see the conversion guide). The subsampling_factor was measured empirically on the exported graph, and the export was verified differentially: the ONNX model and the original NeMo checkpoint produce identical transcriptions on a reference clip.
Accuracy, training data and limitations
See the source model card for benchmark results, training corpora and known limitations. This repo changes the runtime, not the weights.
Related projects
- onnx-asr — ASR inference with ONNX Runtime
- ovos-stt-plugin-onnx-asr — OpenVoiceOS STT plugin
- NVIDIA NeMo — framework the source model was trained with
