Instructions to use kinit/canary-1b-v2-sk with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- NeMo
How to use kinit/canary-1b-v2-sk with NeMo:
import nemo.collections.asr as nemo_asr asr_model = nemo_asr.models.ASRModel.from_pretrained("kinit/canary-1b-v2-sk") transcriptions = asr_model.transcribe(["file.wav"]) - Notebooks
- Google Colab
- Kaggle
canary-1b-v2-sk
Slovak fine-tune of nvidia/canary-1b-v2 by the KInIT team. Full parameter fine-tuning on a curated Slovak speech corpus, with noise augmentation for robustness to real-world recording conditions. Listed in SLAIH, a catalog of Slovak NLP resources.
Model Details
| Property | Value |
|---|---|
| Base model | nvidia/canary-1b-v2 |
| Parameters | ~978M |
| Architecture | FastConformer encoder + Transformer decoder (attention-based encoder-decoder), 32 encoder / 8 decoder layers |
| Fine-tuning method | Full fine-tuning |
| Language | Slovak (sk) |
| Task | Automatic Speech Recognition |
| Framework | NVIDIA NeMo |
| License | CC-BY-4.0 |
Intended Use
This model is intended for Slovak automatic speech recognition across a range of domains and recording conditions. It transcribes with punctuation and capitalization.
Out-of-scope: Non-Slovak audio, speech translation (the base model's AST capability is not retained, see Limitations), safety-critical transcription without human review.
Evaluation
Word Error Rate (WER) and Character Error Rate (CER), lower is better. Measured on two Slovak eval sets:
- CV24 - Common Voice 24.0 test split (5,239 samples, public)
- Internal - held-out KInIT set (9,317 samples, stratified by domain and speaker gender, one third clean and two thirds noise-augmented; not public)
Before vs. after fine-tuning
| Model | CV24 WER โ | CV24 CER โ | Internal WER โ | Internal CER โ |
|---|---|---|---|---|
| kinit/canary-1b-v2-sk | 8.27% | 2.35% | 6.37% | 3.31% |
| nvidia/canary-1b-v2 | 14.00% | 4.06% | 14.39% | 6.88% |
Slovak fine-tuning reduces WER by 40.9% on Common Voice and 55.7% on the internal eval set, at the cost of multilingual and translation performance (see Limitations).
Canary vs. Parakeet
Both Slovak NeMo models were fine-tuned on the same corpus with the same noise-augmentation recipe and scored with the same pipeline, so this comparison isolates the architecture. Comparison before and after Slovak fine-tuning; WER is measured on our internal benchmark dataset (see above):
| Model | Fine-tuned: WER โ | Base: WER โ |
|---|---|---|
| Canary 1B v2 | 6.37% | 14.39% |
| Parakeet TDT 0.6B v3 | 6.62% | 24.32% |
Parakeet is the faster of the two.
Besides these two NVIDIA NeMo fine-tunes (Canary, Parakeet), the full KInIT ASR collection also includes six Slovak fine-tunes of Whisper, OpenAI's separate speech-recognition architecture, at sizes from tiny to large.
Training Data
Fine-tuned on an internal curated Slovak speech corpus compiled at KInIT. The corpus combines public datasets with internal KInIT recordings. Recordings containing personal data were anonymised prior to use. Samples were quality-filtered using a CER-based threshold validated against multiple ASR models. 75% of the training samples were additionally augmented with synthetic background noise for robustness to real-world recording conditions (see Training Procedure below).
| Data sources |
|---|
| SloPalSpeech |
| Municipal council session recordings |
| Read literature |
| Mozilla Common Voice |
| TEDxSK and JumpSK Lecture Speech Corpus |
| FLEURS read speech |
| Internal KInIT recordings |
Training Procedure
| Hyperparameter | Value |
|---|---|
| Epochs | 3 |
| Learning rate | 1e-4 |
| LR scheduler | Polynomial decay with warmup |
| Optimizer | AdamW |
| Effective batch size | 64 |
| Precision | bf16-mixed |
| Gradient clipping | 1.0 |
| Noise augmentation | Applied to 75% of training samples: phone noise, background speech, background noise, white noise, and packet loss |
| Framework | NVIDIA NeMo with PyTorch Lightning |
Training was performed on the Devana HPC cluster.
Usage
import nemo.collections.asr as nemo_asr
model = nemo_asr.models.ASRModel.from_pretrained("kinit/canary-1b-v2-sk")
output = model.transcribe(
["audio.wav"],
source_lang="sk",
target_lang="sk",
pnc="yes",
task="asr",
)
print(output[0].text)
audio.wav must be mono โ stereo input raises a channel-selector error.
License
CC-BY-4.0, inherited from the base model nvidia/canary-1b-v2 (ยฉ NVIDIA).
Limitations
- Catastrophic forgetting: Fine-tuning exclusively on Slovak ASR data significantly degrades the base model's performance on the other 24 languages it supports, as well as its speech translation (AST) capability. Use the base nvidia/canary-1b-v2 if multilingual transcription or translation is required.
- Performance may degrade on strongly accented, dialectal, or domain-specific speech not represented in the training data.
- The training data consists predominantly of short utterances. The base model's automatic chunking of long audio is inherited but was not evaluated after fine-tuning.
- Word and segment timestamps are supported by the base architecture but were not evaluated after fine-tuning.
Acknowledgements
Public datasets used in training: SloPalSpeech, Mozilla Common Voice, FLEURS, and the TEDxSK and JumpSK Lecture Speech Corpus (KEMT NLP).
(Part of the) Research results was obtained using the computational resources procured in the national project National competence centre for high performance computing (project code: 311070AKF2) funded by European Regional Development Fund, EU Structural Funds Informatization of society, Operational Program Integrated Infrastructure.
- Downloads last month
- -
Model tree for kinit/canary-1b-v2-sk
Base model
nvidia/canary-1b-v2