audarai/Audar-ASR-V1-Flash
<div align="center">
Audar-ASR-V1-Flash · Transformers + GGUF
Audar's Arabic-first ASR — the real-time, edge tier.
From Arabic to the world.
-f59e0b)

<p><a href="#-what-it-is"><b>🧭 Overview</b></a> · <a href="#-benchmarks"><b>📊 Benchmarks</b></a> · <a href="#-transformers-inference"><b>🤗 Transformers</b></a> · <a href="#-gguf-inference-llamacpp"><b>💻 GGUF</b></a> · <a href="#-real-time-streaming"><b>🎙️ Streaming</b></a> · <a href="https://github.com/AudarAI/Audar-ASR-V1/blob/main/report/Audar-ASR-V1-Technical-Report.pdf"><b>📄 Tech Report</b></a> · <a href="#-vllm-inference-gpu-serving"><b>⚡ vLLM</b></a> · <a href="https://github.com/AudarAI/Audar-ASR-V1"><b>🐙 GitHub</b></a> · <a href="https://www.audarai.com"><b>☁️ Audar API</b></a> · <a href="https://www.audarai.com/license/audarai-open-license-v1.0/"><b>📜 License</b></a></p>
</div>
🧭 What it is
Audar-ASR-V1-Flash is the edge tier of Audar's Arabic-first speech-recognition family — the same in-house Arabic training program as Audar-ASR-V1-Turbo, delivered in a fast ~0.6B-decoder model for real-time captioning and on-device use. It recasts transcription as audio-conditioned next-token prediction (a language-model decoder, not CTC/transducer), and is built on a permissively-licensed open-weight audio-LLM foundation, then adapted in-house through Audar's Arabic training program — the contribution is the adaptation, not the foundation:
- 🧱 Large-scale bilingual pretraining — 300,000+ hours of labeled audio, primarily Arabic and English (MSA + Gulf, Egyptian, Levantine, Maghrebi; code-switching; diverse channels).
- 🎯 Dialect-targeted fine-tuning with hardness and multi-task sampling.
- 🧠 KTO preference alignment (Kahneman-Tversky Optimization) from trained native-Arabic annotators.
It transcribes MSA and every major Arabic dialect, code-switched Arabic–English, and English, across 30 languages, and runs on CPU / GPU / edge via 🤗 Transformers or GGUF. For maximum accuracy on the hardest dialectal audio, use the larger Turbo tier.
Built on a permissively-licensed open-weight audio-LLM foundation; the adaptation, data, and alignment are Audar's. Full method and results: Audar-ASR-V1 Technical Report. Runs via Transformers, llama.cpp / GGUF, and vLLM.
Model summary
<table> <tbody> <tr><td width="200"><b>Model</b></td><td>Audar-ASR-V1-Flash — Arabic-first generative ASR (edge tier)</td></tr> <tr><td><b>Task</b></td><td>Automatic speech recognition (audio → text)</td></tr> <tr><td><b>Approach</b></td><td>Generative ASR — audio encoder + language-model decoder</td></tr> <tr><td><b>Training</b></td><td>built on an open-weight audio-LLM foundation; adapted via a curriculum — 300k+ hrs bilingual pretraining → dialect-targeted SFT → KTO alignment</td></tr> <tr><td><b>Decoder parameters</b></td><td>596,049,920 (0.60B)</td></tr> <tr><td><b>Audio encoder parameters</b></td><td>186,376,192 (0.19B)</td></tr> <tr><td><b>Total parameters</b></td><td>782,426,112 (0.78B, bf16)</td></tr> <tr><td><b>Audio input</b></td><td>16 kHz mono; 30 s context (longer audio is chunked/streamed)</td></tr> <tr><td><b>Languages</b></td><td>Arabic (MSA + Gulf/Egyptian/Levantine/Maghrebi dialects) + English + 28 more</td></tr> <tr><td><b>Runtimes</b></td><td>🤗 Transformers (GPU) · GGUF / llama.cpp (CPU · GPU · edge) · vLLM</td></tr> <tr><td><b>License</b></td><td>AudarAI Open License v1.0</td></tr> </tbody> </table>
📊 Benchmarks
Open Universal Arabic ASR Leaderboard — full standings
Flash is evaluated end-to-end on all six leaderboard test sets (full test splits, not sampled), with the leaderboard-equivalent normalizer — the same harness and protocol as every other row (Audar rows below are the leaderboard maintainers' independent reproduction, Aug 2026 normalization). Audar-ASR-V1-Flash scores 32.0 avg WER at just 0.78B parameters — on par with Qwen3-ASR-1.7B (2× its size) and ahead of Voxtral-Small-24B, Whisper-large-v3, and every CTC baseline. Audar's accuracy tier, **Turbo**, is #1.
Per-dataset WER % across all six sets, plus the two composite averages. Lower is better; Avg WER is the ranking metric. Flash and Turbo (Ours) in bold; bold cell = best in column.
Flash — per-dataset detail (full test sets)
Both metrics, for the six leaderboard sets and the composite average.
Use Flash for real-time and on-device transcription; step up to **Turbo** when you need the lowest error on heavy dialectal or long-form audio — Turbo is #1 on the leaderboard (23.2 % avg WER) and cuts Flash's average WER by ~8.9 pp, with the biggest gains on SADA (44.4→28.9) and MGB-2 (17.1→11.1).
🏁 Benchmark-parity inference (qwen-asr) — recommended
Our leaderboard numbers were produced with the `qwen-asr` package, which implements this model's I/O protocol natively — and were independently reproduced by the leaderboard maintainers with this exact code:
# pip install qwen-asr torch
import torch
from qwen_asr import Qwen3ASRModel
model = Qwen3ASRModel.from_pretrained(
"audarai/Audar-ASR-V1-Flash",
dtype=torch.bfloat16, device_map="cuda:0",
max_inference_batch_size=16, max_new_tokens=256,
)
results = model.transcribe(audio=["clip.wav"], language=["Arabic"])
print(results[0].text)Protocol handling is mandatory, not optional:
language="Arabic"makes the package prefilllanguage Arabic<asr_text>into the prompt, so the model never free-runs language identification.- The model's no-speech verdict (
language None<asr_text>) is mapped to an empty transcript; without this, non-speech audio (music, silence) can produce repetition loops. max_new_tokens=256and bf16 are the exact decode settings behind our published numbers.
If you use raw transformers (below), you must strip the language <Lang><asr_text> output prefix yourself and expect degraded scores on non-speech-heavy data.
🤗 Transformers inference
Ships self-contained modeling code, so trust_remote_code=True is required.
# pip install "transformers>=4.57" torch librosa
import re, torch, librosa
from transformers import AutoProcessor, AutoModelForCausalLM
repo = "audarai/Audar-ASR-V1-Flash"
proc = AutoProcessor.from_pretrained(repo, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
repo, trust_remote_code=True, torch_dtype=torch.bfloat16, device_map="cuda:0",
).eval()
SYSTEM = "فرّغ الكلام العربي التالي." # "Transcribe the following Arabic speech."
audio, _ = librosa.load("clip.wav", sr=16000, mono=True)
conv = [
{"role": "system", "content": SYSTEM},
{"role": "user", "content": [{"type": "audio"}]}, # audio placeholder (a list, not "<audio>")
]
text = proc.apply_chat_template(conv, tokenize=False, add_generation_prompt=True)
inputs = proc(text=text, audio=audio, sampling_rate=16000, return_tensors="pt").to(model.device)
inputs["input_features"] = inputs["input_features"].to(model.dtype) # features are fp32 → cast to bf16
out = model.generate(**inputs, max_new_tokens=440, do_sample=False)
hyp = proc.batch_decode(out[:, inputs["input_ids"].shape[1]:], skip_special_tokens=True)[0]
print(re.sub(r"^\s*language\s+[A-Za-z]+\s*(?:<asr_text>)?\s*", "", hyp).strip())- Language steering: the Arabic auto-dialect prompt above needs no dialect hint. For other languages use e.g.
"Transcribe the following speech.". - Long audio (>30 s): split at ~30 s boundaries (see the streaming section).
⚡ vLLM inference (GPU serving)
Flash also serves on [vLLM](https://github.com/vllm-project/vllm) with an OpenAI-compatible API. vLLM implements the Qwen3-ASR architecture natively, so it serves the repo's bf16 `model.safetensors` directly — no conversion, lossless (FLEURS AR/EN CER ≈ 3.3 %).
1. Install (audio support required)
The stock vLLM image ships no audio codecs; add PyAV + librosa + soundfile:
FROM vllm/vllm-openai:v0.24.0
RUN pip install --no-cache-dir av librosa soundfiledocker build -t vllm-audio:0.24.0 .2. Serve
hf download audarai/Audar-ASR-V1-Flash --local-dir ./flash --exclude "*.gguf"
docker run -d --name audar-asr --gpus '"device=0"' \
-v $PWD/flash:/model:ro -p 8000:8000 \
vllm-audio:0.24.0 \
--model /model --served-model-name audar-asr-v1-flash \
--trust-remote-code --max-model-len 8192 --gpu-memory-utilization 0.3vLLM auto-detects the model; ~1.6 GB weights fit on any ≥ 8 GB GPU.
3. Transcribe
Send 16 kHz mono audio as base64 input_audio with the Arabic system prompt, decode greedily (temperature: 0). POST /v1/audio/transcriptions (multipart) or /v1/chat/completions both work:
curl -s http://localhost:8000/v1/audio/transcriptions \
-F model=audar-asr-v1-flash -F file=@clip.wav -F temperature=0Output note: Flash prefixes raw output with alanguage <Lang><asr_text>tag — strip it client-side (same as the Transformers example above):re.sub(r"^\s*language\s+[A-Za-z]+\s*(?:<asr_text>)?\s*", "", text).strip().
💻 GGUF inference (llama.cpp)
Audar-ASR runs on llama.cpp via the multimodal (mtmd) path: a quantized decoder GGUF plus a BF16 audio projector (mmproj). Build a recent llama.cpp (with Qwen3-ASR support), then:
./llama-mtmd-cli \
-m Audar-ASR-V1-Flash-Q8_0.gguf \
--mmproj mmproj-Audar-ASR-V1-Flash.gguf \
--audio clip.wav \
-sys "فرّغ الكلام العربي التالي." \
--temp 0⚠️ The audio projector (`mmproj`) must stay BF16 — the encoder's ClippableLinear is numerically sensitive, so F16/Q8 measurably degrade quality. The decoder quantizes normally.GGUF variants
Prefer a managed endpoint? The Audar-ASR family is also available via the **Audar API/SDK** — streaming, speaker-attributed transcription, and diarization, production-hosted.
🎙️ Real-time streaming
The 30 s-context model streams via LocalAgreement-2: as audio arrives, the trailing window is re-decoded each hop and a word is committed only once two consecutive decodes agree on it — giving stable, low-latency incremental output on both the Transformers and GGUF paths. Audar's production realtime engine serves the same policy over an OpenAI-Realtime-compatible WebSocket with model-based endpointing.
🌍 Languages, dialects & tasks
- Primary: Arabic — MSA and dialectal (Gulf/Emirati, Egyptian, Levantine, Maghrebi), plus code-switched Arabic–English; dialect-faithful orthography from audio alone.
- Also: English + 28 additional languages.
- Task: transcription (audio → UTF-8 text), prompt-steerable for language/formatting.
Intended use & limitations
Intended use. Live captioning and subtitles, voice assistants/agents, meeting and call-center transcription, media/broadcast, accessibility — cloud, on-prem, or offline/edge.
Limitations.
- Maghrebi / Moroccan Darija (Casablanca) is the hardest condition for all systems.
- Heavily code-switched telephony and low-SNR audio degrade accuracy relative to clean MSA.
- Long recordings can drift; chunk at sentence boundaries for best results.
- Not evaluated for, and must not be used for, covert speaker identification.
📜 License
Released under the AudarAI Open License v1.0 — commercial use, redistribution, and fine-tuning/quantization permitted; ship the license and keep notices. See audarai.com/license/audarai-open-license-v1.0.
Citation
@misc{audar-asr-flash-2026,
title = {Audar-ASR-V1: A Multilingual, Arabic-First Generative Speech Recognition Foundation Model},
author = {AudarAI},
year = {2026},
note = {Audar-ASR-V1-Flash},
url = {https://github.com/AudarAI/Audar-ASR-V1/blob/main/report/Audar-ASR-V1-Technical-Report.pdf}
}About AudarAI
<div align="center">
Leading Arabic-First Multilingual Audio Intelligence
AudarAI starts with Arabic — and expands to the world.
</div>
We are building advanced multilingual audio intelligence that helps individuals, enterprises, and governments communicate across languages, cultures, and borders. By combining Arabic-first speech technology with global multilingual AI, AudarAI transforms voice into understanding, interaction, and connection.
Our work spans speech recognition, speech understanding, voice-enabled digital assistants, human-computer interaction, and intelligent audio systems designed for real-world impact. From empowering people to access technology in their native language to helping organizations communicate globally, AudarAI is shaping a future where every voice can be heard, understood, and connected.
Arabic-first. Multilingual by design. Human-centered at heart.
<div align="center">
[🌐 www.audarai.com](https://www.audarai.com) · 🤗 Hugging Face · GitHub · contact@audarai.com
© 2026 AUDARAI PTE. LTD. · Licensed under the AudarAI Open License v1.0
</div>
