gdamian.pl
← Wszystkie wpisy
10 min

Self-hosted AI: jak zaoszczędzić i zachować prywatność w erze chmury 

Damian GębalaAutor

Self-hosted AI to uruchomienie modelu językowego na sprzęcie, który należy do Ciebie, zamiast na cudzym. Realna oszczędność pojawia się dopiero przy dużym wolumenie, a realna prywatność dopiero wtedy, gdy serwer nie jest wystawiony publicznie. Poniżej konkretne liczby: chmura GPU, własne serwery i próg, od którego zwrot się liczy.

Co tak naprawdę kupujesz, przenosząc model na własny sprzęt

Chmura sprzedaje Ci trzy rzeczy naraz: dostęp do dużego modelu, skalowanie, gdy przyjdzie więcej zapytań, i brak Twojej głowy przy utrzymaniu. Self-hosted AI bierze pierwszą z tych rzeczy i oddaje dwie pozostałe w Twoje ręce. Serwer odpowiada tylko na pytania, które mu wyślesz, dane zostają tam, gdzie postawiłeś maszynę, a jedyny rachunek, który płacisz, to prąd i sprzęt, który już masz albo który raz kupisz.

To nie jest wybór między „bezpieczne a tane”, tylko między rozmiarami problemu. Do kilku osób i kilkuset zapytań dziennie różnica w koszcie bywa pomijalna. Przy setkach użytkowników albo przy danych, których nie chcesz zlecać podmiotowi trzeciemu, ten sam wybór zaczyna mieć realną wagę.

Ile kosztuje chmura, gdy hostujesz model na wynajętym GPU

To najuczciwsza miara, bo takie ceny są jawne. Przykładowo UpCloud publikuje pełny cennik serwerów GPU: ceny są netto, bez podatków lokalnych, a kwota miesięczna to szacunek dla 30 dni - przy czym koszt miesięczny jest zatrzymany na 28 dniach, więc serwer działający cały miesiąc nie wyjdzie drożej niż kwota z tabeli.

KonfiguracjaZa godzinęZa miesiąc (netto)
1 × NVIDIA L4, 8 rdzeni, 64 GB RAM0,58 EUR418 EUR
1 × NVIDIA L4, 12 rdzeni, 128 GB RAM0,70 EUR504 EUR
2 × NVIDIA L4, 16 rdzeni, 192 GB RAM1,30 EUR936 EUR
1 × NVIDIA L40S, 12 rdzeni, 128 GB RAM1,25 EUR900 EUR
1 × NVIDIA H100, 12 rdzeni, 240 GB RAM1,79 EUR1289 EUR
1 × NVIDIA B200, 12 rdzeni, 240 GB RAM4,50 EUR3240 EUR

L4 ma 24 GB pamięci graficznej, L40S - 48 GB, H100 - 80 GB. Chmura GPU to więc nie kwestia „czy stać", tylko którą klasę karty sobie zasługujesz. Warianty spot są tańsze nawet o 25 procent, ale maszyna może zostać wyłączona, gdy operator potrzebuje tego zasobu w innym miejscu swojej sieci. Do testów to w porządku, do pracy ciągłej już nie.

Do tej kwoty dochodzą dwie pozycje, o których łatwo zapomnieć: dysk i adres IP są rozliczane osobno, również wtedy, gdy sam serwer jest wyłączony. Serwery z UE upraszczają sprawę z RODO - UpCloud deklaruje hostowanie w Finlandii w centrach zgodnych z GDPR, Hetzner pisze o lokalizacji w Europie i centrach z certyfikatem DIN ISO/IEC 27001 w Niemczech i Finlandii.

Ile kosztuje własny serwer i kiedy zwrot się liczy

