alt.freeweights.qwen / Qwen3.5-122B-A10B-OptiQ-2bit
From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.qwenSubject:

Qwen3.5-122B-A10B-OptiQ-2bit

Date: 2026-11-15Commit: 8284ab1Signed: 2DC28CC7B26A283B ✓

Image text to text model with 122.1B parameters. Safetensors weights, 46.9 GB in all. Published by mlx-community under Apache-2.0.

122.1B params46.9GBQwen3.5-122B-A10B-OptiQ-2bitsafetensorspermissive
FactsParams122.1BSize46.9 GBFormatssafetensorsTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
# manifest sha256 d6d480a834b1… · 46.9 GB · 21 files
$ fw verify ./Qwen3.5-122B-A10B-OptiQ-2bit mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
From sourceHosted (signed)mlx-community/Qwen3.5-122B-A10B-OptiQ-2bitLast check: 2026-11-15 05:18 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of Qwen3.5-122B-A10B.

Works with

Overview

Size
46.9 GB
Weights
46.8 GB (safetensors)
Parameters
122.1B
Formats
safetensors
Task
image text to text
License
Apache-2.0 (permissive)
Files
21, each with a sha256
Publisher
mlx-community
Added
2026-11-15
Section
alt.freeweights.qwen
Lineage

Original release from the publisher.

Base model: Qwen/Qwen3.5-122B-A10B

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 05:18 UTCpassed

Model card

From the publisher at commit 8284ab1. Shown as plain text with links; images open at the publisher.

mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit#

Built with mlx-optiq, the MLX-native toolkit to quantize, fine-tune, and serve LLMs locally on Apple Silicon, no PyTorch and no cloud. Read the write-up · All OptiQ quants · Docs

A 122-billion-parameter model that runs on a 36 GB Mac. This is a 2-bit mixed-precision MLX quant of Qwen3.5-122B-A10B (244 GB at bf16), produced by mlx-optiq. It is 44 GB on disk. While it generates, only ~12 GB sits in RAM: the attention, router and embeddings stay resident, and the 35 GB of mixture-of-experts weights stream off the SSD one expert at a time through optiq serve --stream-experts.

Image input#

It takes images. The SigLIP vision tower rides at bf16 in a sidecar (optiq/optiq_vision.safetensors, 0.90 GB), so the image path keeps full precision while the language tower runs at 2 bits. The tower stays resident; only the experts stream.

Verified on a 36 GB M3 Max with expert streaming on, 11.6 GB resident:

imageoutput
a red circle on white"The image contains a red circle."
a blue square on white"The image contains a blue square."
from PIL import Image
from optiq.runtime.moe_stream import load_streaming
from optiq.runtime.engine import OptiqEngine

model, tok = load_streaming("mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit")
eng = OptiqEngine.from_loaded(model, tok, "mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit")
print(eng.generate("What is in this image?", images=[Image.open("photo.jpg")]).text)

Requires mlx-optiq >= 0.3.3.

Asked to write Flappy Bird in a single HTML file, the 2-bit model produced a complete, working game. Here it is playing it:

Image: Qwen3.5-122B-A10B 2-bit playing the Flappy Bird it wrote, on a 36 GB Mac

What it is#

PropertyValue
BaseQwen3.5-122B-A10B (122 B total, ~10 B active per token, 256 experts/layer)
MethodOptiQ static — structural per-layer bit allocation, no calibration
Bit-widths4-bit on attention / router / embeddings / first+last block, 2-bit on the routed experts
Achieved bits-per-weight2.50
On disk44 GB
Resident while running~12 GB (experts streamed)
Decode speed~5 tok/s on an M3 Max (36 GB)

The allocation is rule-based: for a 122 B MoE, exact calibration-driven sensitivity would run for days and needs the full model resident as a reference, so OptiQ's static method assigns bits from architecture alone. On small models it matches the calibration method at a fraction of the cost (see the methods comparison).

Run it#

This is a Qwen3.5 MoE (model_type: qwen3_5_moe), so it needs mlx-lm from main and import optiq (the MoE text tower postdates the 0.31.3 PyPI release; the main build also reports 0.31.3, so install from git, not a version pin):

pip install -U mlx-optiq "mlx-lm @ git+https://github.com/ml-explore/mlx-lm.git"

Serve it with SSD expert streaming (auto-enabled for a MoE too big to fit resident; --stream-experts forces it):

optiq serve --model mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit --stream-experts

Then open the Lab, ask for a game, and watch it render in the Canvas pane. Streaming keeps the residency flat (~12 GB) no matter how large the model on disk is, at the cost of per-token expert reads (decode is I/O-bound).

Notes#

This is an extreme quant. 2-bit on the experts is lossy, and the point of this artifact is that a 122 B model runs at all on consumer Apple Silicon, with coherent output. For reference quality on this base, use a higher-bit quant (Qwen3.5-122B-A10B-4bit and up). The full story is in the blog post.

Files

