GLM 5.2 auf eigenem VPS ausführen: Anleitung
GLM 5.2 ist in der Ollama-Bibliothek nur cloudbasiert verfügbar. Erfahren Sie, welches GLM-Modell tatsächlich auf einen VPS passt und wie viel RAM die jeweilige Quantisierung benötigt.
Kann man GLM 5.2 auf einem VPS ausführen?
Nein, und es ist wichtig, den Grund dafür zu kennen, bevor Sie Ressourcen mieten. Stand 18. August 2026 trägt GLM 5.2 in der Ollama-Bibliothek genau ein Tag, glm-5.2:cloud. Ein :cloud-Tag läuft auf den Servern von Ollama. Ihr System sendet den Prompt und empfängt die Tokens; die Gewichte gelangen also nie auf Ihren Datenträger. Das Modell umfasst 756 Milliarden Parameter. Vier Bit pro Parameter bei 756 Milliarden Parametern entsprechen etwa 378 GB an Gewichten. Das ist die reine Rechengröße vor Berücksichtigung von Kontext, Aktivierungen oder dem Betriebssystem. Kein Standard-VPS-Tarif bietet so viel Arbeitsspeicher.
Das GLM-Modell, das auf einen gemieteten Server passt, ist glm-4.7-flash. Es wird mit herunterladbaren Gewichten in 4 Tags veröffentlicht. Es handelt sich um ein Mixture-of-Experts-Modell, bei dem für jedes Token nur ein kleiner Teil des Netzwerks ausgeführt wird. Z.ai beschreibt es als 30B-A3B: insgesamt 30 Milliarden Parameter, davon etwa 3 Milliarden aktiv pro Token. Diese Anleitung beantwortet also die Frage, wie Sie praktisch vorgehen können. Legen Sie ein Tag fest, dimensionieren Sie den Server, messen Sie Ihre eigene Geschwindigkeit und halten Sie den Endpunkt privat.
Überprüfen Sie das Tag, bevor Sie Befehle kopieren, auch die hier aufgeführten. Die Bibliothek von Ollama ändert sich ohne Vorankündigung. Öffnen Sie die glm-4.7-flash Tag-Liste und bestätigen Sie, dass das Tag noch existiert. Falls ein neueres GLM-Release mit lokalen Gewichten erschienen ist, bevorzugen Sie dieses und dokumentieren Sie, welches Tag Sie tatsächlich getestet haben.
Wenn Sie GLM 5.2 dennoch nutzen möchten, funktioniert ollama run glm-5.2:cloud nach ollama signin, und aus Sicht des Clients verhält es sich wie jedes andere Ollama-Modell. Seien Sie sich bewusst, worauf Sie sich einlassen: Der Prompt verlässt Ihren Server. Wenn Ihr Grund für das Self-Hosting darin besteht, dass Daten auf Ihrer Maschine bleiben müssen, erfüllt ein :cloud-Tag diese Anforderung nicht.
Welche GLM-Tags existieren und welches sollte man fixieren
Hier sind drei offizielle GLM-Einträge relevant. glm-5.2 und glm-5.1 sind reine Cloud-Lösungen. glm-4.7-flash ist die lokale Variante; dies sind die veröffentlichten Tags zusammen mit der von Ollama jeweils angegebenen Download-Größe.
The data behind this chart
[
{
"label": "q4_K_M",
"download_gb": 19
},
{
"label": "latest",
"download_gb": 19
},
{
"label": "q8_0",
"download_gb": 32
},
{
"label": "bf16",
"download_gb": 60
}
]Dies sind die veröffentlichten Zahlen von der Bibliotheksseite, keine eigenen Messungen. latest und q4_K_M werden beide mit 19 GB gelistet, weshalb latest aktuell auf den Q4-Build verweist. Dies kann sich bei jeder Neuveröffentlichung ändern, weshalb Sie niemals ein bloßes ollama pull glm-4.7-flash in ein Skript oder ein Dockerfile schreiben sollten. Geben Sie die Quantisierung an. Das größte Tag, bf16, ist ein 60 GB großer Download, der die unquantisierten bfloat16-Gewichte enthält.
Eine Suche in der Bibliothek liefert auch namensraumbezogene Uploads mit einem Schrägstrich im Namen, wie etwa someuser/glm-5.2. Ein Schrägstrich bedeutet, dass ein Benutzerkonto diesen veröffentlicht hat; es handelt sich also um einen Community-Re-Upload und nicht um den offiziellen Eintrag. Niemand garantiert, welche Gewichte darin enthalten sind. Behandeln Sie ein solches Tag so, wie Sie jedes unsignierte Binärprogramm behandeln würden, das Sie im Internet finden.
Ollama installieren und das exakte Tag laden
Der Linux-Installer von Ollama besteht aus einem einzigen Befehl.
curl -fsSL https://ollama.com/install.sh | sh
ollama --versionDer Installer erstellt einen systemd-Dienst, der unter dem Benutzer ollama ausgeführt wird. Überprüfen Sie den Start, bevor Sie Daten laden.
systemctl status ollama --no-pagerActive: active (running) bedeutet, dass die API auf Port 11434 lauscht. Falls die Unit nicht existiert, ist der Installer auf eine einfache Binärinstallation ausgewichen. Die Ollama Linux-Dokumentation enthält die Service-Datei, die Sie manuell erstellen können.
Die Seite glm-4.7-flash listet eine Ollama-Mindestversion auf. Eine ältere Binärdatei führt das Modell nicht langsam aus, sondern verweigert den Dienst: Der Pull-Vorgang schlägt mit der Meldung fehl, dass das Modell eine neuere Ollama-Version erfordert. Führen Sie das Installationsskript erneut aus, um ein Upgrade durchzuführen. Stand 18. August 2026 ist die aktuelle Version 0.32.14, welche diese Mindestanforderung deutlich übertrifft.
Laden Sie nun ein Tag anhand seines Namens.
ollama pull glm-4.7-flash:q4_K_M
ollama lsollama ls sollte glm-4.7-flash:q4_K_M mit einer Größe auflisten, die nahe bei 19 GB liegt. Ein abgebrochener Pull-Vorgang hinterlässt keine ausführbaren Daten; führen Sie in diesem Fall denselben Befehl erneut aus. Die häufigste Ursache für einen fehlgeschlagenen Pull bei kleinen Tarifen ist ein voller Datenträger und kein Netzwerkproblem, da das Modell unter /usr/share/ollama/.ollama/models auf dem Root-Dateisystem gespeichert wird. Prüfen Sie dies mit df -h /usr/share/ollama, bevor Sie beginnen.
Wie viel RAM benötigt jede Quantisierung?
Beginnen Sie mit der Download-Größe als Untergrenze und addieren Sie weitere Werte hinzu. Die Gewichte müssen im Arbeitsspeicher geladen sein. Zusätzlich belegt der KV-Cache (Key/Value-Cache) Speicherplatz; dies ist der Bereich, den die Laufzeitumgebung nutzt, um sich die bereits im Gespräch generierten Tokens zu merken. Hinzu kommen Rechenpuffer und der Speicherbedarf des Betriebssystems. Ein System mit exakt 19 GB RAM wird das 19 GB-Tag nicht ausführen können.
Es gibt keinen universellen Multiplikator, da der KV-Cache mit der erlaubten Kontextlänge wächst und sich der restliche Bedarf je nach Laufzeitversion ändert. Messen Sie daher, anstatt zu schätzen. Laden Sie das Modell mit einem einfachen Prompt und lesen Sie ab, wie viel Speicher der Server reserviert hat.
ollama run glm-4.7-flash:q4_K_M "Reply with the single word: ready"
ollama psollama ps gibt das geladene Modell mit einer SIZE-Spalte und einer PROCESSOR-Spalte aus. SIZE ist der Wert, den die Laufzeitumgebung tatsächlich reserviert hat; dies ist die Zahl, die Sie mit Ihrer Planung abgleichen müssen. PROCESSOR zeigt an, wo die Berechnung stattfindet, wobei 100% CPU bedeutet, dass keine GPU beteiligt war.
Wenn das Modell nicht in den Speicher passt, erfolgt das Scheitern ohne explizite Fehlermeldung und äußert sich auf zwei Arten. Bei aktiviertem Swap scheint der Ladevorgang erfolgreich zu sein, doch die Generierung verläuft extrem langsam, da für jedes Token Speicherseiten zwischen Festplatte und RAM verschoben werden. Ohne Swap wird der Prozess sofort beendet, und journalctl -k | grep -i "out of memory" zeigt in der Out of memory: Killed process-Zeile des Kernels den Verweis auf ollama. Überprüfen Sie beides, da in keinem der Fälle eine hilfreiche Meldung im Terminal erscheint, in dem Sie den Befehl eingegeben haben.
Der Schritt vom 19 GB Q4-Tag zum 32 GB Q8-Tag ist der wichtigste Hebel, den Sie zur Beeinflussung dieses Wertes haben. Q4 kostet etwas Ausgabequalität; wie stark sich dies auswirkt, hängt von der Aufgabe ab. Strukturierte Ausgaben und lange Schlussfolgerungsketten leiden stärker darunter als einfache Konversationen. Unterschiede zwischen Q4, Q8 und FP16 in der Praxis zu lesen ist empfehlenswert, bevor Sie sich festlegen, da bei einem VPS ohne GPU die Wahl der Quantisierung meist darüber entscheidet, ob das Modell überhaupt läuft.
Was auf einem VPS ohne GPU geschieht
Die meisten VPS-Tarife enthalten keine GPU, und Ollama führt das Modell ohne Warnung auf der CPU aus. Ob das Ergebnis brauchbar ist, hängt von der Arbeitslast und Ihrer Geduld ab.
Das Mixture-of-Experts-Design hilft bei der Geschwindigkeit. Da für jedes Token nur etwa 3 Milliarden der 30 Milliarden Parameter verwendet werden, ist der Rechenaufwand pro Token weitaus geringer als bei einem dichten 30B-Modell. Was jedoch nicht schrumpft, ist der Speicherbedarf. Jeder Experte muss im Arbeitsspeicher resident bleiben, da der Router für das nächste Token jeden von ihnen auswählen kann. Ein System ohne GPU benötigt daher weiterhin die vollen 19 GB oder mehr für das Q4-Tag, und der Durchsatz wird primär durch die Speicherbandbreite und nicht durch die Taktfrequenz bestimmt.
Das hat eine praktische Konsequenz: Zwei Tarife mit der gleichen Kernanzahl und dem gleichen RAM können spürbar unterschiedliche Geschwindigkeiten aufweisen, da sich ihre Speichersubsysteme unterscheiden. Ein Shared-Tarif fügt eine zweite Variable hinzu, da CPU-Steal-Time durch einen lauten Nachbarn sich als Wert für Tokens pro Sekunde zeigt, der von Stunde zu Stunde schwankt. Dies ist der Grund, warum die veröffentlichten Zahlen anderer Anbieter Ihre eigenen nicht vorhersagen können, und der Grund, warum der nächste Abschnitt ein Messrezept anstelle einer Ergebnistabelle enthält.
Messen der eigenen Tokens pro Sekunde
Der generate-Endpunkt von Ollama gibt im abschließenden JSON-Objekt Zeitmessungsfelder zurück. Teilen Sie die Anzahl der generierten Tokens durch die Dauer der Generierung, um Ihren Wert für Ihren Tarif und Ihren Prompt zu erhalten.
sudo apt install -y jq
curl -s http://localhost:11434/api/generate -d '{
"model": "glm-4.7-flash:q4_K_M",
"prompt": "Write a 200 word explanation of how TCP congestion control works.",
"stream": false,
"options": {"num_ctx": 8192}
}' | jq '{
tokens: .eval_count,
tokens_per_second: (.eval_count / .eval_duration * 1e9),
prompt_seconds: (.prompt_eval_duration / 1e9),
load_seconds: (.load_duration / 1e9)
}'eval_count gibt an, wie viele Tokens generiert wurden, und eval_duration ist die dafür benötigte Zeit in Nanosekunden; eval_count / eval_duration * 1e9 entspricht somit den Tokens pro Sekunde. prompt_eval_duration deckt das Einlesen des Prompts ab, was der Benutzer als Wartezeit wahrnimmt, bevor das erste Token erscheint. load_duration ist die Zeit, die für das Laden des Modells von der Festplatte benötigt wird; dieser Wert ist beim ersten Aufruf nach einem Neustart hoch und bei nachfolgenden Aufrufen nahezu null.
Führen Sie den Test dreimal aus und behalten Sie das zweite und dritte Ergebnis, da das erste den Ladevorgang beinhaltet. Wiederholen Sie den Test anschließend mit einem deutlich längeren Prompt, da die Verarbeitung des Prompts mit der Eingabelänge skaliert, die Generierungsgeschwindigkeit hingegen nicht. Notieren Sie die Werte neben Ihrem Tarifnamen und Ihrer Quantisierung. Diese Aufzeichnung ist wertvoller als jeder Benchmark, den Sie lesen, da sie auf der Hardware gemessen wurde, für die Sie bezahlen.
Wie die Kontextlänge den Speicherbedarf vervielfacht
Ollama verwendet standardmäßig einen Kontext von 4096 Token. Das Modell unterstützt zwar deutlich mehr, nämlich 198K Token für glm-4.7-flash, dies ist jedoch nicht die Standardeinstellung und die Aktivierung ist mit Kosten verbunden.
Der KV-Cache speichert für jedes Token in jeder Schicht einen Key-Vektor und einen Value-Vektor. Seine Größe wächst linear mit der Anzahl der zugelassenen Token. Eine Erhöhung von 4096 auf 32768 Token entspricht dem Achtfachen des Kontextes und damit etwa dem Achtfachen des KV-Caches. Auf einem System, dessen Speicher gerade für die Gewichte ausreicht, führt genau diese zusätzliche Zuweisung zum Auslagern in den Swap. Deshalb reagiert ein System, das kurze Anfragen problemlos verarbeitet, plötzlich extrem langsam, wenn ein langes Dokument eingefügt wird.
Legen Sie den Wert pro Anfrage über num_ctx im Options-Objekt fest, wie im obigen curl-Befehl gezeigt, oder ändern Sie den Standardwert des Servers.
sudo install -d -m 755 /etc/systemd/system/ollama.service.d
printf '[Service]\nEnvironment="OLLAMA_CONTEXT_LENGTH=16384"\n' \
| sudo tee /etc/systemd/system/ollama.service.d/override.conf
sudo systemctl daemon-reload
sudo systemctl restart ollama
systemctl show ollama --property=EnvironmentDer letzte Befehl sollte Ihren OLLAMA_CONTEXT_LENGTH-Wert ausgeben. Wenn ein leeres Environment= ausgegeben wird, befindet sich die Override-Datei im falschen Verzeichnis oder das Neuladen wurde übersprungen. Nach dem nächsten Laden des Modells sollte ollama ps einen deutlich höheren SIZE-Wert anzeigen als bei 4096. Erhöhen Sie den Wert schrittweise und beobachten Sie diese Zahl bei jedem Durchgang. Festlegen der Ollama-Kontextlänge mit num_ctx erläutert, wie sich dies auf keep-alive und parallele Anfragen auswirkt, da beide Faktoren die Kosten multiplizieren.
Wenn die API günstiger ist als die eigene Hardware
Self-Hosting ist nicht automatisch kostengünstiger, und für diese Modellfamilie verdeutlichen die veröffentlichten Listenpreise diesen Punkt ungewöhnlich klar.
The data behind this chart
[
{
"label": "GLM-5.2 input",
"usd_per_million_tokens": 1.4
},
{
"label": "GLM-5.2 output",
"usd_per_million_tokens": 4.4
},
{
"label": "GLM-4.7-Flash input",
"usd_per_million_tokens": 0
},
{
"label": "GLM-4.7-Flash output",
"usd_per_million_tokens": 0
}
]Stand 18. August 2026 listet Z.ai GLM-5.2 mit $1.4 pro Million Input-Token und $4.4 pro Million Output-Token. GLM-4.7-Flash, das Modell, das in dieser Anleitung lokal betrieben wird, wird mit $0 für beide Richtungen geführt. Dies sind veröffentlichte Preise, die sich ändern können; prüfen Sie daher die aktuelle Seite, bevor Sie ein Budget auf Basis dieser Werte planen.
Das finanzielle Argument für Self-Hosting glm-4.7-flash ist derzeit also schwach. Ein VPS mit ausreichend RAM kostet jeden Monat echtes Geld, während der Anbieter das gleiche Modell kostenlos bereitstellt. Was Sie durch den Eigenbetrieb gewinnen, ist etwas anderes: Ihre Prompts verbleiben auf einer Maschine, die Sie kontrollieren, und die Modellversion ändert sich nie, es sei denn, Sie ändern sie selbst. Das sind gute Gründe für Self-Hosting. Die Kosten gehören bei diesem Modell und diesen Preisen nicht dazu.
Die Rechnung ändert sich, wenn das gewünschte Modell nicht kostenlos ist oder wenn Ihre Daten das eigene Netzwerk aus rechtlichen Gründen nicht verlassen dürfen. Der Break-even-Punkt zwischen einem GPU-VPS und API-Token führt durch diese Berechnung, wobei jede Variable benannt wird. Wenn Sie noch bei der Auswahl der Hardware sind, ist was ein VPS tatsächlich pro Monat kostet die andere Hälfte der Kalkulation.
Den Endpunkt auf localhost belassen
Dies ist der Schritt, den die meisten überspringen, und er ist der wichtigste.
Ollama bindet standardmäßig an 127.0.0.1 auf Port 11434, sodass es nur vom Server selbst aus erreichbar ist. Überprüfen Sie dies auf Ihrem System, anstatt es vorauszusetzen.
ss -ltnp | grep 11434Sie sollten 127.0.0.1:11434 sehen. Wenn Sie 0.0.0.0:11434 oder *:11434 sehen, bedeutet dies, dass die API auf allen Schnittstellen lauscht, einschließlich der öffentlichen.
Dies ist kritisch, da die API von Ollama keine Authentifizierung besitzt. Es gibt kein Passwort, kein Token und keine Whitelist. Jeder, der Port 11434 erreichen kann, kann Ihre Modelle auflisten, Berechnungen auf Ihrer Hardware ausführen, neue Modelle auf Ihren Speicher laden, bis dieser voll ist, und Ihre vorhandenen Modelle löschen. Port 11434 ist fest definiert und bekannt, daher finden Scanner offene Ports schnell.
Setzen Sie nicht OLLAMA_HOST=0.0.0.0. Viele Anleitungen schlagen dies als Lösung vor, wenn ein Client auf Ihrem Laptop keine Verbindung herstellen kann; dies ist jedoch die falsche Lösung. Leiten Sie stattdessen den Port weiter.
ssh -N -L 11434:127.0.0.1:11434 you@your-serverDies leitet Port 11434 auf Ihrem Laptop über SSH an die Loopback-Adresse des Servers weiter. Dadurch funktioniert jeder Client, der für http://localhost:11434 konfiguriert ist, unverändert, und es wird nichts Neues nach außen hin exponiert. Für mehrere Personen oder mehrere Maschinen sollten Sie den Server in ein privates Tunnel-Netzwerk einbinden und Ollama an die Tunnel-Adresse binden, niemals an 0.0.0.0.
Überprüfen Sie dies von einem anderen Ort als dem Server aus. Führen Sie dies von Ihrem Laptop aus, während der SSH-Tunnel geschlossen ist:
curl -m 5 http://your-server-ip:11434/api/tagscurl: (28) Connection timed out oder curl: (7) Failed to connect ist das korrekte Ergebnis. Eine JSON-Liste Ihrer Modelle bedeutet, dass der Port zum Internet hin offen ist und sofort korrigiert werden muss. Die Netzwerk-Firewall Ihres Anbieters ist eine separate Kontrollebene neben der auf dem Server laufenden Firewall; prüfen Sie daher beide. Die umfassendere Frage, ob VPS-Hosting sicher ist behandelt die restlichen Grundlagen für eine Maschine, die dauerhaft in Betrieb ist.
Wenn glm-4.7-flash weiterhin zu groß ist
Wenn das Q4-Tag nicht in Ihren Plan passt, ist die Lösung ein kleineres Modell, nicht ein kleinerer Kontext. Das Kürzen des Kontextes, um ein Modell unterzubringen, führt zu einem Ergebnis, das zwar lädt, aber bei der ersten langen Eingabeaufforderung fehlschlägt. Qwen 3 mit 8B und 27B auf einem VPS beschreibt denselben Installationspfad für Größen, die für bescheidenere Systeme geeignet sind, und der allgemeine Leitfaden zum Self-Hosting eines LLM mit Ollama auf einem VPS behandelt die Aspekte, die unabhängig von der Modellwahl gleich bleiben. Wofür auch immer Sie sich entscheiden, fixieren Sie das Tag, messen Sie die Leistung auf Ihrem eigenen System und belassen Sie den Endpunkt auf dem Loopback-Interface.
FAQ
Kann GLM 5.2 lokal auf einem VPS ausgeführt werden?
Nein. Stand 18. August 2026 existiert GLM 5.2 in der Ollama-Bibliothek nur als glm-5.2:cloud, ein Tag, der auf der Infrastruktur von Ollama läuft und ollama signin benötigt, bevor er funktioniert. Das Modell umfasst 756 Milliarden Parameter. Selbst bei vier Bit pro Parameter betragen die Gewichte hunderte Gigabytes. Dies übersteigt die Kapazitäten jedes Standard-VPS-Tarifs bei weitem. Das GLM-Modell mit herunterladbaren Gewichten, das auf einen gemieteten Server passt, ist glm-4.7-flash.
Wie viel RAM benötigt glm-4.7-flash?
Betrachten Sie die Download-Größe des Tags als Untergrenze und addieren Sie den Speicherbedarf für den KV-Cache sowie das Betriebssystem. Ollama gibt den Q4-Tag mit 19 GB, Q8 mit 32 GB und den bfloat16-Tag mit 60 GB an. Es gibt keinen universellen Multiplikator, da der KV-Cache mit der eingestellten Kontextlänge wächst. Laden Sie das Modell, führen Sie ollama ps aus und lesen Sie die Spalte SIZE für den tatsächlichen Wert auf Ihrem System ab.
Wie messe ich Tokens pro Sekunde auf meinem VPS?
Senden Sie eine Anfrage an http://localhost:11434/api/generate mit "stream": false und lesen Sie anschließend eval_count sowie eval_duration aus der Antwort aus. Die Tokens pro Sekunde ergeben sich aus eval_count / eval_duration * 1e9, da eval_duration in Nanosekunden angegeben wird. Ignorieren Sie den ersten Durchlauf, da load_duration dabei das Laden der Gewichte von der Festplatte beinhaltet. Wiederholen Sie den Test auch mit einem langen Prompt, da prompt_eval_duration mit der Eingabelänge wächst, während die Generierungsgeschwindigkeit konstant bleibt.
Warum sollte ich OLLAMA_HOST nicht auf 0.0.0.0 setzen?
Weil die API von Ollama keine Authentifizierung besitzt. Eine Bindung an 0.0.0.0 stellt einen ungeschützten Endpunkt im öffentlichen Internet bereit. Jeder, der Port 11434 erreicht, kann auf Ihrer Hardware Modelle generieren und die installierten Modelle verändern. Behalten Sie die Standard-Bindung 127.0.0.1 bei, überprüfen Sie diese mit ss -ltnp | grep 11434 und greifen Sie von Ihrem Laptop über einen SSH-Tunnel wie ssh -N -L 11434:127.0.0.1:11434 you@your-server auf die API zu.