CoolFace
Modelpublic

knoveleng/polyglot-lion-1.7b

sourceHugging Facemitupdated 6mo agoView on Hugging Face
2likes317downloads
Model Card

<div align="center">

Polyglot-Lion-1.7B: High-accuracy multilingual ASR for Singapore โ€” English, Mandarin, Tamil & Malay

![Project Page](https://knoveleng.github.io/polyglot-lion/) ![GitHub](https://github.com/knoveleng/polyglot-lion) ![License: MIT](https://github.com/knoveleng/polyglot-lion/blob/main/LICENSE)

</div>

<div align="center"> <img src="https://knoveleng.github.io/polyglot-lion/assets/overall-error-rate.png" alt="Average error rate comparison across models" width="900"/> </div>

About

Polyglot-Lion-1.7B was developed by Quy-Anh Dang and Chris Ngo at Knovel Engineering and presented in the report "Polyglot-Lion: Efficient Multilingual ASR for Singapore via Balanced Fine-Tuning of Qwen3-ASR".

The model is obtained by fine-tuning Qwen3-ASR-1.7B exclusively on publicly available speech corpora covering Singapore's four official languages. It utilizes a balanced sampling strategy that equalizes the number of training utterances per language and deliberately omits language-tag conditioning, allowing the model to learn to identify languages implicitly from audio.

Polyglot-Lion-1.7B achieves an average error rate of 14.85 โ€” competitive with MERaLiON-2-10B-ASR (14.32), a model 6ร— larger and 20ร— faster inference.

  • โ€”Parameters: 1.7B
  • โ€”Languages: English, Mandarin, Tamil, Malay
  • โ€”Training cost: $81 on a single NVIDIA RTX PRO 6000 (48 h)
  • โ€”Inference speed: ~0.10 s/sample on RTX PRO 4500

Results

ModelParamsEnglish (LS)English (NSC)Mandarin (CV)Mandarin (AISH1)Mandarin (AISH3)Mandarin (Fleurs)Tamil (CV)Tamil (SLR65)Tamil (SLR127)Tamil (Fleurs)Malay (Meso.)Malay (Fleurs)**Avg**
Whisper-large-v3-turbo0.8B3.0432.0217.919.6416.8110.6374.5058.1369.5666.9028.478.8833.04
SeaLLMs-Audio-7B7B94.749.538.689.659.7637.09126.70127.24138.65105.3171.3426.2563.75
Qwen2.5-Omni-3B3B29.2134.7946.3628.2544.5554.74318.36465.58448.82311.67211.9074.69172.37
Qwen2.5-Omni-7B7B13.8022.9614.497.3322.5816.68252.06239.15303.96326.43158.0643.92118.45
Qwen3-ASR-0.6B0.6B2.747.6410.062.082.599.75121.10127.00129.12130.0947.2918.7150.68
Qwen3-ASR-1.7B1.7B2.316.227.501.522.089.33139.96134.63144.49147.2339.0010.8753.76
MERaLiON-2-10B-ASR10B2.544.628.833.094.0711.9931.7819.2922.4228.6825.908.5514.32
Polyglot-Lion-0.6B0.6B2.676.096.161.932.329.1942.1623.0728.1437.6824.3314.4516.52
Polyglot-Lion-1.7B1.7B2.105.284.911.451.868.0039.1919.7526.8337.2821.519.9814.85

WER (%) for English, Tamil, and Malay; CER (%) for Mandarin. Lower is better. Bold = best overall.

Quick Start

Polyglot-Lion uses the qwen-asr package for inference.

bash
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create environment and install
uv venv --python 3.12 && source .venv/bin/activate
uv pip install qwen-asr hf_transfer

Transformers

python
import torch
from qwen_asr import Qwen3ASRModel

model = Qwen3ASRModel.from_pretrained(
    "knoveleng/polyglot-lion-1.7b",
    dtype=torch.bfloat16,
    device_map="cuda:0",
    max_new_tokens=256,
)

results = model.transcribe(audio="path/to/audio.wav", language=None)
print(results[0].language, results[0].text)

vLLM (faster)

python
from qwen_asr import Qwen3ASRModel

if __name__ == "__main__":
    model = Qwen3ASRModel.LLM(
        model="knoveleng/polyglot-lion-1.7b",
        gpu_memory_utilization=0.7,
        max_new_tokens=4096,
    )
    results = model.transcribe(audio=["audio1.wav", "audio2.wav"], language=None)
    for r in results:
        print(r.language, r.text)

For batch inference, timestamps, streaming, and server deployment, see the Qwen3-ASR documentation.

Citation

bibtex
@misc{dang2026polyglotlion,
    title={Polyglot-Lion: Efficient Multilingual ASR for Singapore via Balanced Fine-Tuning of Qwen3-ASR}, 
    author={Quy-Anh Dang and Chris Ngo},
    year={2026},
    eprint={2603.16184},
    archivePrefix={arXiv},
    primaryClass={cs.CL},
    url={https://arxiv.org/abs/2603.16184}, 
}