GLM 5.2 op eigen VPS draaien: kan dat?
GLM 5.2 is in Ollama enkel als cloud-model beschikbaar. Ontdek welk GLM-model wél op een VPS past en hoeveel RAM u per kwantisatie nodig heeft voor een stabiele werking.
Kunt u GLM 5.2 draaien op een VPS?
Nee, en het is belangrijk om de reden hiervoor te kennen voordat u iets huurt. Sinds 18 augustus 2026 heeft GLM 5.2 in de bibliotheek van Ollama precies één tag, glm-5.2:cloud. Een :cloud-tag draait op de servers van Ollama. Uw server verstuurt de prompt en ontvangt de tokens, waardoor de gewichten nooit op uw schijf terechtkomen. Het model bevat 756 miljard parameters. Vier bits per parameter over 756 miljard parameters is ongeveer 378 GB aan gewichten, en dat is nog zonder context, activaties of het besturingssysteem mee te rekenen. Geen enkel standaard VPS-abonnement biedt zoveel geheugen.
Het GLM-model dat wel op een gehuurde server past, is glm-4.7-flash. Dit wordt gepubliceerd met downloadbare gewichten in 4 tags. Het is een mixture-of-experts-model, wat betekent dat slechts een klein deel van het netwerk draait voor elk token, en Z.ai beschrijft het als 30B-A3B: 30 miljard parameters in totaal, waarvan ongeveer 3 miljard actief per token. Deze handleiding beantwoordt dus de vraag waar u daadwerkelijk iets mee kunt. Pin een tag vast, kies de juiste servergrootte, meet uw eigen snelheid en houd het eindpunt privé.
Controleer de tag voordat u een commando kopieert, inclusief de commando's in deze handleiding. De bibliotheek van Ollama verandert zonder voorafgaande kennisgeving. Open de glm-4.7-flash taglijst en bevestig dat de tag nog steeds bestaat. Als er een nieuwere GLM-release is verschenen met lokale gewichten, geef daar dan de voorkeur aan en noteer welke tag u daadwerkelijk heeft getest.
Als u toch GLM 5.2 wilt gebruiken, werkt ollama run glm-5.2:cloud na ollama signin, en vanuit het perspectief van de client gedraagt het zich als elk ander Ollama-model. Begrijp waar u mee akkoord gaat: de prompt verlaat uw server. Als uw reden voor self-hosting is dat data op uw eigen machine moet blijven, dan voldoet een :cloud-tag niet aan die eis.
Welke GLM-tags bestaan er en welke moet u vastzetten
Er zijn drie officiële GLM-vermeldingen relevant. glm-5.2 en glm-5.1 zijn uitsluitend voor de cloud. glm-4.7-flash is de lokale variant en dit zijn de gepubliceerde tags met de downloadgrootte zoals Ollama die voor elk weergeeft.
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
}
]Dit zijn gepubliceerde cijfers van de bibliotheekpagina, geen eigen metingen. latest en q4_K_M staan beide vermeld op 19 GB, waardoor latest momenteel verwijst naar de Q4-build. Dit kan bij elke nieuwe publicatie wijzigen; schrijf daarom nooit een kale ollama pull glm-4.7-flash in een script of een Dockerfile. Benoem de kwantisatie. De grootste tag, bf16, is een download van 60 GB die de ongekwantiseerde bfloat16-gewichten bevat.
Een zoekopdracht in de bibliotheek levert ook uploads met een naamruimte op die een slash in de naam bevatten, zoals someuser/glm-5.2. Een slash betekent dat een gebruikersaccount deze heeft gepubliceerd; het is dus een her-upload door de community in plaats van de officiële vermelding. Niemand garandeert welke gewichten hierin zitten. Behandel deze op dezelfde manier als elk ander niet-ondertekend binair bestand dat u online vindt.
Ollama installeren en de exacte tag ophalen
De Linux-installer van Ollama bestaat uit één commando.
curl -fsSL https://ollama.com/install.sh | sh
ollama --versionDe installer maakt een systemd-service aan die draait als de ollama-gebruiker. Controleer of deze is gestart voordat u iets ophaalt.
systemctl status ollama --no-pagerActive: active (running) betekent dat de API luistert op poort 11434. Als de unit niet bestaat, is de installer teruggevallen op een standaard binaire installatie; de Ollama Linux-documentatie bevat het servicebestand dat u handmatig kunt aanmaken.
De glm-4.7-flash-pagina vermeldt een minimale Ollama-versie. Een oudere binary zorgt er niet voor dat het model traag draait, maar weigert het model volledig: de pull mislukt met een melding dat het model een nieuwere versie van Ollama vereist. Voer het installatiescript opnieuw uit om te upgraden. Per 18 augustus 2026 is de huidige release 0.32.14, wat ruim boven dat minimum ligt.
Haal nu één tag op bij naam.
ollama pull glm-4.7-flash:q4_K_M
ollama lsollama ls hoort glm-4.7-flash:q4_K_M weer te geven met een grootte die dicht bij de gepubliceerde 19 GB ligt. Een pull die halverwege stopt, laat niets bruikbaars achter, dus voer hetzelfde commando opnieuw uit. De meest voorkomende oorzaak van een mislukte pull op een klein abonnement is een volle schijf in plaats van een netwerkprobleem, omdat het model wordt weggeschreven naar /usr/share/ollama/.ollama/models op het root-bestandssysteem. Controleer dit met df -h /usr/share/ollama voordat u begint.
Hoeveel RAM heeft elke kwantisatie nodig?
Begin met de downloadgrootte als ondergrens en tel daar extra geheugen bij op. De gewichten moeten in het geheugen geladen zijn. Daarbovenop komt de KV-cache (key/value cache), het geheugen dat de runtime gebruikt om de tokens van het huidige gesprek te onthouden, plus rekenbuffers en het geheugen dat het besturingssysteem in beslag neemt. Een systeem met exact 19 GB RAM zal de 19 GB-tag niet kunnen draaien.
Er is geen universele vermenigvuldiger die voor iedereen geldt, omdat de KV-cache groeit naarmate u een langere contextlengte toestaat en de rest varieert per runtime-versie. Meet het daarom in plaats van te gokken. Laad het model met een eenvoudige prompt en lees af hoeveel geheugen de server heeft gereserveerd.
ollama run glm-4.7-flash:q4_K_M "Reply with the single word: ready"
ollama psollama ps toont het geladen model met een SIZE-kolom en een PROCESSOR-kolom. SIZE is de hoeveelheid die de runtime daadwerkelijk heeft gereserveerd; dit is het getal dat u moet vergelijken met uw planning. PROCESSOR geeft aan waar het rekenwerk plaatsvindt, waarbij 100% CPU betekent dat er helemaal geen GPU is gebruikt.
Wanneer het model niet in het geheugen past, faalt het proces geruisloos op twee manieren. Met swap ingeschakeld lijkt het laden te slagen, maar verloopt het genereren extreem traag omdat pagina's voor elk token tussen de schijf en het RAM worden verplaatst. Zonder swap wordt het proces direct beëindigd en toont journalctl -k | grep -i "out of memory" de Out of memory: Killed process-regel van de kernel, waarin ollama wordt genoemd. Controleer beide, aangezien geen van beide een behulpzame melding geeft in de terminal waarin u werkte.
De stap van de 19 GB Q4-tag naar de 32 GB Q8-tag is de belangrijkste factor die u kunt beïnvloeden. Q4 kost u enige uitvoerkwaliteit; hoe groot dat verlies is, hangt af van de taak. Gestructureerde uitvoer en lange redeneerketens lijden hier meer onder dan informele gesprekken. Hoe Q4, Q8 en FP16 in de praktijk verschillen is het lezen waard voordat u een keuze maakt, aangezien op een VPS zonder GPU de keuze voor een kwantisatie meestal bepaalt of het model überhaupt draait.
Wat gebeurt er op een VPS zonder GPU
De meeste VPS-abonnementen worden geleverd zonder GPU, en Ollama zal het model op de CPU uitvoeren zonder u hiervoor te waarschuwen. Of het resultaat bruikbaar is, hangt af van de werklast en uw geduld.
Het mixture-of-experts-ontwerp helpt bij de snelheid. Slechts ongeveer 3 miljard van de 30 miljard parameters worden gebruikt voor een willekeurige token, waardoor het rekenwerk per token veel kleiner is dan wat een dense 30B-model nodig zou hebben. Wat niet afneemt, is het geheugengebruik. Elke expert moet in het geheugen blijven, omdat de router voor de volgende token elk van hen kan kiezen. Een systeem met alleen een CPU heeft dus nog steeds de volledige 19 GB of meer nodig voor de Q4-tag, en de doorvoer wordt grotendeels bepaald door de geheugenbandbreedte in plaats van door de kloksnelheid.
Dit heeft een praktisch gevolg: twee abonnementen met hetzelfde aantal cores en dezelfde hoeveelheid RAM kunnen op merkbaar verschillende snelheden genereren omdat hun geheugensubsystemen verschillen. Een gedeeld abonnement voegt een tweede variabele toe, aangezien CPU-steltijd door een luidruchtige buur zich manifesteert als een tokens-per-seconde-cijfer dat van uur tot uur verandert. Dit is de reden waarom de gepubliceerde cijfers van anderen niet voorspellen wat u zult behalen, en de reden waarom de volgende sectie een meetrecept is in plaats van een tabel met resultaten.
Meet uw eigen tokens per seconde
Het generate-eindpunt van Ollama retourneert timingvelden in het uiteindelijke JSON-object. Deel het aantal gegenereerde tokens door de generatieduur om uw snelheid te bepalen, gebaseerd op uw plan en uw prompt.
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 staat voor het aantal gegenereerde tokens en eval_duration voor het aantal nanoseconden dat aan de generatie is besteed, dus eval_count / eval_duration * 1e9 is het aantal tokens per seconde. prompt_eval_duration omvat het lezen van uw prompt; dit is de wachttijd die een gebruiker ervaart voordat het eerste token verschijnt. load_duration is de tijd die nodig is om het model vanaf de schijf te laden; deze waarde is hoog bij de eerste aanroep na een herstart en bijna nul bij de daaropvolgende aanroepen.
Voer de test drie keer uit en behoud de tweede en derde resultaten, aangezien de eerste meting het laden van het model bevat. Voer de test vervolgens opnieuw uit met een veel langere prompt, aangezien de verwerking van de prompt schaalt met de invoerlengte, terwijl de generatiesnelheid dat niet doet. Noteer de getallen naast uw plannaam en uw kwantisatie. Deze registratie is waardevoller dan elk benchmarkrapport dat u leest, omdat deze is gemeten op de hardware waarvoor u betaalt.
Hoe contextlengte het geheugengebruik vermenigvuldigt
Ollama gebruikt standaard een context van 4096 tokens. Het model ondersteunt er veel meer, 198K tokens voor glm-4.7-flash, maar dit is niet de standaardinstelling en het inschakelen hiervan is niet kosteloos.
De KV-cache bevat één key-vector en één value-vector voor elk token, in elke laag. De omvang hiervan groeit lineair met het aantal tokens dat u toestaat. Een verhoging van 4096 naar 32768 tokens betekent acht keer zoveel context, en dus ongeveer acht keer zoveel KV-cache. Op een systeem dat precies groot genoeg is voor de gewichten, zorgt deze extra toewijzing er precies voor dat het systeem naar swap uitwijkt. Dit is de reden waarom een machine die korte prompts prima verwerkte, plotseling traag wordt wanneer iemand een lang document plakt.
Stel dit per verzoek in met num_ctx in het options-object, zoals in het bovenstaande curl-commando, of wijzig de standaardinstelling van de server.
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=EnvironmentHet laatste commando zou uw OLLAMA_CONTEXT_LENGTH-waarde moeten tonen. Als het een lege Environment= weergeeft, staat het override-bestand in de verkeerde map of is de herlaadactie overgeslagen. Na het laden van het volgende model zou ollama ps een zichtbaar grotere SIZE moeten tonen dan bij 4096. Verhoog de waarde in stappen en controleer dat getal elke keer. De contextlengte van Ollama instellen met num_ctx behandelt hoe dit samenwerkt met keep-alive en parallelle verzoeken, die beide dezelfde kosten vermenigvuldigen. Als meer dan één client de server gebruikt, bepaal dan de gelijktijdigheidslimieten tegelijk met de context, omdat elke parallelle slot een eigen KV-cache heeft en de wachtrij-instelling bepaalt of een tweede verzoek wacht of direct wordt geweigerd.
Wanneer de API goedkoper is dan de server
Zelf-hosting is niet automatisch goedkoper, en voor deze familie van modellen maken de gepubliceerde prijzen dat punt ongewoon duidelijk.
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
}
]Op 18 augustus 2026 vermeldt Z.ai GLM-5.2 voor $1.4 per miljoen input-tokens en $4.4 per miljoen output-tokens. Het vermeldt GLM-4.7-Flash, het model dat in deze handleiding lokaal wordt gedraaid, voor $0 in beide richtingen. Dit zijn gepubliceerde prijzen die kunnen wijzigen, dus controleer de huidige pagina voordat u een budget rond een van beide opties plant.
Het financiële argument voor zelf-hosting glm-4.7-flash is op dit moment dus zwak. Een VPS met voldoende RAM kost elke maand echt geld, terwijl de uitgever hetzelfde model gratis aanbiedt. Wat u koopt door het zelf te draaien is anders: uw prompts blijven op een machine die u beheert, en de modelversie verandert nooit tenzij u dat zelf doet. Dat zijn goede redenen om zelf te hosten. Kosten zijn dat niet, voor dit model, tegen deze prijzen.
De berekening verandert wanneer het model dat u wilt niet gratis is, of wanneer uw data wettelijk gezien uw eigen netwerk niet mag verlaten. Het omslagpunt tussen een GPU VPS en API-tokens werkt die berekening uit met elke variabele benoemd. Als u nog steeds de machine aan het kiezen bent, is wat een VPS daadwerkelijk per maand kost de andere helft van de som.
Houd het eindpunt op localhost
Dit is de stap die mensen overslaan, en het is de stap die er het meest toe doet.
Ollama bindt standaard aan 127.0.0.1 op poort 11434, waardoor het alleen vanaf de server zelf bereikbaar is. Controleer dit op uw systeem in plaats van ervan uit te gaan.
ss -ltnp | grep 11434U wilt 127.0.0.1:11434 zien. Het zien van 0.0.0.0:11434 of *:11434 betekent dat de API op elke interface luistert, inclusief de publieke interface.
Dat is van belang omdat de API van Ollama geen authenticatie heeft. Er is geen wachtwoord, geen token, geen allowlist. Iedereen die poort 11434 kan bereiken, kan uw modellen opvragen, generaties uitvoeren op hardware waarvoor u betaalt, nieuwe modellen naar uw schijf downloaden totdat deze vol is, en de modellen die u heeft verwijderen. Poort 11434 is vast en algemeen bekend, dus scanners vinden open poorten snel.
Stel OLLAMA_HOST=0.0.0.0 niet in. Veel handleidingen suggereren dit als de oplossing wanneer een client op uw laptop geen verbinding kan maken, maar dit is de verkeerde oplossing. Gebruik in plaats daarvan port forwarding.
ssh -N -L 11434:127.0.0.1:11434 you@your-serverDit koppelt poort 11434 op uw laptop via SSH aan het loopback-adres van de server, zodat elke client die is geconfigureerd voor http://localhost:11434 ongewijzigd werkt en er niets nieuws wordt blootgesteld. Voor meerdere personen of meerdere machines plaatst u de server in een privétunnelnetwerk en bindt u Ollama aan het tunneladres, nooit aan 0.0.0.0.
Controleer dit vanaf een andere locatie dan de server. Vanaf uw laptop, met de SSH-tunnel gesloten:
curl -m 5 http://your-server-ip:11434/api/tagscurl: (28) Connection timed out of curl: (7) Failed to connect is het juiste resultaat. Een JSON-lijst van uw modellen betekent dat de poort openstaat voor het internet, en dit moet direct worden verholpen. De netwerkfirewall van uw provider is een aparte controlelaag ten opzichte van de firewall die op de machine zelf draait, dus controleer beide. De bredere vraag of VPS-hosting veilig is behandelt de rest van de basisvereisten voor een machine die u aan laat staan.
Als glm-4.7-flash nog steeds te groot is
Wanneer de Q4-tag niet in uw plan past, is de oplossing een kleiner model, niet een kleinere context. Het inkorten van de context om een model passend te maken, resulteert in een model dat wel laadt, maar faalt bij de eerste lange prompt. Qwen 3 op 8B en 27B op een VPS doorloopt hetzelfde installatiepad voor formaten die geschikt zijn voor bescheiden systemen, en de algemene handleiding voor het zelf hosten van een LLM met Ollama op een VPS behandelt de onderdelen die gelijk blijven, ongeacht welk model u kiest. Waar u ook voor kiest, zet de tag vast, meet de prestaties op uw eigen plan en laat het eindpunt op loopback staan.
FAQ
Kan GLM 5.2 lokaal op een VPS draaien?
Nee. Sinds 18 augustus 2026 bestaat GLM 5.2 in de bibliotheek van Ollama alleen als glm-5.2:cloud, een tag die op de eigen infrastructuur van Ollama draait en ollama signin vereist voordat deze werkt. Het model bevat 756 miljard parameters, dus zelfs bij vier bits per parameter bedragen de gewichten alleen al honderden gigabytes. Dit overstijgt ruimschoots wat elk standaard VPS-abonnement biedt. Het GLM-model met downloadbare gewichten dat wel op een gehuurde server past, is glm-4.7-flash.
Hoeveel RAM heeft glm-4.7-flash nodig?
Beschouw de downloadgrootte van de tag als ondergrens en tel daar de ruimte voor de KV-cache en het besturingssysteem bij op. Ollama vermeldt de Q4-tag op 19 GB, Q8 op 32 GB en de bfloat16-tag op 60 GB. Er is geen vaste vermenigvuldiger die voor iedereen geldt, omdat de KV-cache groeit met de contextlengte die u instelt. Laad het model, voer ollama ps uit en lees de kolom SIZE voor het werkelijke cijfer op uw eigen systeem.
Hoe meet ik tokens per seconde op mijn eigen VPS?
Verstuur één verzoek naar http://localhost:11434/api/generate met "stream": false en lees vervolgens eval_count en eval_duration uit het antwoord. Het aantal tokens per seconde is eval_count / eval_duration * 1e9, omdat eval_duration wordt gerapporteerd in nanoseconden. Negeer de eerste run, aangezien load_duration daarbij ook het inlezen van de gewichten vanaf de schijf omvat. Herhaal dit ook met een lange prompt, omdat prompt_eval_duration toeneemt met de invoerlengte, terwijl de generatiesnelheid dat niet doet.
Waarom zou ik OLLAMA_HOST niet instellen op 0.0.0.0?
Omdat de API van Ollama geen authenticatie heeft. Het binden aan 0.0.0.0 plaatst een niet-geauthenticeerd eindpunt op het openbare internet. Iedereen die poort 11434 bereikt, kan op uw hardware genereren en wijzigen welke modellen zijn geïnstalleerd. Houd de standaard 127.0.0.1-binding aan, controleer deze met ss -ltnp | grep 11434 en benader de API vanaf uw laptop via een SSH-tunnel zoals ssh -N -L 11434:127.0.0.1:11434 you@your-server.