Polskie hurtownie sprzedają własne maszyny bez GPU, ale z RAM i procesorem w zupełnie przyzwoitych cenach netto miesięcznie. Dla przykładu Forpsi: Dell PE R210 II z Xeon E3-1230 v2, 16 GB RAM i dwoma dyskami SSD od 173,88 zł miesięcznie, Ryzen 7 9700X z 32 GB i NVMe od 546,48 zł, a Dell PE R630 z dwoma Xeonami i 256 GB RAM oraz czterema dyskami SAS - od 1473,84 zł. To nie są maszyny do modeli 70B, ale do kwantowanych modeli 7B i 14B wystarczają z nawiązką. Praktyka firm, które już to zrobiły, potwierdza ten trop: jeden z opisanych wdrożeń działa na serwerze klasy Xeon ze 128 GB RAM, bez farmy kart graficznych.

Liczby z kosztów wdrożenia warto czytać z uwagą. Jedno z polskich źródeł podaje, że całe wdrożenie on-premise zamyka się w 35-95 tys. zł netto, a przy 20 osobach koszt po trzech latach to około 70-130 tys. zł wobec około 80 tys. zł w chmurze. Autor tego materiału sprzedaje usługi wdrożeniowe, więc traktuj to jako ofertę rynkową, nie niezależny benchmark. Z podanych przez niego pozycji: sprzęt 15-35 tys. zł jednorazowo, podłączenie wiedzy firmy 20-60 tys. zł, abonamentowe utrzymanie od 1-2 tys. zł miesięcznie. Dla porównania ChatGPT Team przy 20 osobach wychodzi około 115 zł na osobę miesięcznie, czyli około 27 tys. zł rocznie.

Wspomina też o dotacjach: wdrożenie on-premise kwalifikuje się do programu Dig.IT (50 procent dofinansowania) oraz Pilotażu AI PARP (do 70 procent). To zmienia rachunek, ale tylko wtedy, gdy faktycznie je dostaniesz.

Jedyna policzalna w całym zestawie cena tokenów pochodzi od DreamHost, który cytuje kartę modelu Mistral: Ministral 3 14B kosztuje 0,20 USD za milion tokenów, więc nawet ktoś, który zużywa milion tokenów dziennie, wyda około 6 USD miesięcznie. Autor komentuje to wprost: setki dolarów miesięcznie za API to w porównaniu z „wielodolarową” kartą graficzną koszt, który zwraca się latami. Rachunek zmienia się w drugą stronę dopiero wtedy, gdy zastępujesz subskrypcję czatu, pracujesz na pełną wydajność przez cały dzień albo prywatność jest celem samym w sobie. Płacisz za sprzęt, nie za dogodność, i dlatego to jest realne tylko wtedy, gdy masz sprzęt.

Zanim kupisz: tyle VRAM, ile parametrów modelu

Najczęstszy błąd to liczenie parametrów i ignorowanie pamięci graficznej. Piramida, którą publikuje DreamHost, jest czytelna: 8 GB VRAM obsługuje modele 3B-7B, 12 GB to modele 7B-10B i „codzienny” poziom pracy, 16 GB daje 14B-20B, a 24 GB i więcej wchodzi w rząd 27B-32B.

Różnice w literaturze, które wyglądają jak sprzeczność, w rzeczywistości dotyczą precyzji. Model 8B w FP16 potrzebuje około 16 GB VRAM już na same wagi, a kwantyzacja do 4 bitów zmniejsza zapotrzebowanie mniej więcej o 75 procent przy niewielkiej stracie jakości; standardem stał się format Q4_K_M. Stąd w praktyce model 7B w Q4 zjada około 5-6 GB, a wariant 8B w Q4_K_M około 4,5 GB wag - i to samo porównanie daje około 14 GB dla FP16. Do tego dochodzi narzut na sterowniki i framework (0,5-1 GB) oraz pamięć cache, która rośnie z długością kontekstu znacznie szybciej, niż zakłada większość ludzi.

Modele 70B na karcie konsumenckiej nie postawisz. Wymagają sprzętu klasy L40S 48 GB, H100 80 GB albo podziału modelu na cztery GPU flagą --tensor-parallel-size 4 - czego Ollama nie potrafi zrobić samodzielnie. Jeśli Twoje zadanie mieści się w 7B-14B, sprzęt kosztuje ułamek tego. Do modeli popularnych warto też rozważyć polski Bielik 11B - w zestawieniu europejskim uzyskał wynik 0,66 i zajął trzecie miejsce, tuż za Gemma 2 27B i Llama 3.1 70B, przy czym wyprzedził Mixtral 8x7B.

