Pytanie o nowe mini PC zawsze ma tę samą formę: „co mam na nim zainstalować, żeby mieć własny model AI?”. Odpowiedź składa się z trzech warstw, a każdą z nich można wymienić niezależnie od pozostałych.
Opisuję tu konfigurację, na której powstała moja seria pomiarów z września 2026, a nie przykład z dokumentacji. Sprzęt to AMD Ryzen AI 9 HX 470 (24 rdzenie), zintegrowana grafika Radeon 890M, 32 GB pamięci współdzielonej z procesorem i dysk NVMe 1 TB.
Warstwa pierwsza: system bez środowiska graficznego
Ubuntu Server, około 400 MB pamięci
To pierwszy krok odpowiedzi na pytanie, jak uruchomić lokalny model AI. Używam Ubuntu Server w instalacji minimalnej, bez pulpitu. Sam system zajmuje wtedy około 400 MB pamięci, a Windows startuje od 4–6 GB, zanim otworzysz przeglądarkę.
Na maszynie, w której każdy gigabajt jest potrzebny modelowi, to nie kwestia preferencji. Od tej różnicy zależy, czy dany model w ogóle się zmieści. Pulpit jest tu zresztą zbędny, bo z tą maszyną i tak łączysz się z innego komputera.
Warstwa druga: silnik inferencji
llama.cpp i offload warstw na iGPU
Silnikiem jest llama.cpp. Plik modelu pobierasz z Hugging Face. Silnik ładuje plik i przenosi jego warstwy na zintegrowaną grafikę (offload na iGPU). W części modeli z mojej serii na iGPU trafiają wszystkie warstwy, za co odpowiada parametr -ngl ustawiony na 99. Wtedy rdzenie procesora przestają uczestniczyć w generowaniu.
Jest tu rzecz, której nie zobaczysz w żadnym porównaniu modeli: ta sama rodzina modeli w dwóch różnych wydaniach pliku daje dwa różne wyniki. Model Nail 35B-A3B mam zmierzony dwukrotnie. Wydanie o rozmiarze 22,8 GB osiąga 24,17 tokena na sekundę, a wydanie 22,4 GB osiąga 17,86. To ten sam model w nazwie i prawie ten sam rozmiar pliku, a różnica przekracza sześć tokenów na sekundę:
24,17 − 17,86 = 6,31 tokena na sekundę
Wniosek jest praktyczny: to, który plik pobierasz i jak go uruchamiasz, trzeba zmierzyć u siebie, a nie przepisywać z cudzego wpisu na forum.
Pełną tabelę prędkości dla tej maszyny, model po modelu, znajdziesz tutaj: jaki model AI uruchomisz lokalnie na mini PC.
Metody przyspieszania generowania (MTP, DFlash i pozostałe) opisałem osobno: jak przyspieszyć lokalny model AI.
Warstwa trzecia: brama API
LiteLLM jako jeden adres zgodny z OpenAI
Tę rolę pełni LiteLLM. Silnik wystawia własne API, a brama udostępnia przed nim jeden adres zgodny z API OpenAI. Sens tego rozwiązania widać dopiero przy trzeciej aplikacji: wszystko, co ma pole „adres serwera OpenAI”, kierujesz w jedno miejsce, a wymiana modelu pod spodem nie wymaga zmiany konfiguracji żadnego klienta.
To warstwa, którą najłatwiej pominąć na starcie i najdroższa do dodania później, bo wtedy każdego klienta trzeba przestawiać osobno.
Ograniczenie, które trzeba zaplanować
Jeden model w pamięci naraz
Samo pytanie, jak uruchomić lokalny model AI, zwykle kończy się na tym jednym ograniczeniu. llama.cpp w trybie routera utrzymuje w pamięci jeden model. Gdy przychodzi zapytanie do innego, bieżący model jest zwalniany, a nowy ładowany, co przy zimnym starcie trwa 30–60 sekund. Dlatego pracę warto organizować wokół modeli, a nie wokół zadań: kilka godzin na modelu do kodu, potem przełączenie, zamiast zmiany modelu co kilka minut.
W zamian na 32 GB mieszczą się modele, które przy dwóch utrzymywanych jednocześnie wymagałyby 48 lub 64 GB pamięci.
Kolejność instalacji
Jak uruchomić lokalny model AI krok po kroku
- System minimalny, bez pulpitu. Ten krok wykonaj, zanim pobierzesz cokolwiek innego.
- Silnik i jeden mały model. Chodzi o sprawdzenie, że iGPU faktycznie przejmuje warstwy. W zupełności wystarczy plik rzędu 4–5,4 GB.
- Pomiar tokenów na sekundę na tym jednym modelu, zapisany. Bez punktu odniesienia nie ocenisz później, czy zmiana ustawienia pomogła.
- Brama API i pierwszy klient skierowany na nią, a nie na silnik.
- Dopiero potem kolejne modele. Pliki w mojej serii mają od około 4 GB do 22,8 GB, więc na dysku 1 TB mieszczą się ich dziesiątki.
Cała maszyna w tej konfiguracji kosztuje w Europie około 900 EUR, pobiera 3–8 W w stanie jałowym i około 130 W pod pełnym obciążeniem. Trzy warstwy, jedna maszyna, a od tego momentu wymieniasz już tylko modele.
Czego ta konfiguracja nie zapewni, nawet gdy zostanie wykonana poprawnie, opisałem osobno: czego lokalne AI nie zrobi.