# Uruchamianie lokalnych modeli AI bez GPU: krok po kroku konfiguracja architektury klient-serwer
Lokalne wdrażanie modeli językowych (LLM) bez karty graficznej — to realne zadanie dla programistów ceniących prywatność i kontrolę nad danymi. W tym artykule omówimy stworzenie systemu klient-serwer, w którym obliczenia odbywają się na drugim komputerze z Linuksem, a interfejs jest dostępny z głównego terminala Windows. Nacisk położony jest na bezpieczeństwo, minimalizację zużycia zasobów i wykorzystanie istniejącego sprzętu.
Przygotowanie „węzła obliczeniowego”: wybór systemu operacyjnego i konfiguracja dysku
Kluczowy etap — konfiguracja oddzielnego komputera bez GPU. Do tego celu idealnie nadaje się Linux Mint (oparty na Debianie) dzięki:
- Minimalistycznemu interfejsowi Xfce, podobnemu do Windows
- Niskim wymaganiom sprzętowym
- Obsłudze nowoczesnych narzędzi do pracy z AI
Ważne niuanse instalacji:
- Użyj Ventoy do stworzenia bootowalnej pendrive'a (sformatuj na dwie partycje)
- Na etapie partycjonowania dysków:
* Zidentyfikuj dyski według schematu /sda, /sdb
* Unikaj partycji Windows (100 MB rozruchowa + 500 MB odzyskiwania)
* Wybierz system plików ext4
- Skonfiguruj bootloader dla dual-boot: w BIOSie dodaj opóźnienie 5-10 sekund
Po instalacji koniecznie:
- Skonfiguruj przełączanie układu klawiatury (lewy Shift + CapsLock w Xfce)
- Dodaj wskaźnik układu na panel
- Zaktualizuj system przez terminal:
sudo apt update && sudo apt upgrade -y
Wdrażanie LMStudio: praca z modelami GGUF
Do uruchamiania LLM bez GPU wybrano LMStudio (wersja AppImage) jako najbardziej elastyczne rozwiązanie:
- Pobierz plik AppImage ze strony oficjalnej
- Nadaj prawa do wykonania:
chmod +x LMStudio-*.AppImage - Uruchom przez terminal:
./LMStudio-*.AppImage
Krytyczne ustawienia modelu:
- Ustaw GPU-layers = 0
- Wyłącz buforowanie w GPU
- Wybierz model z uwzględnieniem pojemności RAM (zalecane wersje 7B-parametrowe)
Sprawdź działanie w zakładce Developer:
- Monitoruj status przetwarzania promptu
- Użyj wbudowanego czatu do testów
- Skonfiguruj lokalny serwer z opcją „Serve on Local Network"
Konfiguracja interakcji klient-serwer
Aby uzyskać dostęp do modelu z głównego komputera Windows, will be required:
Część serwerowa (Linux)
- Aktywuj serwer API w LMStudio na porcie 1234 (domyślnie)
- Skonfiguruj zaporę:
sudo ufw allow 1234/tcp - Uzyskaj lokalny adres IP:
hostname -I
Część kliencka (Windows)
- Zainstaluj Open WebUI przez Docker:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
- W interfejsie Open WebUI podaj:
- Base URL: http://[IP_maszyny_Linux]:1234/v1
- API Key: zostaw puste
Co ważne: kluczowe zasady wdrożenia
- Izolacja danych: Model działa w zamkniętej sieci bez dostępu do głównych danych
- Optymalizacja zasobów: Użycie drugiego komputera zmniejsza obciążenie stacji roboczej
- Elastyczność konfiguracji: Możliwość szybkiego przełączania modeli przez LMStudio
- Bezpieczeństwo połączenia: Wszystkie zapytania pozostają w sieci lokalnej, szyfrowanie TLS w razie potrzeby
Optymalizacja wydajności na CPU
Aby przyspieszyć pracę LLM bez GPU:
- Konfiguracja llama.cpp:
n_ctx = 4096
n_threads = [liczba_rdzeni_CPU]
n_batch = 512
- Wybór zoptymalizowanych modeli:
- Mistral-7B-Instruct-v0.2-GGUF (Q4_K_M)
- Phi-3-mini-4k-instruct-GGUF (Q5_K_S)
- Gemma-2B-it-GGUF (Q4_0)
- Monitorowanie obciążenia:
- Użyj htop do śledzenia obciążenia CPU
- Kontroluj zużycie pamięci przez
free -h
Rozwiązywanie typowych problemów
Problem: Wolne generowanie odpowiedzi
Rozwiązanie:
- Zmniejsz n_ctx w konfiguracji
- Wybierz model z kwantyzacją Q4 zamiast Q5
- Zwiększ n_batch do 1024
Problem: Błąd połączenia klienta z serwerem
Sprawdź:
- Stan zapory na maszynie Linux
- Poprawność adresu IP w ustawieniach Open WebUI
- Działanie serwera przez curl:
curl http://localhost:1234/v1/models
Problem: Przełączanie układu klawiatury nie działa
Poprawka:
- Otwórz „Ustawienia systemu” → „Klawiatura"
- W zakładce „Układy” ustaw kombinację Shift+CapsLock
- Dodaj wskaźnik do panelu zadań przez PPM na panelu
Podsumowanie: praktyczna wartość rozwiązania
Opisana konfiguracja pozwala:
- Przetwarzać zadania tekstowe (tłumaczenia, podsumowania) bez przesyłania danych do chmury
- Wykorzystywać stare sprzęt efektywnie
- Utrzymywać elastyczne środowisko do eksperymentów z różnymi modelami
Główny wniosek: nawet bez GPU można stworzyć działającą infrastrukturę LLM, zwracając uwagę na poprawną konfigurację otoczenia i wybór zoptymalizowanych modeli. System łatwo skaluje — po dodaniu karty graficznej wystarczy zmienić parametry GPU-layers, bez przebudowy architektury.
— Editorial Team
Brak komentarzy.