Lokalne generowanie obrazów AI — Flux LoRA i ComfyUI na własnym GPU

Kacper Sieradziński
Kacper19 czerwca 2026 · 8 min czytania
Streszczenie
  • Film: Homelab AI — lokalne generowanie obrazów krok po kroku
  • Flux 2 vs SDXL — i co to jest LoRA
  • Sprzęt — dlaczego VRAM i przepustowość są ważniejsze niż ...
  • Dataset — 3 zasady dobrego zestawu treningowego
Lokalne generowanie obrazów AI — Flux LoRA i ComfyUI na własnym GPU

Lokalne generowanie obrazów AI — Flux LoRA i ComfyUI na własnym GPU

Usługi generowania obrazów w chmurze mają dwie wady, które rzadko są wymieniane wprost. Pierwsza to koszt iteracji — płacisz za każde wygenerowane zdjęcie albo subskrypcję, niezależnie od tego, czy wynik jest dobry. Druga, poważniejsza: Twoje prompty i zdjęcia treningowe trafiają na zewnętrzne serwery. Dla agencji AI, która pracuje z wizerunkiem klientów i materiałami marki, to problem fundamentalny.

Lokalne studio AI rozwiązuje obydwa: generujesz bez limitu, a dane nie opuszczają dysku. Ten artykuł przeprowadzi Cię przez cały proces — od doboru sprzętu, przez trening modelu LoRA na własnych zdjęciach, po generowanie w ComfyUI.

Automatyzacje n8n / Make · 30 min

Co da się zautomatyzować u Ciebie w n8n?

Wskażesz proces robiony ręcznie, my ocenimy wykonalność i ROI. Bezpłatna rozmowa diagnostyczna.

Kacper Sieradziński · founder Dokodu
4,9 · zwykle odpowiada w 2h

Wybierz dogodny termin bezpłatnej rozmowy (30 min).

Umów bezpłatną rozmowę

Film: Homelab AI — lokalne generowanie obrazów krok po kroku

Poniżej pełny tutorial z konfiguracją każdego kroku.

Flux 2 vs SDXL — i co to jest LoRA

Jeszcze w 2024 roku standardem był SDXL. W 2025 Black Forest Labs wypuścił Flux 2 — hybrydowy transformer, który generuje obrazy wyraźnie ostrzejsze, bardziej spójne anatomicznie i lepiej interpretujące złożone prompty. Jakościowa przepaść między SDXL a Flux 2 jest na tyle duża, że nie ma sensu zaczynać dziś od starszego modelu.

Model Flux 2 waży kilkanaście gigabajtów i zawiera wiedzę o milionach twarzy, stylów, obiektów, oświetleń. To encyklopedia. Problem: nie wie, kim jest konkretna osoba ani jak wygląda konkretna marka wizualna.

Tu wchodzi LoRA (Low Rank Adaptation). Zamiast douczać cały model — co wymagałoby dziesiątek godzin i setek gigabajtów VRAM — LoRA uczy się tylko "różnicy": jak wygląda ta konkretna twarz, ten konkretny styl. Myśl o tym jak o cienkiej nakładce na encyklopedię. Model bazowy pozostaje nienaruszony w VRAM, rdzenie Tensor skupiają obliczenia wyłącznie na tej małej warstwie. Efekt: trening trwa kilka godzin zamiast kilku dni, a wynikowy plik LoRA ma 50–300 MB zamiast kilkudziesięciu GB.

Sprzęt — dlaczego VRAM i przepustowość są ważniejsze niż rdzenie

Przykład w filmie: RTX 5080 z architekturą Blackwell. Kluczowe dane tej karty to przepustowość pamięci GDDR7 na poziomie ~1 TB/s oraz rdzenie Tensor obsługujące FP4/FP8/FP16/BF16. Przy pracy z modelami językowymi i dyfuzyjnymi wąskim gardłem prawie zawsze jest transfer danych między VRAM a rdzeniami obliczeniowymi — nie sama moc GPU.

Minimalne wymagania do treningu Flux LoRA:

  • 16 GB VRAM — przy kwantyzacji float8 i batch size 1 to absolutne minimum
  • 24 GB VRAM — komfortowy trening bez kompromisów
  • SSD NVMe — dataset i checkpointy co 250 kroków; wolny dysk to wąskie gardło

RTX 4090 i 5080 działają doskonale. Karty AMD wymagają dodatkowej konfiguracji ROCm i nie zawsze są kompatybilne z bibliotekami PyTorch używanymi przez Ostris AI Toolkit.

