- Vendor
- Quantization
- MLX 4-bit
- Parameters
- 4B
- Size
- 2.1 GB
$ brew install mirai$ mirai --model mlx-community/gemma-3-4b-it-4bitBenchmarks
Gemma-3
Apple M4 Max 128GB
0.77 s
lower is better ↓
Gemma-3
Apple M4 Max 128GB
143 t/s
higher is better ↑
Gemma-3
Apple M4 Max 128GB
2.61 GB
lower is better ↓
Benchmarked 7 Aug 2026
Integrate with SDK
https://github.com/trymirai/uzu-swift
| 1 | import Foundation |
| 2 | import Uzu |
| 3 | |
| 4 | public func runChat() async throws { |
| 5 | let engineConfig = EngineConfig.create() |
| 6 | let engine = try await Engine.create(config: engineConfig) |
| 7 | |
| 8 | guard let model = try await engine.model(identifier: "alibaba:qwen3.5:0.8b:mirai:mirai-m:4") else { |
| 9 | return |
| 10 | } |
| 11 | for try await update in try await engine.download(model: model).iterator() { |
| 12 | print(String(format: "\r\u{001B}[2KDownload progress: %.2f%%", update.progress() * 100), terminator: "") |
| 13 | fflush(stdout) |
| 14 | } |
| 15 | print() |
| 16 | |
| 17 | let messages = [ |
| 18 | ChatMessage.system().withText(text: "You are a helpful assistant"), |
| 19 | ChatMessage.user().withText(text: "Tell me a short, funny story about a robot") |
| 20 | ] |
| 21 | let session = try await engine.chat(model: model, config: .create()) |
| 22 | let stream = await session.replyWithStream(input: messages, config: .create()) |
| 23 | var message: ChatMessage? = nil |
| 24 | for try await update in stream.iterator() { |
| 25 | switch update { |
| 26 | case .replies(let replies): |
| 27 | let reply = replies.last |
| 28 | message = reply?.message |
| 29 | print("Generated tokens: \(reply?.stats.tokensCountOutput ?? 0)") |
| 30 | case .error(let error): |
| 31 | print("Error: \(error)") |
| 32 | } |
| 33 | } |
| 34 | print("Reasoning: \(message?.reasoning() ?? "empty")") |
| 35 | print("Text: \(message?.text() ?? "empty")") |
| 36 | } |
| 37 | |
Details
A 4-bit quantized version of Google's Gemma 3 4B Instruct model, converted to Apple's MLX format for efficient on-device inference on Apple Silicon hardware. This community conversion was produced using mlx-vlm v0.1.18, preserving the multimodal capabilities of the original model in a significantly smaller footprint.
Origin & Architecture
The base model is google/gemma-3-4b-it, part of Google's Gemma 3 family — a lightweight yet capable series of instruction-tuned language models. Gemma 3 4B supports image-text-to-text generation, meaning it can process both visual and textual inputs to produce natural language responses. The 4-bit quantization dramatically reduces memory requirements, making it practical for local use on MacBooks and other Apple Silicon devices.
Key Highlights
- MLX-native format — purpose-built for Apple's MLX framework, enabling hardware-accelerated inference without external GPU dependencies.
- 4-bit quantization — substantially reduces model size and memory usage compared to the full-precision original, with minimal quality trade-off for most tasks.
- Multimodal capability — handles both image understanding and text generation tasks, from visual question answering to image description.
- Instruction-tuned — fine-tuned for conversational and instruction-following use cases, responding naturally to user prompts.
Use Cases
This model is well-suited for developers and researchers looking to run a capable multimodal model locally on Mac hardware. Common applications include image captioning, visual Q&A, conversational AI, and general text generation — all without cloud API dependencies.
Access
Usage requires acknowledgment of Google's Gemma license agreement via Hugging Face. Refer to the original model card for full details on capabilities and limitations.