SSD Nodes Learn 🎉 VPS od $5.50/mies.
Przewodniki Matt ConnorAutor: Matt Connor · Zaktualizowano 2026-08-21

Uruchamianie GLM na VPS przez Ollama - poradnik

Model GLM 5.2 wymaga 378 GB RAM i nie działa lokalnie. Sprawdź, który wariant GLM faktycznie obsłuży Twój VPS oraz ile pamięci RAM wymagają poszczególne kwantyzacje modelu.

Czy można uruchomić GLM 5.2 na VPS?

Nie, a powód warto poznać przed wynajęciem jakiejkolwiek infrastruktury. Według stanu na 18 sierpnia 2026, GLM 5.2 w bibliotece Ollama posiada dokładnie jeden tag, glm-5.2:cloud. Tag :cloud działa na serwerach Ollama. Twój serwer wysyła prompt i odbiera tokeny, więc wagi modelu nigdy nie trafiają na Twój dysk. Model posiada 756 miliardów parametrów. Cztery bity na parametr przy 756 miliardach parametrów to około 378 GB wag, a jest to czysta matematyka przed uwzględnieniem kontekstu, aktywacji czy systemu operacyjnego. Żaden standardowy plan VPS nie oferuje takiej ilości pamięci RAM.

Modelem GLM, który mieści się na wynajętym serwerze, jest glm-4.7-flash. Jest on publikowany z wagami do pobrania w 4 tagach. Jest to model typu mixture-of-experts, co oznacza, że dla każdego tokena uruchamiana jest tylko niewielka część sieci, a Z.ai opisuje go jako 30B-A3B: 30 miliardów parametrów łącznie, około 3 miliardy aktywne na token. Niniejszy przewodnik odpowiada zatem na pytanie, w oparciu o które można podjąć działanie. Przypnij tag, dobierz rozmiar serwera, zmierz własną prędkość i zachowaj prywatność endpointu.

Zweryfikuj tag przed skopiowaniem jakiejkolwiek komendy, w tym tych zawartych w tym dokumencie. Biblioteka Ollama zmienia się bez powiadomienia. Otwórz listę tagów glm-4.7-flash i potwierdź, że tag nadal istnieje. Jeśli pojawiło się nowsze wydanie GLM z lokalnymi wagami, wybierz je i zanotuj, który tag faktycznie przetestowano.

Jeśli mimo wszystko chcesz korzystać z GLM 5.2, ollama run glm-5.2:cloud działa po ollama signin i z perspektywy klienta zachowuje się jak każdy inny model Ollama. Zrozum, na co się zgadzasz: prompt opuszcza Twój serwer. Jeśli powodem hostowania we własnym zakresie jest wymóg pozostania danych na Twojej maszynie, tag :cloud nie spełnia tego założenia.

Dostępne tagi GLM i zalecenia dotyczące ich przypinania

W tym kontekście istotne są trzy oficjalne wpisy GLM. glm-5.2 oraz glm-5.1 dotyczą wyłącznie chmury. glm-4.7-flash to wersja lokalna; poniżej przedstawiono opublikowane tagi wraz z rozmiarem pobierania wskazywanym przez Ollama dla każdego z nich.

Chartglm-4.7-flash tags in Ollama's library, checked 2026-08-18
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
  }
]

Są to wartości podane na stronie biblioteki, a nie wyniki własnych pomiarów. Zarówno latest, jak i q4_K_M mają przypisaną wartość 19 GB, dlatego latest obecnie wskazuje na kompilację Q4. Może się to zmienić przy każdej ponownej publikacji, dlatego nigdy nie należy umieszczać samego ollama pull glm-4.7-flash w skryptach ani plikach Dockerfile. Należy wskazać konkretną kwantyzację. Największy tag, bf16, wymaga pobrania 60 GB danych i zawiera niekwantyzowane wagi bfloat16.

Wyszukiwanie w bibliotece zwraca również przesłane pliki z przestrzenią nazw, zawierające ukośnik w nazwie, takie jak someuser/glm-5.2. Ukośnik oznacza, że plik został opublikowany przez konto użytkownika, jest to więc ponowne przesłanie przez społeczność, a nie oficjalny wpis. Nikt nie gwarantuje, jakie wagi znajdują się wewnątrz. Należy traktować taki plik tak samo, jak każdy niepodpisany plik binarny znaleziony w sieci.

Instalacja Ollama i pobranie konkretnego tagu

Instalator Ollama dla systemu Linux to jedno polecenie.

