stt_bn_fastconformer_ctc_large

Bengali (বাংলা) speech recognition. NVIDIA FastConformer-Large (115.6 M params) with a CTC decoder, fine-tuned from stt_en_fastconformer_hybrid_large_pc.

CTC means non-autoregressive, fully parallel decoding — fast and simple to serve. For lower WER at the cost of speed, use the RNNT sibling stt_bn_fastconformer_hybrid_large_v2.

20.45% WER on the internal dev split, greedy, no LM. (Dev, not test — not comparable to the hybrid model's test numbers.)

Usage

pip install nemo_toolkit['asr']
from nemo.collections.asr.models import EncDecCTCModelBPE

model = EncDecCTCModelBPE.from_pretrained("SayedShaun/stt_bn_fastconformer_ctc_large")
print(model.transcribe(["sample_bn.wav"])[0].text)

# batched
for hyp in model.transcribe(["a.wav", "b.wav", "c.wav"], batch_size=16):
    print(hyp.text)

In: 16 kHz mono audio — resample first if needed (ffmpeg -i in.mp3 -ar 16000 -ac 1 out.wav). Out: Bengali Unicode text, no punctuation or casing.

Training data

1,209.62 hours / 772,605 utterances of Bengali, covering Bangladeshi and Indian varieties in both read and spontaneous registers. Median utterance 4.50 s (mean 5.64 s); a 0.5–20 s filter at load time trims both tails, so the hours actually trained on are somewhat below the total.

Trained for 5,250,849 steps; this release is the epoch-26 checkpoint, saved at step 5,085,315.

Nine corpora: Common Voice (Bengali) · OpenSLR-53 · OpenSLR-37 (bn_bd, bn_in) · FLEURS bn_in · Ben-10 · Shrutilipi · Kathbath · IndicVoices · Vaani

Training and evaluation code: sayedshaun/conformer-training-pipeline.

License

CC-BY-4.0, following the NVIDIA NeMo base checkpoint. The underlying corpora carry their own licences — check each before commercial use.

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Datasets used to train SayedShaun/stt_bn_fastconformer_ctc_large

Evaluation results

  • WER (greedy, no LM) on Internal Bengali dev split (multi-corpus)
    self-reported
    20.450