Live transcription · Multilingual

Dolphin Base

Multilingual speech recognition across 40 languages, base tier -- a compact 140M WeNet/ESPnet E-Branchformer (CTC + attention)

Multilingual · 6.6× · 150.8 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 Base is the 140M "base" tier of DataoceanAI's multilingual Dolphin speech- recognition line, built on the same Dolphin / ESPnet recipe as the larger Dolphin Small: an E-Branchformer encoder + Transformer decoder trained with a joint CTC + attention objective over a shared SentencePiece BPE vocabulary spanning the card's advertised 40 languages (South Asian, Southeast Asian, Central Asian/Turkic, and Chinese including Cantonese as yue), at roughly a third of the small tier's encoder/decoder width -- a smaller RAM/CPU footprint for deployments where the small tier's accuracy headroom is not needed. Like dolphin-small, this checkpoint collapses this product's own Chinese-dialect granularity into a single zh (the dedicated dolphin-cn-dialect-small/-base packs cover per-dialect prompting). 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) and q8_0 (recommended) builds. q4_k is not offered for this pack (see verification notes below). 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. Verification notes: local verification so far covers Mandarin (zh), sanity-checked against the upstream architecture and bit-stable at fp16/q8_0. q4_k showed ~8.8% CER drift versus fp16 on the sanity clip and is therefore dropped from this pack's quants. dolphin-small's q4_k is clean at 0.0 drift and is unaffected.

What you can do with it

  • 🌏 40 languages, base tier — the same multilingual E-Branchformer coverage as Dolphin Small (South Asian, Southeast Asian, Central Asian/Turkic, Chinese/Cantonese), at a fraction of the size
  • 🪶 140M parameters — roughly a third the width of the small checkpoint (512 vs 768 d_model, fewer 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
  • 🐬 SentencePiece BPE vocab — a shared subword vocabulary across all 40 languages (distinct from the cn-dialect family's fixed character vocab)
  • 🦀 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-base:fp16 273.5 MB fp16
open .oasr
dolphin-base:q8default 150.8 MB q8_0
open .oasr

Model facts

Size150.8 MB
Speed6.6× real-time
LanguageMultilingual
Familydolphin
VendorDataoceanAI
Released2026-05-13
Peak memory1.6 GB
Quantizationq8_0
LicenseApache-2.0
Revisioncedd9f67c535032fcfae07c5469dc49f9d957aab
sha25679ca61ddfcba1d83aec875fa5f7d482b8a7e92939f80345e152553a4f453add7

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-base:q8
↓ dolphin-base.oasr  150.8 MB  ✓ verified sha256
$ openasr transcribe meeting.wav --backend native --model-pack ~/.openasr/models/dolphin-base/q8_0/dolphin-base-q8_0.oasr
✓ local transcript · 0 bytes sent
bash · serve a local API
$ openasr serve --backend native --model-pack ~/.openasr/models/dolphin-base/q8_0/dolphin-base-q8_0.oasr --addr 127.0.0.1:8080
▶ http://127.0.0.1:8080 · model=dolphin-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-base", file=audio)