Alibaba

Qwen 3.5 4B

Hugging Facetrymirai/Qwen3.5-4B-L
Vendor
Alibaba
Quantization
Mirai-L
Parameters
4B
Size
4.2 GB
$ brew install mirai$ mirai --model trymirai/Qwen3.5-4B-L

Benchmarks

100 tok/s

higher is better

4871 tok/s

higher is better

4.66 GB

lower is better

Mirai Quantization

0.00050.00070.00104.44.75.05.45.76.1Language-model checkpoint size (GB)KL divergence (log scale)MiraiUnsloth / Llama.cppMLXMTPLXGoodMLX 8bitQ8_0UD-Q8_K_XLMTPLX-Optimized-QualityMirai • L

Integrate with SDK

1
Choose framework
2
Run the following command to install Mirai SDK
https://github.com/trymirai/uzu
3
Apply code
1import Foundation2import Uzu34public 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: "trymirai/Qwen3.5-4B-L") else {9        return10    }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? = nil24    for try await update in stream.iterator() {25        switch update {26        case .replies(let replies):27            let reply = replies.last28            message = reply?.message29            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

KL divergence versus language-model checkpoint size

Evaluation data mixture: 45% public agentic, 30% public SFT/long-context, 25% private chat data.

Quickstart

If you are on macOS, the easiest way is to install the `mirai` Homebrew package and then run the CLI:

sh
brew install mirai
mirai --model trymirai/Qwen3.5-4B-L

Currently only Apple silicon inference is supported. If you want to build things from source, read this overview.


Method

Mirai Large uses 8-bit symmetric integer quantization with bfloat16 scales and group size 32. Block-diagonal Random Hadamard Transforms with block size 32 are used to reduce activation and weight outliers. The checkpoint was prepared with post-training quantization.

Citation

If you find our work helpful, feel free to give us a cite.

bibtex
@misc{mirai-quant,
    title  = {{Mirai Quantization}: Redefining the speed-quality frontier for local LLMs on Apple silicon},
    author = {Artur Chakhvadze and Ryan Mathieu and Roman Knyazhitskiy and Nikolai Voinilenko and Chen-Chen Yeh and Artur Mullakhmetov and Eugene Bokhan and others},
    note   = {In collaboration with others at Mirai Labs},
    month  = {June},
    year   = {2026},
    url    = {https://trymirai.com/blog/quantization}
}

Original model

This is a quantized version of Qwen/Qwen3.5-4B. For architecture details, intended use, evaluations, and limitations, see the original model card.

Explore all local models