Alkd/TEA-ASR-1.1-MLX-4bit
TEA-ASR-1.1-MLX-4bit
MLX conversion of JacobLinCool/TEA-ASR-1.1 (MIT), a Taiwan-Mandarin ASR model adapted from Qwen/Qwen3-ASR-1.7B that emits Traditional Chinese with Taiwan vocabulary natively and handles Mandarin-English code-switching. All credit for the model goes to the TEA-ASR authors.
Converted with mlx-audio v0.4.5 using mixed affine quantization (the MLX equivalent of the GGUF Q4KM + mmproj-Q8_0 recipe).
Quantization recipe
Per-layer bit widths are recorded in config.json under quantization[<layer path>] (standard MLX per-layer overrides): the audio tower linear layers carry {"bits": 8, "group_size": 64} entries while the global default is 4-bit / group size 64.
Usage (Python, mlx-audio)
Note: mlx-audio's stock qwen3_asr loader hardcodes "never quantize the audio tower" and checks that before the per-layer config overrides, so loading this model needs a one-line predicate override:
from mlx_audio.stt.models.qwen3_asr import qwen3_asr
qwen3_asr.Qwen3ASRModel.model_quant_predicate = lambda self, p, m: True
from mlx_audio.stt.utils import load_model
model = load_model("Alkd/TEA-ASR-1.1-MLX-4bit")
result = model.generate("audio.wav", language="Chinese")
print(result.text)Loaders that follow the per-layer quantization dict in config.json (mlx-lm-style loading, custom MLX Swift loaders) need no override.
Intended use
Built for the Sumi macOS app (on-device Mandarin voice-to-text) via mlx-audio / mlx-audio-swift.
License
MIT (same as the base checkpoint). The underlying Qwen3-ASR weights remain subject to Apache-2.0 attribution terms.