Dataset — 3 zasady dobrego zestawu treningowego

Jakość datasetu determinuje jakość LoRA. Dwadzieścia dobrych zdjęć bije pięćdziesiąt złych.

1. Rozdzielczość i ostrość

Minimum to 1024x1024 pikseli. Rozmyte, skompresowane lub pikselowate zdjęcia nie nauczą modelu niczego użytecznego — wytrenują go w reprodukowaniu artefaktów. Każde zdjęcie powinno być ostre i dobrze naświetlone.

Co robić źle: skanowane odbitki, screenshoty z wideo w niskiej rozdzielczości, zdjęcia z silnym przeeksponowaniem lub niedoświetleniem.

Co robić dobrze: zdjęcia z aparatu lub dobrego smartfona, wykadrowane tak, żeby twarz/obiekt wypełniał znaczną część kadru.

2. Różnorodność

Model musi nauczyć się odróżniać twarz od tła, oświetlenia i ubrań. Jeśli wszystkie zdjęcia pokazują tę samą osobę w tej samej koszuli przy tym samym oknie — model nauczy się korelacji z koszulą i oknem, nie z twarzą.

Dobre zdjęcia treningowe: różne kąty (frontal, 3/4, profil), różne oświetlenie (naturalne, studyjne, sztuczne), różne tła, różne ubrania. Kilka zdjęć z okularami i bez. Kilka zbliżeń i kilka ujęć do ramion.

3. Opisy (captions)

Każde zdjęcie musi mieć plik tekstowy z opisem. W opisie musi pojawić się trigger word — unikalne słowo, które model skojarzy z douczaną twarzą lub stylem. Przykład: jeśli trigger word to Kacper, opis może brzmieć:

photo of Kacper, man, outdoor, casual clothing, natural light, looking at camera

Bez captions model nie wie, które cechy ze zdjęcia ma zapamiętać, a które zignorować.

Trening w Ostris AI Toolkit

Ostris AI Toolkit to narzędzie open-source stworzone specjalnie pod trening LoRA dla modeli Flux. Najwygodniejszy sposób uruchomienia to Docker — wszystkie zależności PyTorch, xformers i CUDA są już dopasowane do architektury Blackwell.

Bash
1 2 3 4 docker run --gpus all \ -v D:/NvidiaFilm1/ProgAndToolKitOutput:/workspace/output \ -p 7860:7860 \ ostris/ai-toolkit:latest

Po uruchomieniu interfejs webowy jest dostępny pod localhost:7860. Dodajesz zdjęcia datasetu (już opisane trigger wordem), tworzysz nowy job i konfigurujesz parametry.

Tabela parametrów treningu

ParametrWartośćDlaczego
Training nameKacper_Flux_LoRA_v1Identyfikator w katalogu output
Trigger wordKacperMusi być identyczny jak w captions
Model architectureflux2-kline-base-4BFlux 2 — nowszy i lepszy niż SDXL
Kwantyzacjafloat8Najlepsza stabilność na serii 50
TargetloraTrening warstwy LoRA, nie full fine-tuning
Linear rank32Złoty środek — 16 też ok, 128 to ryzyko overfittingu
Save formatBF16Optymalna stabilność dla GPU Nvidia serii 50
Save every250 krokówMożliwość podglądu postępu i wyboru najlepszego checkpointu
Max step saves4Nie zapycha dysku starymi checkpointami
Batch size1Wyższy kończy się OOM; paradoksalnie 1 jest szybszy na tej architekturze
Steps3000~150 kroków na zdjęcie przy 20 zdjęciach
Cache text embeddingsTAKOpisy przetworzone raz przy starcie — ogromne przyspieszenie treningu
Dataset resolution1024x1024Odznacz inne opcje — trenuj w docelowej rozdzielczości
Sample prompts4 prompty co 250 krokówWizualny podgląd postępu treningu

Trening na RTX 5080 przy powyższych ustawieniach zajmuje około 2 godzin. W trakcie co 250 kroków generowane są próbki — możesz obserwować, jak model stopniowo uczy się twarzy.

Loss graph — jak czytać postęp treningu

Loss (strata) to liczba mówiąca, jak bardzo przewidywania modelu różnią się od danych treningowych. Na początku treningu jest wysoka — model nie zna jeszcze tej twarzy. Z każdym krokiem maleje.

Kluczowa obserwacja: loss powinien maleć, ale nigdy nie dojść do zera.