curl -fsSL https://ollama.com/install.sh | sh
ollama --version

Instalator tworzy usługę systemd, która działa jako użytkownik ollama. Przed pobraniem czegokolwiek należy potwierdzić, że usługa została uruchomiona.

systemctl status ollama --no-pager

Active: active (running) oznacza, że API nasłuchuje na porcie 11434. Jeśli jednostka nie istnieje, instalator wykonał instalację binarną, a dokumentacja Ollama dla systemu Linux zawiera plik usługi, który należy utworzyć ręcznie.

Strona glm-4.7-flash zawiera minimalną wymaganą wersję Ollama. Starsza wersja binarna nie powoduje wolnego działania modelu, lecz jego odmowę: pobieranie kończy się niepowodzeniem z komunikatem, że model wymaga nowszej wersji Ollama. Aby dokonać aktualizacji, należy ponownie uruchomić skrypt instalacyjny. Na dzień 18 sierpnia 2026 r. aktualne wydanie to 0.32.14, co znacznie przewyższa wymagane minimum.

Teraz należy pobrać jeden tag według nazwy.

ollama pull glm-4.7-flash:q4_K_M
ollama ls

ollama ls powinno wyświetlić glm-4.7-flash:q4_K_M o rozmiarze zbliżonym do opublikowanego 19 GB. Przerwane pobieranie nie pozostawia żadnych uruchamialnych plików, dlatego należy ponownie wykonać to samo polecenie. Najczęstszą przyczyną nieudanego pobierania na małych planach jest brak miejsca na dysku, a nie problem z siecią, ponieważ model jest zapisywany w /usr/share/ollama/.ollama/models na głównym systemie plików. Przed rozpoczęciem należy sprawdzić dostępność miejsca za pomocą df -h /usr/share/ollama.

Ile pamięci RAM wymaga każda kwantyzacja?

Należy przyjąć rozmiar pliku do pobrania jako wartość minimalną, a następnie dodać do niej odpowiedni zapas. Wagi muszą znajdować się w pamięci operacyjnej. Oprócz nich w pamięci przechowywana jest pamięć podręczna KV (key/value cache), wykorzystywana przez środowisko uruchomieniowe do zapamiętywania tokenów z bieżącej konwersacji, a także bufory obliczeniowe oraz zasoby zajmowane przez system operacyjny. Serwer posiadający dokładnie 19 GB pamięci RAM nie uruchomi modelu oznaczonego tagiem 19 GB.

Nie istnieje jeden uniwersalny mnożnik, ponieważ pamięć podręczna KV rośnie wraz z dopuszczalną długością kontekstu, a pozostałe parametry zmieniają się zależnie od wersji środowiska uruchomieniowego. Zamiast szacować, należy dokonać pomiaru. Wczytaj model przy użyciu prostego zapytania, a następnie sprawdź ilość pamięci zarezerwowaną przez serwer.

ollama run glm-4.7-flash:q4_K_M "Reply with the single word: ready"
ollama ps

ollama ps wyświetla wczytany model wraz z kolumnami SIZE oraz PROCESSOR. Wartość SIZE to ilość pamięci faktycznie zarezerwowanej przez środowisko uruchomieniowe i to właśnie tę liczbę należy porównać z planowaną konfiguracją. PROCESSOR wskazuje miejsce wykonywania obliczeń, przy czym 100% CPU oznacza, że procesor graficzny nie został w ogóle wykorzystany.

Jeśli model nie mieści się w pamięci, awaria przebiega w sposób cichy i przyjmuje jedną z dwóch postaci. Przy włączonej partycji wymiany (swap) wczytywanie pozornie kończy się sukcesem, a następnie generowanie tekstu drastycznie zwalnia, ponieważ dla każdego tokena strony pamięci są przenoszone między dyskiem a RAM. Bez partycji swap proces jest natychmiast przerywany, a journalctl -k | grep -i "out of memory" pokazuje komunikat jądra Out of memory: Killed process wskazujący na ollama. Należy sprawdzić oba te miejsca, ponieważ w terminalu, w którym wprowadzano polecenie, nie pojawia się żaden pomocny komunikat o błędzie.

