To Q2 or Not to Q2? Spoiler: It’s Not. (Benchmarking Qwen 3.5 397B)
2026-02-18
Machine-translated — the English original is authoritative.
TL;DR:* Ich habe das brandneue multimodale Modell Qwen 3.5 397B auf meinem Mac Studio (M3 Ultra, 512 GB RAM) ausprobiert. Ich habe es auf 2-Bit, 3-Bit, 6-Bit und 8-Bit quantisiert, um die Bilderkennungsfähigkeiten für einen lokalen Video-Bearbeitungs-Workflow zu testen. Spoiler:* Q2 ist Unsinn, Q3 ist überraschend leistungsfähig und Q6 ist die Goldilocks-Zone. Größer ist nicht immer besser, wenn es auf Geschwindigkeit ankommt.
Hier sitze ich und tippe um 23:07 Uhr, nachdem ich von 17:10 Uhr „teleportiert“ wurde, als ich naiverweise sagte: „Ich gebe diesem neuen Modell einen kurzen Testlauf.“ LOL.
Das Modell im Frage ist das absolute Kraftpaket, Qwen 3.5 Vision (397B), das erst gestern veröffentlicht wurde. Ich laufe es auf einem Mac Studio M3 Ultra mit 512 GB RAM. Glücklicher Weise, weiß ich – und genau deshalb teile ich diese Erkenntnisse heute Abend. Falls Sie nicht das Glück haben, einen halben Terabyte an Unified Memory auf Ihrem Schreibtisch zu haben, hoffe ich, dass dies Ihnen die Download-Zeit spart und Ihnen ein Bewusstsein dafür gibt, was möglich ist.
Ich bewerte derzeit eine etwas sicherere OpenClaw-Bereitstellung (herzliche Glückwünsche an @steipete zu seiner nächsten Reise zu OpenAI – du eine Legende! Ich glaube nicht, dass Sam dich zähmen kann. Vielen Dank!!), indem ich es nur mit lokalen Modellen verwende. Ich stecke tief in der Leistungs-Optimierung. Wenn sich jemand an die „guten alten Zeiten“ erinnert, in denen man versucht hat, Linux-Treiber für eine SoundBlaster-Karte zu finden, nun, ich kann froh melden, dass wir in der KI-Welt den Kreis geschlossen haben. Das verwendete MoE-Modell war nicht in der Python-Bibliothek enthalten, die in LM Studio integriert ist (Überraschung, Überraschung), also war es an der Zeit, eine neue virtuelle Umgebung zu starten und mit pip zu arbeiten.
Die Ironie geht an mir nicht vorbei, dass wir zwar diese hochmodernen Tools haben, aber Gemini und ChatGPT oft nicht helfen können, sie zu debuggen, weil sie einfach noch nicht wissen, dass sie existieren. Lang lebe Github Issues.
Die Mission: Lokale automatisierte Videobearbeitung
Der Zweck des heutigen Unterfangens war nicht nur, mit Hardware zu prahlen. Ich baue ein automatisiertes Videobearbeitungstool auf. Ich habe Hunderte von Stunden an Filmmaterial und eine schlechte Breitband-Upload-Leitung, daher ist Cloud-Verarbeitung ausgeschlossen. Lokale Verarbeitung ist der Schlüssel.
Mein Ziel ist es herauszufinden, ob ich mit einem stark quantisierten (kleineren) Modell durchkommen kann. Ein kleineres Modell bedeutet schnellere Inferenz und ein größeres Kontextfenster, was entscheidend ist, da ich plane, mehrere Modelle gleichzeitig für andere Aufgaben auszuführen. Ich muss diese Maschine selbsttragend machen, sobald ich sie freigebe!
Das Experiment: Qwen 3.5 Quantisierung-Duell
Ich habe ein Referenzbild (ein Selfie von mir selbst in Motorradkleidung oben) durch die Versionen Quant 2 (Q2), Quant 3 (Q3), Quant 6 (Q6) und Quant 8 (Q8) des neuen Qwen 3.5 Vision-Modells gejagt. Hier ist die visuelle Aufschlüsselung der Ergebnisse.
Der Test-Befehl
Für jeden Test habe ich den folgenden curl-Befehl gegen meinen lokalen MLX-Server verwendet:
curl http://localhost:1234/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "/Users/graz/ai-models/Qwen3.5-397B-MLX-QX",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Describe this image in detail." },
{ "type": "image_url", "image_url": { "url": "data:image/jpeg;base64,'$IMAGE_B64'" } }
]
}
],
"max_tokens": 300
}' | python3 -m json.tool
1. Die Q2-Erfahrung: Totaler Zusammenbruch
Urteil: Unbrauchbar.
Bei 2-Bit-Quantisierung ist das Modell völlig auseinandergefallen. Es halluzinierte absoluten Unsinn.
{
"choices": [
{
"message": {
"content": ")nameUnc\u0901Op\u90f4\u5州G forOP MG, #clar sp sp \\ sp spNgG Sign h ${Ag1X/work ${))\r\n\r\n{$ \\\"Se\u00bb^#\\\",81 signifLaMd_M_Y_Y_\\up'\\ \\a)\\\\ra%d\\n#\\cd\\u#\\xe8\\f#888888 :)\" \\VAR{\\O\u2713\ufffd\ufffd}",
"role": "assistant"
}
}
],
"usage": {
"total_tokens": 243
}
}
2. Die Q3-Erfahrung: Der Überraschungs-Anwärter
Urteil: Der „Rohentwurf“-Held.
Ich erwartete, dass dies kaum lesbar sein würde, aber es hat die Essenz des Bildes tatsächlich perfekt eingefangen. Es hat einige feinere Texturen verpasst, aber als First-Pass-Filter? Das ist machbar.
{
"choices": [
{
"message": {
"content": "The user wants a detailed description of the image.\n\n1. **Identify the main subject:** A man wearing a motorcycle helmet and jacket. He is positioned on the left side of the frame.\n2. **Identify the background:** A scenic landscape featuring a large body of water (lake), rolling hills with trees showing autumn colors, and a blue sky with scattered clouds.\n3. **Identify specific details:**\n * **Helmet:** Silver/grey, full-face, with \"SHOEI\" branding visible. The visor is up.\n * **Clothing:** A dark grey or black motorcycle jacket with zippers and pockets.\n * **Motorcycle parts:** Handlebars, rear-view mirrors, and a phone mount with a phone attached are visible in the foreground and right side.\n * **Setting:** Looks like a scenic overlook or a stop during a ride. There's a wooden fence in the lower right.\n * **Lighting:** Bright, sunny day. Shadows are distinct.",
"role": "assistant"
}
}
]
}
3. Die Q6-Erfahrung: Die Goldilocks-Zone
Urteil: Perfekte Balance.
Hier passiert die Magie. Die Beschreibung ist reichhaltig, genau und flüssig. Es hat das „leichte Lächeln“ innerhalb des Helms und die spezifische Reflexion im Spiegel erkannt.
{
"choices": [
{
"message": {
"content": "The user wants a detailed description of the provided image.\n\n1. **Identify the main subject:** A person wearing a motorcycle helmet and jacket. They are in the foreground on the left.\n2. **Analyze the subject's details:**\n * **Helmet:** Full-face, black/dark grey, \"SHOEI\" logo visible on the forehead area. The visor is clear and raised slightly or just transparent enough to see the face. The person inside looks like a middle-aged man with light skin.\n * **Jacket:** Black motorcycle textile jacket. Zippers and padding are visible.\n * **Expression:** Slight smile, looking towards the camera (selfie style).\n\n3. **Identify the secondary subject/foreground objects:**\n * **Motorcycle parts:** Handlebars, side mirrors (one on the left, one on the right), and a phone mount on a tall stalk extending upwards on the right.",
"role": "assistant"
}
}
]
}
4. Die Q8-Erfahrung: Abnehmende Erträge?
Urteil: Hohe Auflösung, aber schwer.
Das Q8-Modell fügt der Beleuchtung und den Farben („Herbststimmung“) etwas mehr Nuancen hinzu, aber auf Kosten eines deutlich höheren Speicherverbrauchs. Für meine Video-Pipeline ist Q6 wahrscheinlich ausreichend.
{
"choices": [
{
"message": {
"content": "The user wants a detailed description of the image.\n\n1. **Identify the main subject:** A person wearing a motorcycle helmet and gear, taking a selfie.\n2. **Analyze the foreground:**\n * **Person:** Wearing a dark grey/black full-face helmet with \"SHOEI\" branding. Only their eyes and part of their nose/forehead are visible through the visor.\n * **Motorcycle parts:** Visible handlebars, side mirrors (one reflecting the sky/trees), and a phone mount on a tall stalk extending upwards on the right side. The phone is mounted vertically.\n * **Background:** ... The trees show autumn colors (yellows, browns, greens), suggesting the season is autumn.",
"role": "assistant"
}
}
]
}
So replizieren Sie dies (Der „Geek“-Leitfaden)
Für diejenigen von Ihnen, die die Hardware haben, um dies auszuführen, hier ist das genaue Rezept, das ich verwendet habe, um dies lokal auf Apple Silicon zum Laufen zu bringen.
1. Quantisierung
Ich habe die ursprünglichen Hugging Face-Gewichte mit mlx_vlm konvertiert. Beachten Sie die Verwendung des 2-Bit-Flags hier (das ich später gelöscht habe, weil, nun ja, siehe oben).
python -m mlx_vlm.convert \
--hf-path ~/ai-models/Qwen3.5-Original \
--mlx-path ~/ai-models/Qwen3.5-397B-MLX-Q2 \
-q --q-bits 2
2. Starten des Servers
Sobald konvertiert, habe ich den Server mit mlx-openai-server gestartet. Erwarten Sie einige AVFFrameReceiver-Warnungen, wenn Sie OpenCV installiert haben – Sie können diese ignorieren.
mlx-openai-server launch \
--model-path ~/ai-models/Qwen3.5-397B-MLX-Q3 \
--model-type multimodal \
--port 1234
3. Die Speicher-Realitätsprüfung
Bevor Sie mit dem Herunterladen beginnen, überprüfen Sie Ihren Festplattenspeicher. Hier ist der Platzbedarf der verschiedenen Quantisierungsstufen auf meiner Festplatte:
(base) graz@GeekwiththePeak 🤓 ~/ai-models $ for i in `ls ~/ai-models | grep Qwen3.5-397B-MLX-Q`; do du -sh $i; done
162G Qwen3.5-397B-MLX-Q3
301G Qwen3.5-397B-MLX-Q6
393G Qwen3.5-397B-MLX-Q8
Fazit
Dieses Experiment hat bewiesen, dass größer NICHT immer besser ist. Wenn Sie eine Pipeline bauen, bei der Geschwindigkeit kritisch ist, ist das Q3-Modell (bei 162 GB) überraschend kompetent darin, die Szene zu „sehen“, Objekte zu identifizieren und den Kontext zu verstehen. Es ist ein fantastischer First-Pass-Filter.
Für die letzte Politur oder hochauflösende Analyse ist Q6 der Gewinner. Es bietet 99 % der Details von Q8, spart aber fast 100 GB an RAM/Festplattenspeicher.
Ich gehe schlafen. Morgen beginnt die Automatisierung.
Originally published on allthingscloud.eu (2026-02-18).