Qwen3-ASR-0.6B-Khmer

A Khmer (ខ្មែរ) automatic speech recognition model, fine-tuned from Qwen/Qwen3-ASR-0.6B on ~700 hours of Khmer speech from the DDD-Cambodia/khmer-speech-dataset. It substantially improves Khmer transcription accuracy over the base model while keeping the compact 0.6B footprint.

Results

Character Error Rate (CER, lower is better). Khmer has no spaces between words, so CER is computed space-insensitive; the out-of-domain set is additionally normalized by removing punctuation.

Evaluation set Clips CER (corpus) CER (avg) Median CER Perfect (CER=0)
In-domain dev 1,000 1.96% 1.95% 0.65% 49.2%
Out-of-domain 2,906 7.91% 8.26% 6.25% 26.4%
  • CER (corpus) = total edit distance ÷ total reference characters (micro-average).
  • CER (avg) = mean of per-clip CER (macro-average).

Usage

Install the qwen-asr package (transformers backend):

pip install -U qwen-asr
import torch
from qwen_asr import Qwen3ASRModel

model = Qwen3ASRModel.from_pretrained(
    "seanghay/Qwen3-ASR-0.6B-Khmer",
    dtype=torch.bfloat16,
    device_map="cuda:0",
    max_inference_batch_size=32,
    max_new_tokens=256,  # increase for long audio to avoid truncation
)

results = model.transcribe(
    audio="path/to/khmer.wav",  # local path, URL, base64, or (np.ndarray, sr)
)

print(results[0].text)

Audio is resampled to 16 kHz mono internally. Long recordings are automatically chunked; for long clips set a larger max_new_tokens so the transcript is not cut off.

Training

Base model Qwen/Qwen3-ASR-0.6B
Language Khmer (km)
Training data DDD-Cambodia/khmer-speech-dataset (~700 h, ~384k clips)
Epochs 3 (35,997 steps)
Effective batch size 32 (per-device 4 × grad-accum 8)
Learning rate 2e-5, linear schedule with warmup
Precision bf16
Hardware 1× NVIDIA RTX 3090 (24 GB)
Final eval loss 0.040

The model is trained to emit a language tag followed by the transcript (language Khmer<asr_text>…); the qwen-asr package parses this automatically.

Limitations

  • Tuned primarily for read/clean Khmer speech. Accuracy degrades on noisy, spontaneous, or heavily code-switched (Khmer–English) technical speech, where English terms may be transliterated phonetically into Khmer script.
  • Output is unpunctuated / minimally segmented Khmer text.
  • As with most ASR models, very long or hesitant/repetitive speech can occasionally produce repeated phrases.

License

Released under the Apache-2.0 license, inheriting the license of the base Qwen3-ASR-0.6B model.

Acknowledgements

Built on Qwen3-ASR by the Alibaba Qwen team.

Citation

If you use this model, please cite:

@misc{seanghay2026qwen3asrkhmer,
  title  = {Qwen3-ASR-0.6B-Khmer},
  author = {Seanghay},
  year   = {2026},
  howpublished = {\url{https://huggingface.co/seanghay/Qwen3-ASR-0.6B-Khmer}}
}

This model is fine-tuned from Qwen3-ASR:

@misc{qwen3asr,
  title  = {Qwen3-ASR},
  author = {Qwen Team},
  year   = {2025},
  url    = {https://github.com/QwenLM/Qwen3-ASR}
}
Downloads last month
619
Safetensors
Model size
0.8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for seanghay/Qwen3-ASR-0.6B-Khmer

Finetuned
(43)
this model
Quantizations
1 model

Dataset used to train seanghay/Qwen3-ASR-0.6B-Khmer

Space using seanghay/Qwen3-ASR-0.6B-Khmer 1

Evaluation results