Przejście z tagu Q4 o rozmiarze 19 GB na tag Q8 o rozmiarze 32 GB jest głównym narzędziem pozwalającym kontrolować zużycie pamięci. Kwantyzacja Q4 wiąże się z pewną utratą jakości wyjściowej, której skala zależy od rodzaju zadania; strukturalne dane wyjściowe oraz długie łańcuchy rozumowania cierpią bardziej niż zwykła konwersacja. Przed podjęciem decyzji warto przeczytać Czym różnią się Q4, Q8 i FP16 w praktyce, ponieważ w przypadku serwerów VPS wyposażonych wyłącznie w procesor CPU, wybór kwantyzacji zazwyczaj decyduje o tym, czy model w ogóle zostanie uruchomiony.

Co dzieje się na serwerze VPS bez GPU

Większość planów VPS nie oferuje GPU, a Ollama uruchomi model na CPU bez żadnego ostrzeżenia. To, czy wynik będzie użyteczny, zależy od obciążenia oraz cierpliwości użytkownika.

Architektura mixture-of-experts poprawia szybkość działania. Dla każdego tokena wykorzystywane są tylko około 3 miliardy z 30 miliardów parametrów, więc operacje arytmetyczne na token są znacznie mniej wymagające niż w przypadku gęstego modelu 30B. Nie zmniejsza się natomiast zapotrzebowanie na pamięć. Każdy ekspert musi pozostawać w pamięci operacyjnej, ponieważ router może wybrać dowolnego z nich dla kolejnego tokena. Z tego powodu serwer wyposażony tylko w CPU nadal wymaga pełnych 19 GB lub więcej dla tagu Q4, a przepustowość jest ograniczona głównie przez przepustowość pamięci, a nie przez taktowanie procesora.

Ma to praktyczne konsekwencje: dwa plany o tej samej liczbie rdzeni i tej samej ilości RAM mogą generować tekst z zauważalnie różną prędkością, ponieważ różnią się podsystemami pamięci. Plan współdzielony wprowadza drugą zmienną, ponieważ czas kradzieży procesora przez sąsiedni proces objawia się jako liczba tokenów na sekundę, która zmienia się z godziny na godzinę. Jest to powód, dla którego opublikowane wyniki innych osób nie przewidują Twoich, oraz powód, dla którego kolejna sekcja zawiera instrukcję pomiaru, a nie tabelę wyników.

Pomiar własnej liczby tokenów na sekundę

Endpoint generate w Ollama zwraca pola czasowe w końcowym obiekcie JSON. Podziel liczbę wygenerowanych tokenów przez czas trwania generowania, aby uzyskać wynik dla swojego planu i swojego promptu.

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 to liczba wygenerowanych tokenów, a eval_duration to czas w nanosekundach poświęcony na ich generowanie, zatem eval_count / eval_duration * 1e9 to tokeny na sekundę. prompt_eval_duration obejmuje odczyt promptu, co użytkownik odczuwa jako czas oczekiwania na pojawienie się pierwszego tokenu. load_duration to czas ładowania modelu z dysku, dlatego jest on duży przy pierwszym wywołaniu po restarcie i bliski zeru przy kolejnych.

Uruchom test trzykrotnie i zachowaj drugi oraz trzeci wynik, ponieważ pierwszy uwzględnia ładowanie modelu. Następnie wykonaj test ponownie z znacznie dłuższym promptem, ponieważ przetwarzanie promptu skaluje się wraz z długością danych wejściowych, podczas gdy szybkość generowania pozostaje stała. Zapisz wyniki obok nazwy planu i zastosowanej kwantyzacji. Taka dokumentacja jest cenniejsza niż jakikolwiek benchmark, ponieważ została zmierzona na sprzęcie, za który płacisz.

Jak długość kontekstu zwiększa zużycie pamięci

Ollama domyślnie ustawia kontekst na 4096 tokenów. Model deklaruje znacznie większą wartość, 198K tokenów dla glm-4.7-flash, jednak nie jest ona dostępna domyślnie, a jej aktywacja wiąże się z kosztami zasobów.

Pamięć podręczna KV przechowuje jeden wektor klucza i jeden wektor wartości dla każdego tokena w każdej warstwie. Jej rozmiar rośnie liniowo wraz z liczbą dozwolonych tokenów. Zwiększenie limitu z 4096 do 32768 tokenów oznacza ośmiokrotne wydłużenie kontekstu, co przekłada się na mniej więcej ośmiokrotny wzrost rozmiaru pamięci podręcznej KV. Na serwerze, którego pamięć jest dopasowana jedynie do rozmiaru wag modelu, ta dodatkowa alokacja powoduje przejście do swapu. To wyjaśnia, dlaczego maszyna, która poprawnie obsługiwała krótkie zapytania, nagle zwalnia po wklejeniu długiego dokumentu.

