>_ DevTrendsde

Sprache

Start

Sprachen

Bereiche

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Sicherheit
Python

Lokale neuronale Netze auf Apple Silicon mit MTPLX um das Zweifache beschleunigen

MTPLX

Wenn du die neuesten Modelle der Qwen-Familie auf einem MacBook ausgeführt hast, ist dir wahrscheinlich aufgefallen, dass die Generierung langer Antworten spürbar an die Speicherbandbreite stößt. Typischerweise wird spekulatives Decoding verwendet, um dies zu beschleunigen. Aber der klassische Ansatz hat einen unangenehmen Nachteil: Du musst ein zweites, kleines Draft-Modell im kostbaren Unified Memory des Macs halten.

Kürzlich bin ich auf das Projekt MTPLX des Entwicklers Youssof Altoukhi gestoßen. Der Autor решил, jedes Quäntchen Leistung aus der Apple-Silicon-Architektur und den bereits in den Gewichten moderner Modelle wie Qwen 3.5, 3.6 und 3.8 eingebauten Multi-Token-Prediction-Heads (MTP) herauszuholen.

Der Trick Hinter MTP Ohne Zweites Modell

Die meisten bestehenden Runtimes ignorieren einfach die MTP-Heads in den Gewichten. MTPLX arbeitet anders.

Das Modell selbst erstellt mehrere Tokens im Voraus und verifiziert dann die gesamte Batch in einem einzigen Forward-Pass durch MLX. Die Validierung verwendet den präzisen Rejection-Sampling-Algorithmus von Leviathan und Chen mit Residuenkorrektur.

Was bedeutet das in der Praxis? Keine Vereinfachungen oder Heuristiken. Die Wahrscheinlichkeitsverteilung bleibt genau gleich wie bei der regulären schrittweisen Generierung. Wenn du temperature=0.6 und top_p=0.95 setzt, wird das Modell identisch reagieren wie ohne MTP – nur viel schneller.

Auf einem M4 Mac mini mit 16 GB Speicher erreicht die Beschleunigung 1,6x, und bei M5-Max-Chips steigt die Verbesserung auf bis zu 2,24x.

MTPLX Dashboard

Was Drin steckt: App und CLI

Das Projekt gibt es in zwei Varianten: eine native GUI-Anwendung für macOS 14+ und ein klassisches CLI-Tool.

Der grafische Client erledigt die ganze Arbeit. Beim ersten Start analysiert er den verfügbaren Speicher, wählt ein geeignetes Modell aus, lädt es herunter, richtet eine isolierte Python-Umgebung ein und bietet sogar eine Lüfterverwaltung, damit dein MacBook bei langen Aufgaben nicht throttled.

MTPLX Chat Interface

Wenn du das Terminal bevorzugst, erfolgt die Installation über Homebrew oder pip:

brew install youssofal/mtplx/mtplx
mtplx start

Oder über pip:

python3 -m pip install mtplx

Hauptfunktionen

  1. Automatische Draft-Tiefe-Tuning. Die MTP-Effizienz hängt vom jeweiligen Chip und der Speicherbusbreite ab. Der Befehl mtplx tune --retune führt das Modell mit verschiedenen Tiefen (Depth 1, 2, 3) direkt auf deiner Hardware aus und arretiert die schnellste Option. Wenn MTP auf deiner Konfiguration plötzlich gegen den regulären autoregressiven Modus verliert, deaktiviert das Programm ehrlich den Draft.
  2. Lokaler kompatibler Server. Der Befehl mtplx serve startet einen Server auf Port 8000. Er ist kompatibel mit OpenAI- (/v1/chat/completions) und Anthropic- (/v1/messages) Formaten. Claude Code, Cline, Continue und Open WebUI funktionieren damit out of the box.
  3. Integrierte Embeddings und Reranking. Du brauchst keinen separaten Server für RAG. Der Daemon kann MLX-Embedding- und Reranker-Modelle parallel halten und bei Bedarf auf Anfrage in den Speicher laden.
  4. Forge-Tool zum Erstellen eigener Modelle. Das Paket enthält das Tool mtplx forge, das Hugging-Face-Repositories ins MLX-Format konvertiert, den MTP-Adapter feinabstimmt und die Geschwindigkeit vor und nach misst.

Forge Tool

So Arbeitest du mit dem Server

Nach dem Start des Servers kannst du ihn mit Standardanfragen abfragen:

curl http://127.0.0.1:8000/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"mtplx","messages":[{"role":"user","content":"Привет!"}],"stream":true}'

Wenn du ein Agent-System oder eine RAG-Pipeline erstellst, gib die Suchmodelle gleich an:

mtplx serve \
  --embedding-model mlx-community/Qwen3-Embedding-8B-4bit-DWQ \
  --reranker-model vserifsaglam/Qwen3-Reranker-4B-4bit-MLX

Sitzungen werden auf der SSD gespeichert, sodass beim Neustart des Servers der Kontext früherer langer Gespräche nahezu sofort wiederhergestellt wird.

Projekt-Einschränkungen

Es gibt keine Wunder ohne Kompromisse, also beachte ein paar Dinge:

  • Das Tool ist strikt für Apple Silicon (M1-Chips und neuer) geschrieben und basiert auf dem MLX-Framework. Linux-Nutzer und NVIDIA-GPU-Besitzer sollten bei vLLM oder SGLang bleiben.
  • MTPLX kann keine beliebigen MTP-Heads an zufällige Modelle anhängen, da Gewichtungsabweichungen die mathematische Genauigkeit der Generierung zerstören. Du musst entweder verifizierte Builds aus dem offiziellen Katalog des Autors auf Hugging Face verwenden (Qwen 3.5, 3.6, 3.8, Gemma 4) oder einen Adapter von Grund auf mit dem integrierten Forge trainieren.

Lohnt es sich, es zu Testen

Wenn du auf einem Mac Code schreibst und lokale LLMs über Continue oder Cline verwendest, bietet MTPLX einen ausgezeichneten Geschwindigkeitsschub ohne zusätzliche Software. Bei Modellen wie Qwen 3.8 27B ist der Unterschied bei Autocomplete-Reaktionsfähigkeit und Code-Generierung sofort spürbar.

Das Projekt wird unter der permissiven Apache-2.0-Lizenz vertrieben, der Quellcode ist sauber und die Benchmarks sind direkt vom Terminal aus über den Befehl mtplx bench reproduzierbar. Ein großartiger Fund für die lokale Entwicklung.

Ähnliche Projekte