Powrót do strony głównej

Uruchomienie LLM bez GPU: przewodnik dla deweloperów | 2024

Praktyczny przewodnik po konfiguracji architektury klient-serwerowej do lokalnego uruchamiania modeli AI bez karty graficznej. Szczegółowa analiza instalacji Linux Mint, konfiguracji LMStudio i Open WebUI z naciskiem na bezpieczeństwo i optymalizację zasobów.

Praktyczny przewodnik po wdrażaniu LLM bez karty graficznej
Advertisement 728x90

# 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:

Google AdInline article slot
  • 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

Google AdInline article slot
  • 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:

Google AdInline article slot
  • 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

Advertisement 728x90

Czytaj dalej