Wartość tę można ustawić dla każdego żądania za pomocą num_ctx w obiekcie opcji, tak jak w powyższym poleceniu curl, lub zmienić ustawienie domyślne serwera.

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=Environment

Ostatnie polecenie powinno wyświetlić wartość OLLAMA_CONTEXT_LENGTH. Jeśli wynik Environment= jest pusty, oznacza to, że plik nadpisujący konfigurację znajduje się w niewłaściwym katalogu lub pominięto przeładowanie serwera. Po ponownym załadowaniu modelu, ollama ps powinno wskazywać wyraźnie większą wartość SIZE niż przy 4096. Należy zwiększać tę wartość stopniowo, za każdym razem monitorując ten parametr. Ustawianie długości kontekstu Ollama za pomocą num_ctx opisuje, jak wpływa to na parametry keep-alive oraz żądania równoległe, które zwielokrotniają ten sam koszt.

Kiedy API jest tańsze niż własny serwer

Samodzielne hostowanie nie zawsze jest tańsze, a w przypadku tej rodziny modeli opublikowane cenniki wyraźnie to potwierdzają.

ChartZ.ai published list prices per million tokens, checked 2026-08-18
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
  }
]

Według stanu na 18 sierpnia 2026, Z.ai wycenia GLM-5.2 na $1.4 za milion tokenów wejściowych oraz $4.4 za milion tokenów wyjściowych. Model GLM-4.7-Flash, który w tym poradniku uruchamiamy lokalnie, kosztuje $0 w obu kierunkach. Są to ceny oficjalne, które ulegają zmianom, dlatego przed planowaniem budżetu należy sprawdzić aktualną stronę cennika.

Argument finansowy za samodzielnym hostowaniem glm-4.7-flash jest obecnie słaby. VPS z odpowiednią ilością pamięci RAM generuje co miesiąc realne koszty, podczas gdy wydawca udostępnia ten sam model za darmo. Uruchamiając go samodzielnie, zyskujesz coś innego: Twoje prompty pozostają na maszynie, którą kontrolujesz, a wersja modelu nie zmieni się, dopóki sam jej nie zaktualizujesz. To dobre powody, by hostować samodzielnie. Koszt, przy obecnych cenach tego modelu, do nich nie należy.

Rachunek zmienia się, gdy model, którego potrzebujesz, nie jest darmowy lub gdy Twoje dane prawnie nie mogą opuścić Twojej sieci. Punkt rentowności między GPU VPS a tokenami API szczegółowo omawia te obliczenia z uwzględnieniem każdej zmiennej. Jeśli nadal wybierasz maszynę, rzeczywisty miesięczny koszt VPS stanowi drugą część tego równania.

Utrzymanie punktu końcowego na localhost

To jest krok, który jest najczęściej pomijany, a ma on kluczowe znaczenie.

Ollama domyślnie wiąże się z adresem 127.0.0.1 na porcie 11434, dzięki czemu jest dostępna wyłącznie z poziomu samego serwera. Należy to potwierdzić na własnej maszynie, zamiast zakładać, że tak jest w istocie.

ss -ltnp | grep 11434

Oczekiwany wynik to 127.0.0.1:11434. Zobaczenie 0.0.0.0:11434 lub *:11434 oznacza, że API nasłuchuje na każdym interfejsie, w tym na interfejsie publicznym.

Jest to istotne, ponieważ API Ollama nie posiada mechanizmu uwierzytelniania. Brak jest haseł, tokenów czy list dozwolonych adresów. Każdy, kto ma dostęp do portu 11434, może wyświetlić listę modeli, uruchamiać generowanie na opłacanych przez użytkownika zasobach sprzętowych, pobierać nowe modele na dysk aż do jego zapełnienia oraz usuwać istniejące dane. Port 11434 jest stały i powszechnie znany, więc skanery szybko wykrywają otwarte instancje.

Nie należy ustawiać zmiennej OLLAMA_HOST=0.0.0.0. Wiele poradników sugeruje to jako rozwiązanie problemu z połączeniem klienta z laptopa, jednak jest to rozwiązanie błędne. Zamiast tego należy przekierować port.

ssh -N -L 11434:127.0.0.1:11434 you@your-server

To rozwiązanie mapuje port 11434 na laptopie do adresu loopback serwera za pośrednictwem SSH, dzięki czemu każdy klient skonfigurowany na http://localhost:11434 działa bez zmian, a żadne nowe zasoby nie są wystawiane na zewnątrz. W przypadku pracy grupowej lub wielu maszyn należy umieścić serwer w prywatnej sieci tunelowej i powiązać Ollama z adresem tunelu, nigdy z 0.0.0.0.

