Views
No views yet
typhoon-ai/typhoon-ocr-3b for native Apple Silicon inference. Higher-quality sibling of MegawizCo/typhoon-ocr-3b-mlx-q4; pick this one if you need the lowest CER and can spare the RAM.Extract all text from this image.) on Mac mini Apple Silicon, 2026-05-12:| Backend | CER median (HW) | CER max | Wall median | Generation TPS | Peak RAM |
|---|---|---|---|---|---|
| MLX q4 | 0.009 | 0.081 | 1.95 s | ~107 | ~3.5 GB |
| MLX q8 (this) | 0.000 | 0.081 | 2.34 s | ~65 | ~5 GB |
Ollama typhoon-ocr1.5-3b Q4 | 0.000 | 0.058 | 2.90 s | ~78 (variable 40-84) | ~4 GB |
uv pip install mlx-vlm1from mlx_vlm import generate, load
2from mlx_vlm.prompt_utils import apply_chat_template
3from mlx_vlm.utils import load_config
4
5model, processor = load("MegawizCo/typhoon-ocr-3b-mlx-q8")
6config = load_config("MegawizCo/typhoon-ocr-3b-mlx-q8")
7
8prompt = apply_chat_template(processor, config, "Extract all text from this image.", num_images=1)
9out = generate(model, processor, prompt, image=["prescription.png"], max_tokens=512)
10print(out.text) # Typhoon-OCR wraps output in {"text": "..."}1mlx_vlm.generate \
2 --model MegawizCo/typhoon-ocr-3b-mlx-q8 \
3 --image prescription.png \
4 --prompt "Extract all text from this image." \
5 --max-tokens 5121mlx_vlm.convert \
2 --hf-path typhoon-ai/typhoon-ocr-3b \
3 -q --q-bits 8 \
4 --mlx-path typhoon-ocr-3b-mlx-q8typhoon-ai/typhoon-ocr-3b.MegawizCo/typhoon-ocr-3b-mlx-q4 — faster, smaller, slight CER trade-off