Live transcription · Multilingual

Dolphin CN-Dialect Base

Chinese multi-dialect speech recognition, base tier -- a compact 140M WeNet E-Branchformer (CTC + attention) for Sichuan and 22 regional dialects

Multilingual · 7.6× · 213.9 MB

Install in OpenASR Desktop

Opens the desktop app and downloads this model for you.

Don't have the app yet? Download OpenASR Desktop

On-deviceOn this computer
interview.m4a12:04

let's line up this week's release plan,

the beta build can ship on Friday,

then loop in design and QA,

Why it fits

Dolphin CN-Dialect Base is the 140M "base" tier of DataoceanAI's Chinese multi-dialect speech-recognition line, built on the same Dolphin / WeNet recipe as the larger Dolphin CN-Dialect Small: an E-Branchformer encoder + Transformer decoder trained with a joint CTC + attention objective over a mixed character/BPE vocabulary. It covers the same Sichuan (川话)-forward set of 22 Chinese dialects (Wu, Cantonese, Minnan, Shanghainese and more) as its small.cn sibling, but at roughly a third of the encoder/decoder width (512 vs 768 d_model, 6 vs 12 layers) -- a smaller RAM/CPU footprint for deployments where the small tier's accuracy headroom is not needed. Unlike small.cn, this base.cn checkpoint does not ship a trained hotword deep-biasing module. This OpenASR repo repackages the weights as .oasr packs that run natively in the OpenASR runtime -- no Python at inference, all decoding local. It ships in fp16 (maximum fidelity, recommended), q8_0, and q4_k builds. Note: this model does not emit punctuation. Its upstream training corpus is transcribed without punctuation marks, so the decoder never predicts a punctuation token -- there is no setting to enable it. Transcripts are plain, unpunctuated text by design.

What you can do with it

  • 🀄 22 Chinese dialects, base tier — the same WeNet E-Branchformer dialect coverage as Dolphin CN-Dialect Small (Sichuan/川话, Wu, Cantonese, Minnan, Shanghainese and more), at a fraction of the size
  • 🪶 140M parameters — roughly a third the width of the small.cn checkpoint (512 vs 768 d_model, 6 vs 12 layers), for tighter RAM and faster CPU decode when the small tier is overkill
  • 🧩 Joint CTC + attention — the same E-Branchformer encoder + Transformer decoder recipe with CTC/attention rescoring, verified against a shape-derived runtime contract shared with the rest of the Dolphin family
  • 🐬 Chinese-focused, mixed char/BPE vocab — a character vocabulary for Chinese with SentencePiece word-piece tokens for code-switched English, purpose-built for zh audio including heavy accents
  • 🦀 Native in OpenASR.oasr packs run with no Python at inference, engineered for peak performance on CPU & GPU

Other models

Developer details CLI commands, file hashes, and per-quant downloads — for scripting and verification.

Downloads by quantization

Pull stringSizeQuant
dolphin-cn-dialect-base:fp16default 213.9 MB fp16
open .oasr
dolphin-cn-dialect-base:q8 121.2 MB q8_0
open .oasr
dolphin-cn-dialect-base:q4 71.8 MB q4_k
open .oasr

Model facts

Size213.9 MB
Speed7.6× real-time
LanguageMultilingual
Familydolphin
VendorDataoceanAI
Released2026-05-13
Peak memory990.8 MB
Quantizationfp16
LicenseApache-2.0
Revisione2996bbc639c4d4a16ca199cda934f7b54dcf476
sha2567fa84334cdb81ec3d0ae09882e613424a79eef871a682d4028487ea72318e520

Usage

These are CLI / local-server examples. The desktop app runs this model without typing a command — use Install above.

bash · transcribe a file
$ openasr pull dolphin-cn-dialect-base:fp16
↓ dolphin-cn-dialect-base.oasr  213.9 MB  ✓ verified sha256
$ openasr transcribe meeting.wav --backend native --model-pack ~/.openasr/models/dolphin-cn-dialect-base/fp16/dolphin-cn-dialect-base-fp16.oasr
✓ local transcript · 0 bytes sent
bash · serve a local API
$ openasr serve --backend native --model-pack ~/.openasr/models/dolphin-cn-dialect-base/fp16/dolphin-cn-dialect-base-fp16.oasr --addr 127.0.0.1:8080
▶ http://127.0.0.1:8080 · model=dolphin-cn-dialect-base · 0 bytes will leave this host
python · client.py
from openai import OpenAI
client = OpenAI(base_url="http://127.0.0.1:8080/v1", api_key="local")
audio = open("meeting.wav", "rb")
text = client.audio.transcriptions.create(model="dolphin-cn-dialect-base", file=audio)