Ollama vs. LM Studio vs. llama.cpp vs. MLX-LM unter macOS
Automatische Übersetzung
Dieser Artikel wurde automatisch aus der englischen Originalversion übersetzt.
Verwende Ollama für einen lokalen Model-Service oder LM Studio für die Model-Auswahl und eine Desktop-Oberfläche. Verwende llama.cpp für direkte Runtime-Kontrolle. Verwende MLX-LM für Generierung mit Python oder Fine-Tuning auf Apple Silicon. Sowohl Ollama als auch LM Studio bieten APIs und den Betrieb ohne grafische Oberfläche. Wähle danach, wie du Models lädst, aufrufst und ihre Performance untersuchst.
Teste für eine App, die einen lokalen Endpunkt benötigt, zuerst Ollama oder LM Studio. Wechsle zu llama.cpp oder MLX-LM, wenn der vorhandene Service die für deine Aufgabe benötigten Einstellungen nicht bietet.
Halte Model, Runtime, Generierungseinstellungen und Netzwerkkonfiguration fest, damit sich das Setup wiederholen lässt.
Empfehlungstabelle
| Tool | Hauptaufgabe | Verwenden, wenn | Wichtigster Trade-off |
|---|---|---|---|
| Ollama | Gemanagter lokaler Service und Model-Lifecycle | Du schnell einen kleinen per Script nutzbaren Endpunkt benötigst | Weniger Kontrolle auf niedriger Ebene als bei llama.cpp. |
| LM Studio | Model-Suche, SDKs, Daemon und lokale Server-Workflows | Du eine Entwicklungsumgebung mit und ohne grafische Oberfläche in einem Produkt willst | Die Abstraktion verbirgt weiterhin einige Runtime-Details. |
| llama.cpp | GGUF-Inference, Quantization, Server-Optionen und Metal-Steuerung | Du Kontrolle über Kontext, Batch, Quantization und Runtime-Verhalten brauchst | Mehr Einrichtung und mehr Optionen. |
| MLX-LM | Apple-Silicon-native Generation und Fine-Tuning | Du Experimente auf Python-Ebene auf Macs mit Chips der M-Serie durchführen willst | Kleineres Serving-Ökosystem als bei Ollama oder llama.cpp. |
Welches Tool solltest du zuerst installieren?
Starte mit Ollama, wenn du ein Model über einen lokalen Service verwalten möchtest, den deine App aufrufen kann. Teste die API mit den Prompts und Antwortformaten, die deine Anwendung benötigt.
Installiere LM Studio zuerst, wenn du Models in einer Desktop-App auswählen und vergleichen möchtest. Seine Entwicklerwerkzeuge umfassen Python- und TypeScript-SDKs, lokale APIs, Structured Output und einen Daemon ohne grafische Oberfläche. Prüfe die Tool-Use-Unterstützung des gewählten Models.
Installiere llama.cpp zuerst, wenn du Kontextlänge, Batch-Größe, Quantization oder Metal-Optionen direkt einstellen musst. CLI und Server bieten diese Einstellungen ohne einen separaten Service zur Model-Verwaltung.
Verwende MLX-LM, wenn du mehr als ein Chat-Model serven möchtest. Es eignet sich für Apple-Silicon-native Model-Experimente, Konvertierung, Fine-Tuning und Python-Workflows, bei denen gemeinsamer Speicher Teil des Designs ist.
Workflow-Matrix
| Workflow | Standard | Begründung |
|---|---|---|
| Lokale API für eine App | Ollama | Stabile Entwicklererfahrung und breite Integrationsunterstützung. |
| Manueller Model-Vergleich | LM Studio | Die GUI beschleunigt den Vergleich von Prompts und Models. |
| Performance-Debugging | llama.cpp | Du kannst die Runtime-Parameter sehen und steuern. |
| Serving quantisierter GGUF-Models | llama.cpp oder Ollama | Verwende llama.cpp für Kontrolle und Ollama für Komfort. |
| Apple-Silicon-Model-Experimente | MLX-LM | Native Model-Tools für Macs mit Chips der M-Serie. |
| Demo für nichttechnische Stakeholder | LM Studio | Einfach interaktiv zu zeigen und anzupassen. |
| Reproduzierbares Engineering-Setup | CLI/API eines der Tools mit gepinnten Models | Halte Model-, Runtime- und Generierungseinstellungen fest, damit ein Script den Lauf wiederholen kann. |
Hardware-Hinweise
Der verfügbare gemeinsame Speicher begrenzt die Models, den Kontext und die Anzahl der Anfragen, die ein Apple-Silicon-Mac verarbeiten kann. Ein Model, das auf ein MacBook Pro mit 64 GB passt, kann auf einem MacBook Air mit 8 GB unbrauchbar sein. Quantization verringert den Speicherbedarf der Weights, während längere Prompts zusätzlichen Speicher für den Attention-Cache benötigen. Führe Benchmarks mit der tatsächlichen Prompt-Länge und gleichzeitigen Anfragen durch.
Teste zuerst ein kleineres Model, das ohne häufiges Auslagern auf den Datenträger in den Speicher passt, bevor du ein größeres testest, das den Speicher ausschöpft. Prüfe beim Programmieren den Umgang mit Kontext und die Werkzeugintegration an echten Aufgaben. Teste bei Fragen zu Dokumenten, ob Retrieval die benötigten Belege liefert, bevor du das Model wechselst.
Inference lokal halten
Wähle Model und Backend explizit lokal aus. Eine Localhost-API kann eine Anfrage trotzdem an ein Cloud-Model oder eine externe Integration weiterleiten. Ollamas FAQ dokumentiert den Local-only-Modus (OLLAMA_NO_CLOUD=1) und sein standardmäßiges Loopback-Binding. Halte den Server nur von deinem Rechner aus erreichbar, sofern du den Zugriff für andere Clients nicht bewusst absicherst.
LM Studio kann heruntergeladene Models offline ausführen; für die Suche und das Herunterladen von Models ist Netzwerkzugriff erforderlich. Prüfe Cloud-Funktionen, Plugins, Telemetrie und die aufrufende App ebenso wie den Model-Server. Ein Model herunterzuladen und einen privaten Prompt zu senden, sind unterschiedliche Netzwerkvorgänge.
Was du nicht tun solltest
Starte mit Ollama oder LM Studio und teste, ob lokale Inference die Aufgabe erfüllt. Verwende llama.cpp oder MLX-LM, wenn du Einstellungen benötigst, die der Service nicht bietet. Führe umfassendere Benchmarks durch, wenn die Performance die Produktanforderungen beeinflusst.
Vergleiche Models nicht ausschließlich in einer Chat-UI, wenn der tatsächliche Workload aus strukturierter Extraktion, Codebearbeitung oder der Synthese von RAG-Antworten besteht. Schreibe ein kleines Eval-Script mit repräsentativen Prompts.
Weiterführende Lektüre
- Lokale LLMs unter macOS behandelt das praktische Setup.
- Open-Weight-LLM-Varianten erklärt GGUF, GPTQ, AWQ, Base-Models und Instruct-Models.
- MacBook-Setup für AI Engineering behandelt die umfassendere Einrichtung des Arbeitsplatzrechners.