Należy przeprowadzić weryfikację z lokalizacji innej niż serwer. Z poziomu laptopa, przy zamkniętym tunelu SSH:

curl -m 5 http://your-server-ip:11434/api/tags

curl: (28) Connection timed out lub curl: (7) Failed to connect to prawidłowy wynik. Wyświetlenie listy modeli w formacie JSON oznacza, że port jest otwarty na świat i wymaga natychmiastowego zabezpieczenia. Sieciowy firewall dostawcy jest odrębnym mechanizmem kontroli od firewalla działającego na maszynie, dlatego należy sprawdzić oba. Szersze zagadnienie bezpieczeństwa hostingu VPS omawia pozostałe podstawowe kwestie dotyczące maszyny pozostawionej w trybie ciągłej pracy.

Jeśli glm-4.7-flash nadal jest zbyt duży

Gdy tag Q4 nie mieści się w planie, rozwiązaniem jest mniejszy model, a nie mniejszy kontekst. Ograniczanie kontekstu w celu zmieszczenia modelu prowadzi do sytuacji, w której model się ładuje, ale zawodzi przy pierwszym dłuższym zapytaniu. Qwen 3 w wersjach 8B i 27B na VPS opisuje tę samą ścieżkę instalacji dla rozmiarów odpowiednich dla mniejszych maszyn, a ogólny przewodnik po samodzielnym hostowaniu LLM z Ollama na VPS omawia elementy, które pozostają niezmienne niezależnie od wybranego modelu. Niezależnie od wyboru, należy przypiąć tag, przeprowadzić pomiary na własnym planie i pozostawić punkt końcowy na interfejsie loopback.

FAQ

Czy GLM 5.2 można uruchomić lokalnie na VPS?

Nie. Według stanu na 18 sierpnia 2026 r. GLM 5.2 występuje w bibliotece Ollama wyłącznie jako glm-5.2:cloud, czyli tag działający w infrastrukturze Ollama, który wymaga ollama signin do poprawnego funkcjonowania. Model posiada 756 miliardów parametrów, więc nawet przy czterech bitach na parametr same wagi zajmują setki gigabajtów, co znacznie przekracza zasoby oferowane w standardowych planach VPS. Modelem GLM z wagami do pobrania, który mieści się na wynajętym serwerze, jest glm-4.7-flash.

Ile pamięci RAM wymaga glm-4.7-flash?

Należy przyjąć rozmiar pobieranego pliku jako wartość minimalną i doliczyć miejsce na pamięć podręczną KV oraz system operacyjny. Ollama podaje rozmiar tagu Q4 jako 19 GB, Q8 jako 32 GB, a tagu bfloat16 jako 60 GB. Nie istnieje jeden uniwersalny mnożnik, ponieważ pamięć podręczna KV rośnie wraz z ustawioną długością kontekstu. Załaduj model, uruchom ollama ps i odczytaj wartość z kolumny SIZE, aby uzyskać rzeczywisty wynik dla własnej maszyny.

Jak zmierzyć liczbę tokenów na sekundę na własnym VPS?

Wyślij jedno żądanie do http://localhost:11434/api/generate za pomocą "stream": false, a następnie odczytaj eval_count oraz eval_duration z odpowiedzi. Liczbę tokenów na sekundę oblicza się jako eval_count / eval_duration * 1e9, ponieważ eval_duration jest raportowane w nanosekundach. Pomiń pierwszy wynik, ponieważ load_duration w tym przypadku obejmuje odczyt wag z dysku. Powtórz test z długim promptem, ponieważ prompt_eval_duration rośnie wraz z długością danych wejściowych, podczas gdy szybkość generowania pozostaje stała.

Dlaczego nie należy ustawiać OLLAMA_HOST na 0.0.0.0?

Ponieważ API Ollama nie posiada uwierzytelniania, więc powiązanie go z 0.0.0.0 udostępnia nieautoryzowany punkt końcowy w publicznym Internecie. Każdy, kto uzyska dostęp do portu 11434, może generować treści na Twoim sprzęcie i zmieniać zainstalowane modele. Pozostaw domyślne powiązanie 127.0.0.1, sprawdź je za pomocą ss -ltnp | grep 11434 i łącz się z API ze swojego laptopa przez tunel SSH, taki jak ssh -N -L 11434:127.0.0.1:11434 you@your-server.