Ollama czy vLLM: spór o szybkość, który łatwo zniekształcić

Oba narzędzia potrafią to samo, ale zostały napisane do innych sytuacji. Ollama to jedna komenda, wykrywa CUDA sama, na Apple Silicon używa Metal i w minutę stawia model na laptopie. vLLM wymaga środowiska Pythona, zgodności wersji CUDA i więcej ruchomych elementów, ale za to obsługuje wielu użytkowników naraz przez ciągłe przetwarzanie wsadowe. Do eksperymentów na jednym komputerze wybór jest oczywisty; do produkcji też.

Co do liczb, źródła nie zgadzają się i nie należy im ufać w pojedynczym zdaniu. ML Journey podaje dla modelu 7B: 45 tokenów na sekundę w zapytaniu pojedynczym dla Ollamy wobec 48 dla vLLM, czyli przewaga 7 procent, ale przy dziesięciu zapytaniach równolegle już 6 wobec 35 tokenów na sekundę, a znośna liczba zapytań na godzinę rośnie z około 500 do ponad 5000. SitePoint mówi o 2-4-krotnej przewadze powyżej 10 równoległych zapytań, a 2 Acre Studios o 3-5-krotnej na pojedynczym GPU przy modelu 13B. Rozrzut wynosi więc od dwóch do dziesięciu razy zależnie od obciążenia.

Wniosek: przy pracy jednej osoby różnica jest praktycznie niezauważalna, bo wąskim gardłem okazuje się człowiek przy klawiaturze, nie model. Przewaga vLLM pojawia się dopiero wtedy, gdy kilka osób puka do tego samego serwera w tej samej chwili.

Osobno o LM Studio: aplikacja jest darmowa, ale ma zamknięty kod, nie nadaje się do pracy bez interfejsu graficznego, w CI ani na serwerze i nie oferuje wsparcia dla firm. Do porównywania modeli klikając w okno nadaje się dobrze. Jako usługę wybierz Ollamę albo vLLM.

Prywatność, która naprawdę chroni dane

Najczęstsze nieporozumienie przy tym temacie to utożsamienie „samodzielny” z „bezpieczny”. Serwer vLLM postawiony z flagą --host 0.0.0.0 wystawia się na wszystkich interfejsach bez uwierzytelniania - to dosłowne ostrzeżenie z dokumentacji, a domyślnie powinien startować na 127.0.0.1, a dostęp z zewnątrz dawać przez proxy albo klucz API. Ollama działa offline z ustawieniami domyślnymi, ale jej serwer nie ustawia liberalnych nagłówków CORS; w praktyce dostęp z zewnątrz także prowadzi się przez warstwę pośrednią.

Druga strona to funkcje, o których zapominasz. Dane mogą nie opuszczać maszyny, a mimo to wyciekać, jeśli włączysz wyszukiwanie w sieci, integracje albo zdalne logowanie. Prywatne API chmurowe także nie gwarantuje niczego, dopóki sprawdzisz, co dzieje się z danymi. Udostępnianie zaś domowego łącza światu po to, by na nim działał serwer z modelem, to zły trade, nawet przy poprawnej konfiguracji.

W kontekście RODO zysk jest konkretny: dane nie opuszczają serwera firmy, więc nie ma transferu do państw trzecich ani zewnętrznych podmiotów przetwarzających. Przy cennikach, danych klientów i dokumentacji technicznej to argument, którego nie da się podważyć dyskusją o wydajności.

Open source to nie to samo co open weights

Drugi nawyk myślowy, który oszczędza kłopotów, dotyczy licencji. DreamHost wprost zaznacza, że większość modeli nazywanych „open source” to modele z samymi otwartymi wagami. Różnica jest praktyczna: w modelu otwartym licencja jest zatwierdzona przez OSI i daje pełne prawo do użycia, zmiany i rozpowszechniania. Model z otwartymi wagami udostępnia wyłącznie parametry - a kod i dane treningowe zostają u autorów.

