Automatic Speech Recognition
NeMo
Persian
speech
persian
farsi
fastconformer
ctc
on-device
shenava
shenava-1
visualears
liteasr
compression
low-rank
dhh
Instructions to use PersianML/Shenava-Koochik-Lite-v1.0 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- NeMo
How to use PersianML/Shenava-Koochik-Lite-v1.0 with NeMo:
import nemo.collections.asr as nemo_asr asr_model = nemo_asr.models.ASRModel.from_pretrained("PersianML/Shenava-Koochik-Lite-v1.0") transcriptions = asr_model.transcribe(["file.wav"]) - Notebooks
- Google Colab
- Kaggle
| license: apache-2.0 | |
| language: | |
| - fa | |
| library_name: nemo | |
| pipeline_tag: automatic-speech-recognition | |
| tags: | |
| - nemo | |
| - automatic-speech-recognition | |
| - speech | |
| - persian | |
| - farsi | |
| - fastconformer | |
| - ctc | |
| - on-device | |
| - shenava | |
| - shenava-1 | |
| - visualears | |
| - liteasr | |
| - compression | |
| - low-rank | |
| - dhh | |
| base_model: Reza2kn/Shenava-Koochik-v1.0 | |
| base_model_relation: quantized | |
| datasets: | |
| - Reza2kn/visualears-golden-6669 | |
| - Reza2kn/fleurs-fa-benchmark | |
| # 🪶🎙️ Shenava Koochik Lite v1.0 | |
| A LITEASR-compressed encoder for [Shenava Koochik v1.0](https://huggingface.co/Reza2kn/Shenava-Koochik-v1.0). Post-training low-rank factorization reduces the encoder from 108.9M to 85.4M parameters (21.6%) without retraining. | |
| This repository is **not a standalone ASR checkpoint**. It contains a replacement encoder state dict and must be loaded on top of the base `.nemo` model; the decoder, CTC head, and tokenizer still come from Koochik. | |
| ## ✨ At a glance | معرفی سریع | |
| | | English | فارسی | | |
| |---|---|---| | |
| | 🪶 Role | Compressed Koochik encoder | encoder فشردهشدهٔ کوچیک | | |
| | 📉 Reduction | 108.9M → 85.4M encoder parameters | کاهش ۲۱٫۶ درصدی پارامترهای encoder | | |
| | 🧪 Method | Post-training LITEASR low-rank factorization | فشردهسازی low-rank بدون آموزش مجدد | | |
| | 🧩 Requirement | Base Koochik `.nemo` is required | فایل NeMo مدل اصلی الزامی است | | |
| | ⚠️ Scope | Not a standalone checkpoint | checkpoint مستقل نیست | | |
| - Canonical repository: [`Reza2kn/Shenava-Koochik-Lite-v1.0`](https://huggingface.co/Reza2kn/Shenava-Koochik-Lite-v1.0) | |
| - PersianML mirror: [`PersianML/Shenava-Koochik-Lite-v1.0`](https://huggingface.co/PersianML/Shenava-Koochik-Lite-v1.0) | |
| ## 📦 Files | |
| - `koochik_lite099_enc.pt`: compressed FP32 encoder state dict. | |
| - `koochik_lite099_kmap.json`: retained rank for each factorized layer. | |
| - `load_koochik_lite.py`: reconstructs the low-rank modules and loads the state dict into the base model. | |
| ## 🚀 Load | |
| ```python | |
| from huggingface_hub import hf_hub_download, snapshot_download | |
| from load_koochik_lite import load_koochik_lite | |
| base = hf_hub_download( | |
| "Reza2kn/Shenava-Koochik-v1.0", | |
| "shenava-koochik-v1.0.nemo", | |
| ) | |
| repo = snapshot_download("Reza2kn/Shenava-Koochik-Lite-v1.0") | |
| model = load_koochik_lite( | |
| base, | |
| f"{repo}/koochik_lite099_enc.pt", | |
| f"{repo}/koochik_lite099_kmap.json", | |
| ) | |
| print(model.transcribe(["speech.wav"])[0].text) | |
| ``` | |
| ## 📊 Published trade-off | |
| The release evaluated both greedy decoding and an optional Vosk-guided hotword beam. Lower is better. | |
| | Decode | golden-6669 keyword-band WER | FLEURS keyword-band WER | golden-6669 overall WER | FLEURS overall WER | | |
| |---|---:|---:|---:|---:| | |
| | Full Koochik, greedy | 8.0 | 13.1 | 4.64 | 5.36 | | |
| | Koochik Lite, greedy | 12.5 | 18.0 | 6.92 | 7.23 | | |
| | Koochik Lite + Vosk guide | 6.4 | 11.7 | 5.30 | 5.31 | | |
| Compression alone reduces quality; the Vosk-guided result requires a separate Vosk first pass plus hotword-aware `pyctcdecode` beam search. Do not compare the guided row to a greedy-only deployment as though they used the same runtime. | |
| ## 🇮🇷 خلاصهٔ فارسی | |
| این مخزن یک مدل کامل و مستقل نیست؛ فقط encoder فشردهشده را نگه میدارد و برای اجرا به فایل NeMo مدل اصلی نیاز دارد. نسخهٔ greedy سبکتر است ولی افت دقت دارد؛ ردیف Vosk-guided به یک مرحلهٔ جداگانهٔ Vosk و beam search نیاز دارد. | |
| ## 🌌 Explore Shenava-1 | |
| [🧠 Full Koochik](https://huggingface.co/Reza2kn/Shenava-Koochik-v1.0) · **🪶 Koochik Lite** · [⚖️ Rizeh 32M](https://huggingface.co/Reza2kn/Shenava-Rizeh-v1.0) · [🐣 Rizeh-Pizeh 6.9M](https://huggingface.co/Reza2kn/Shenava-Rizeh-Pizeh-v1.0) | |
| Apache-2.0. Compression method: [LITEASR](https://arxiv.org/abs/2502.20583). | |