21 files · 46.9 GBWeights 46.8 GB (safetensors). Sizes and sha256 from the signed manifest.
Show all 21 files with their sha256
FileSizesha256
.gitattributes1.62 KB2035f07a385e18487362f478ad1d33859a2c77a3bc2ebbb12b2ff74fcab8345a
README.md4.29 KB293e4930832be23c09e819d2d404fd9d6a8b9cbf9164f84c3b2b93aa7578c53f
chat_template.jinja7.76 KBa4aee8afcf2e0711942cf848899be66016f8d14a889ff9ede07bca099c28f715
config.json138 KB74003771dfd63585ddd0451067ee3f23de7876c18551bc674eeeafe558eb2587
flappy.gif1.47 MB86b01ec3a48f393e5f36ca2f448811220be5b8e9f467a94ca57b07a2475c5eb3
generation_config.json290 Bccf65a5eb2499a31bd05baeb5487875a1c9c35b748e4f25d80102f0fcaf1a8fd
kv_config.json792 B01fcb7ff5c292ce0b452d04f6b6e6b82884873bc058cb2ed599dc963c2f9b58d
model-00001-of-00009.safetensors5.17 GB40cfcac1fdd47dce2fbae4c5d4648e2bbf7e57d7ae2a0372178a54afc884abe6
model-00002-of-00009.safetensors5.31 GB70459aeb8f390d8aad686a622873b501b8aec118fec46c1c7d8981d1abcec639
model-00003-of-00009.safetensors5.36 GB689430ab422dd486ff84795f8a90483625d7b69831205669495788e89b93f837
model-00004-of-00009.safetensors5.36 GBe50b5977cae85f58182a4b6a634b7f20a0abfeedf4ad6474431ec483ef626c63
model-00005-of-00009.safetensors5.21 GB20932e8c2026f248103fd8ca85da18dde09025697df57f548d96acb0593c75ce
model-00006-of-00009.safetensors5.37 GBa30e5159a0a7b8092c902053e6cc238187a39cddc202828d9cdf844949a9b679
model-00007-of-00009.safetensors5.36 GB2e21b52d97cc6db408bccfa7c3d75e1ce9dffc210ec674df3253f1ca0eccd585
model-00008-of-00009.safetensors5.10 GB6dc1801a1bcdb4c7d2f43472d7e9f4ecda30baf17d8051d090c19c09e13cbb10
model-00009-of-00009.safetensors3.71 GB7d1ecd7ab68a1da769fbe59b9d4cf8b4f2a3dada5c0208db34eea74d75657875
model.safetensors.index.json243 KB371aa892f9ecf695079abe5cf862c46699fd1203071f9bc64a93a1251dd12836
optiq/optiq_vision.safetensors903 MBdc649802f43d9fe42231e312bf0da88ea8251fa12ad08466acbbf0d7a6bfbf5a
optiq_metadata.json67.3 KB45b90c0ea6ddfdbad82d7bcfdc0528e087b1e51112222b3a21d2a1c1711ea34e
tokenizer.json20.0 MB87a7830d63fcf43bf241c3c5242e96e62dd3fdc29224ca26fed8ea333db72de4
tokenizer_config.json1.20 KB16e7fce73d56f147c7f34890fd0e8b1c62af2a2559bcb8a520b720b2e0e08ed5
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
8284ab1029 pinned now2026-11-15 05:18 UTC21 files · 46.9 GB

Use it

$ fw get mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
# manifest sha256 d6d480a834b1… · 46.9 GB · 21 files
$ fw verify ./Qwen3.5-122B-A10B-OptiQ-2bit mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit.json --dir ./Qwen3.5-122B-A10B-OptiQ-2bit $ python3 fw.py verify ./Qwen3.5-122B-A10B-OptiQ-2bit ./mlx-community__Qwen3.5-122B-A10B-OptiQ-2bit.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit --revision 8284ab1029a2b0114824175aa7f04740ff318934 --local-dir ./Qwen3.5-122B-A10B-OptiQ-2bit
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForImageTextToText, AutoProcessor processor = AutoProcessor.from_pretrained("mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit", revision="8284ab1029a2b0114824175aa7f04740ff318934") model = AutoModelForImageTextToText.from_pretrained("mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit", revision="8284ab1029a2b0114824175aa7f04740ff318934", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit --revision 8284ab1029a2b0114824175aa7f04740ff318934

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
293e4930832be23c09e819d2d404fd9d6a8b9cbf9164f84c3b2b93aa7578c53f
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.qwenSubject: Qwen3.5-122B-A10B-OptiQ-2bitDate: 2026-11-15Commit: 8284ab1Signed: 2DC28CC7B26A283B ✓
Upstream
mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
Pinned commit
8284ab1029a2b0114824175aa7f04740ff318934
Manifest
Qwen3.5-122B-A10B-OptiQ-2bit.json · .minisig
Manifest sha256
d6d480a834b128228146bd7d3d8329092bd2f239edac9bd163f9851e3842c62b
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:18 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit.json $ curl -O https://freeweights.allternit.com/manifests/mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit.json.minisig $ minisign -Vm Qwen3.5-122B-A10B-OptiQ-2bit.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

Qwen/Qwen3.5-122B-A10B · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/Qwen3.5-122B-A10B-OptiQ-2bit
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. Qwen3.5-122B-A10B-OptiQ-2bit.json. Provenance. Takedown history: none.
From: BAAI <huggingface.co/BAAI>Subject: Aquila-VL-2B-llava-qwen
From: Perciqa <huggingface.co/Perciqa>Subject: Aurora-Code-1
From: BAAI <huggingface.co/BAAI>Subject: bge-reasoner-embed-qwen3-8b-0923
From: amazon <huggingface.co/amazon>Subject: BMOJOF-primed-HQwen3-8B-Instruct
From: nbeerbower <huggingface.co/nbeerbower>Subject: Bubba-Qwen3.6-27B-LoRA
From: bartowski <huggingface.co/bartowski>Subject: bytkim_Qwen3.8-27B-pi-GGUF