Jeśli loss doszedłby do zera, model "zapamiętałby" zdjęcia dosłownie — pixel po pixelu — zamiast uogólnić wzorzec twarzy. To overfitting. Wygenerowany obraz wyglądałby jak kolaż oryginalnych zdjęć, a nie nowe, unikalne ujęcie.

Dobry loss przy treningu LoRA oscyluje gdzieś między 0.05 a 0.15 pod koniec treningu. Jeśli spada poniżej — zmniejsz liczbę kroków lub użyj niższego linear rank. Jeśli nie schodzi poniżej 0.3 — sprawdź jakość datasetu i captions.

Dlatego Ostris zapisuje checkpointy co 250 kroków: możesz wybrać ten, który daje najlepsze wyniki wizualnie, nawet jeśli nie jest ostatnim.

Generowanie w ComfyUI

ComfyUI to graficzny interfejs do budowania pipeline'ów dyfuzji. Pobierz wersję standalone z GitHuba — nie instalatora, który potrafi mieć konflikty zależności z bibliotekami Blackwell.

Bazowy workflow do generowania z LoRA składa się z węzłów:

  1. Load Diffusion Model — ten sam model Flux co przy treningu
  2. Load LoRA — plik .safetensors wygenerowany przez Ostris
  3. Load CLIP — enkoder tekstu
  4. Text Prompt — pozytywny i negatywny (Flux 2 nie wymaga negatywnego, ale pole istnieje)
  5. Flux Guidance — jak mocno model ma podążać za promptem
  6. KSampler — właściwy proces dyfuzji
  7. VAE Decode — dekodowanie latent space do obrazu
  8. Save Image — zapis na dysk

KSampler — kluczowe parametry

ParametrRekomendacjaUwaga
seedeksperymentuj, zapisuj dobreTen sam seed + ten sam prompt = ten sam obraz
steps30–40Więcej nie zawsze lepiej
CFG3.5–7.0Wyższy = mocniejsze trzymanie się promptu, ale mniej kreatywności
samplereuler / dpmpp_2mEksperymentuj
schedulerbetaStabilny dla Flux 2
denoise1.0Pełna dyfuzja od szumu

Flux 2 działa lepiej z krótkimi, precyzyjnymi promptami niż z długimi opisami. Zamiast:

a highly detailed professional photo of Kacper, man in his 30s, with brown hair and blue eyes, wearing a casual dark blue shirt, standing in a modern office with large windows, sharp focus, 8k resolution, photorealistic

Lepiej:

photo of Kacper, professional headshot, modern office, sharp focus

Generacja jednego obrazu na RTX 5080 zajmuje kilka sekund. Możesz iterować dziesiątki razy, zanim trafisz na idealny seed i ustawienia — bez żadnych kosztów.

Zastosowania biznesowe

Trening twarzy to tylko jeden przypadek użycia. LoRA sprawdza się wszędzie tam, gdzie potrzebna jest spójność wizualna:

Styl marki. Wytrenuj LoRA na zdjęciach z sesji brandingowej — ComfyUI generuje nowe materiały graficzne, które wyglądają jak część tej samej kampanii. Bez Photoshopa, bez designera, bez czekania na kolejną sesję.

Produkt. Kilkanaście zdjęć produktu w różnych kątach jako dataset — LoRA uczy się jego kształtu, kolorów, materiałów. Możesz generować produkt w dowolnym otoczeniu, z różnym oświetleniem, w rękach różnych modeli.

Kampanie wizerunkowe. Klient zatwierdził wygląd modela, ale potrzeba 20 wariantów do A/B testów. Zamiast wynajmować modela 20 razy — generujesz lokalnie, prywatność zachowana, koszty minimalne.

Consistent characters. W materiałach edukacyjnych, prezentacjach, infografikach — ta sama postać, różne sytuacje, spójna identyfikacja wizualna.

We wszystkich tych przypadkach kluczowe jest to, że dane treningowe i wygenerowane obrazy nie opuszczają lokalnego dysku. Dla agencji pracującej z wizerunkiem i materiałami klientów to nie jest szczegół — to wymóg.

Dalej w tym klastrze

Lokalne generowanie obrazów to jeden element większego stacku AI na własnej infrastrukturze:

Jeśli chcesz wdrożyć podobny stack w swojej firmie — lokalny homelab AI, pipeline generowania grafik lub automatyzacje oparte na modelu wytrenowanym na własnych danych — umów się na rozmowę. Dobierzemy rozwiązanie do budżetu, skali i wymagań dotyczących prywatności.

Tagi

#AI#automatyzacja#n8n