Introduction

Google’s EmbeddingGemma 2 was meant to embed audio, not transcribe it. Over the last few days, builders flipped that script: freeze (or lightly tune) the open audio encoder, train a small CTC reader, and you get blistering on-device speech-to-text. The clearest day-0 artifact is QUAN-Transcribe-1.0 — a Vietnamese ASR drop on Hugging Face from October 14 — with norsk-asr and the free Embedding Gemma Transcribe Mac app following the same idea.

This is an open-recipe wave, not a single vendor launch. Treat every WER and speed number below as self-reported unless you re-run the sets yourself.

What Shipped

QUAN-Transcribe-1.0 (Vietnamese)

Quan Nguyen’s card and inference repo describe a 356M CTC model on EmbeddingGemma 2: the USM-style conformer encoder with the top 2 of 12 layers fine-tuned, feeding a 6-layer transformer reader (d=768). Training took about 3 hours on 8×H100 on ~2,800 hours of Vietnamese speech. The same weights do full-context and streaming decode (0.48 s chunks).

On the author’s nine-set Vietnamese table (greedy, one H100, shared normalization), QUAN averages 6.87% WER at about 3,713× real time — edging Gemini-Flash-3.8 (6.92%) and ElevenLabs Scribe v2 (7.08%) on that sheet. Output is lowercase Vietnamese with no punctuation and numbers written as words. License: Gemma Terms of Use (derivative of EmbeddingGemma 2).

# Accept EmbeddingGemma 2 terms on Hugging Face first
pip install git+https://github.com/qnguyen3/QUAN-Transcribe
quan-transcribe audio.wav

from quan_transcribe import QuanTranscribe

asr = QuanTranscribe.from_pretrained("qnguyen3/QUAN-Transcribe-1.0")
print(asr.transcribe("audio.wav"))
print(asr.transcribe("audio.wav", streaming=True))

norsk-asr (Norwegian Bokmål)

ahdrage/norsk-asr copies the recipe on 1,680 hours of open Norwegian data. Code and weights claim Apache-2.0 (check the Hub card; the optional KenLM files are CC BY-SA). Greedy runs about 1,000–1,600× real time on one H100 and about 10× on a laptop CPU. With a 4-gram LM, FLEURS WER is 10.0% vs 4.2% for NB-Whisper large — usefully fast, not a quality knockout. No streaming; output is raw lowercase. Train cost in the README is about $15 on a rented H100 path.

git clone https://github.com/ahdrage/norsk-asr.git && cd norsk-asr
uv sync --extra lm
uv run --extra lm python -m norsk_asr.download
uv run --extra lm python -m norsk_asr.transcribe opptak.m4a --timestamps

Embedding Gemma Transcribe (Mac app)

eg2.haku.sh keeps the encoder frozen and trains only a small English reader (under two hours on 8×H100) that maps audio slices to the nearest of ~229k English words, then a tiny model for punctuation. On a base M3 MacBook Air (8 GB) Neural Engine they claim 288× real time — one hour of audio in 12.6 s — at about 5% WER, English-only, ~715 MB first download. Audio stays on device. Treat the app as a free runnable demo of the idea; confirm weight openness separately from QUAN/norsk-asr.

Why It Matters for Makers

You already have strong open ASR (Whisper family, Parakeet, QVAC TranscribePsy). This wave is interesting because EmbeddingGemma 2’s audio encoder is a shared multimodal base: one encoder, many cheap language-specific readers, streaming-friendly CTC, and laptop/Neural Engine speeds. If you need Vietnamese offline/streaming today, start with QUAN. If you need Bokmål on a Mac/Linux box, try norsk-asr. If you just want to feel the Mac Neural Engine path, try the eg2 app. Re-score on your own audio before you trust the leaderboard rows.

Conclusion

EmbeddingGemma 2 just became an on-device ASR substrate in public: QUAN-Transcribe for Vietnamese on October 14, norsk-asr for Norwegian Bokmål right after, and a free Mac Neural Engine app showing the English path. Clone the repos, accept the Gemma terms where required, and time a file on your own hardware — that is the whole story.

Original source:

https://huggingface.co/qnguyen3/QUAN-Transcribe-1.0

Code: QUAN-Transcribe · norsk-asr · Mac app: eg2.haku.sh

—Anabel ♡