W praktyce oznacza to, że licencja społecznościowa Meta nie jest otwartym źródłem i ma własne warunki użycia, a modele z tej rodziny bywają objęte progami użytkowania. Z drugiej strony Phi-4 jest na MIT, najbardziej liberalnej z licencji, seria DeepSeek R1 razem z destylacjami również, a Gemma 4 przeszła na Apache 2.0 w kwietniu 2026.

Dla firmy prowadzącej dział handlowy albo produkcję, licencja jest ważniejsza niż kilka punktów wydajności benchmarku. Nikt nie chce zbudować procesu na modelu, którego warunki użycia zmienią się w następnej wersji.

Kiedy self-hosted AI nie jest najlepszym wyborem

Są trzy sytuacje, w których warto zostać przy chmurze. Pierwsza: duży ruch i krótkie szczyty. Ollama obsługuje wygodnie około 10-20 osób jednocześnie, a ML Journey sugeruje, że nie nadaje się do usług produkcyjnych przekraczających 1000 zapytań na godzinę w sposób ciągły - to dwie różne miary, których nie wolno w myślach zamieniać na siebie. Druga: brak kogoś, kto weźmie na siebie aktualizacje. Wersje CUDA i bibliotek dość łatwo się psują, a dokumentacja vLLM wprost odsyła do konteneryzacji jako zalecanego sposobu wdrożenia. Trzecia: sprzęt, którego jeszcze nie masz, przy jednorazowym zadaniu - wtedy godzina na wynajętym GPU jest tańsza niż zakup.

Prywatne API chmurowe w europejskich centrach danych bywa wystarczające, gdy naprawdę nie masz sensu hostować sam. Sprawdź tylko, gdzie leżą logi i czy umowa pozwala wyłączyć wykorzystywanie Twoich treści do treningu.

Od czego zacząć, zanim wydasz złotówkę na GPU

Najpierw pobierz model na laptopie i sprawdź, czy Twoje zadania w ogóle się na nim spinają: klasyczna odpowiedź brzmi, że aplikacja w n8n albo prosty chatbot da się zbudować w kilka tygodni. Przy okazji przekonasz się, jak wiele dobrej roboty da się zrobić bez kart graficznych. Dopiero potem policz realne zapytania miesięcznie i porównaj z tabelą GPU wyżej - różnica między GPU za 418 EUR miesięcznie a serwerem za kilkaset zł potrafi zniknąć w kosztach wdrożenia, które i tak są największą pozycją.

Stos techniczny: Ollama jako warstwa wykonawcza, Qdrant jako baza wektorowa do wyszukiwania w dokumentach firmy i n8n jako warstwa przepływu. Gotowy szablon open source (Self-hosted AI Starter Kit) składa n8n, Ollamę, Qdrant i PostgreSQL jedną komendą, z wariantami dla kart NVIDIA, AMD na Linuksie, Apple Silicon i samego procesora. Wartość jest też druga: przetestujesz cały stos na swoim sprzęcie, zanim cokolwiek kupisz.

Ustal od razu, kto to utrzymuje i zapisz zakres odpowiedzialności, bo różnice między automatyzacją a wdrożeniem AI wychodzą dopiero przy utrzymaniu, nie przy instalacji. Wcześniej warto też policzyć, ile kosztuje wdrożenie u kogoś z zewnątrz - realne widełki kosztów pokazują, że na wdrożeniu, nie na serwerze, zarabia się najwięcej.

Jeśli chcesz najpierw zobaczyć, co daje lokalny model w praktyce, zacznij od jednego procesu, który zabiera najwięcej godzin tygodniowo. W n8n takie scenariusze opisuję osobno, ale zacznij od jednego - tych siedem procesów warto wdrożyć najpierw. Sposób podłączenia własnego asystenta do reszty narzędzi pokazuję w osobnym przewodniku: jak połączyć ChatGPT z n8n - z modelem na własnym serwerze wszystko działa tak samo, bo API jest zgodne.

Robisz coś podobnego u siebie?Napisz do mnie

Masz proces, który zjada tydzień pracy? Odzyskajmy ten tydzień.

Napisz do mnie