Jak zainstalować Stable Diffusion na własnym komputerze

Chciałbyś spróbować generować obrazy na swoim komputerze za pomocą Stable Diffusion, ale nie wiesz, jak się za to zabrać? Przygotowaliśmy krótki poradnik jak przejść przez cały proces instalacji w zaledwie kilka minut

Cały swój wolny czas w ciągu ostatnich dwóch tygodni poświęciłem na jedno zadanie – pisanie zapytań do sieci neuronowej Stable Diffusion w celu wygenerowania jak najbardziej realistycznych obrazów. W tym przewodniku opisze szczegółowo, jak zainstalować Stable Diffusion na komputerze lub laptopie oraz kilka dodatkowych szczegółów, które mogą być przydatne, jeśli zdecydujesz się w nią zagłębić tak jak ja.

Sieć neuronowa Stable Diffusion różni się od DALL-E 2 lub Midjourney, tym, że jest open source. Oznacza to, że jeśli posiadamy odpowiedni sprzęt, możemy bezpłatnie zainstalować niezbędne oprogramowanie na komputerze i używać go do tworzenia obrazów, wpisując odpowiednie polecenia tekstowe.

Oprogramowanie Stable Diffusion nie posiada wygodnego interfejsu graficznego, poza tym dostępnym na oficjalnej stronie, od której polecam rozpocząć eksperymenty i sprawdzić, czy jest potrzebny dostęp do pełnej wersji. Po rejestracji będziecie mieli możliwość wygenerowania 200 darmowych obrazów z domyślnymi parametrami.

Wymagania systemowe

Zanim zainstalujemy Stable Diffusion na swoim komputerze, sprawdźmy wymagania systemowe. Te są wyjątkowo przystępne. Wszystko, czego potrzebujesz, to komputer z systemem Windows z 8 GB pamięci RAM (lub więcej), kartą graficzną z co najmniej 4 GB pamięci VRAM i 20 GB wolnego miejsca na dysku. Co prawda twórca oprogramowania zaleca korzystanie z kart graficznych od Nvidii, ale i na Radeonach od AMD również będziemy w stanie generować obrazy.

Stable Diffusion będzie działać również na komputerach z systemem Linux i urządzeniach Mac z procesorami M1 lub M2. Jeśli nie masz kompatybilnej karty graficznej, możesz wybrać użycie procesora w ustawieniach programu, ale pamiętaj, że w takim przypadku generowanie obrazu będzie znacznie wolniejsze.

Instalacja Stable Diffusion – karty Nvidia GeForce

Jak już wspominałem, domyślnie Stable Diffusion nie posiada graficznego interfejsu. Nie oznacza jednak, że ten nie istnieje. Jednym z najpopularniejszych rozwiązań jest WebUI Diffusion przygotowane przez Automatic1111. Całe repozytorium jest dostępne na platformie GIT Hub, gdzie również znajdziemy zawsze aktualną instrukcję instalacji. Tą na potrzeby artykułu postanowiłem dla Was przetłumaczyć.

W pierwszej kolejności potrzebujemy na komputerze, gdzie planujemy korzystać ze Stable Diffusion zainstalować dwa dodatkowe programy. Pierwszy z nich jest Python w wersji 3.10.6. Dzięki niemu nasz system będzie w stanie obsługiwać zapytania napisane w tym języku programowania. Zwróćcie uwagę na dokładnie podaną wersję, ponieważ inne na chwilę obecną nie działają poprawnie ze Stable Diffusion. Podczas Instalacji pamiętajcie też, by zaznaczyć w pierwszym oknie opcję “Add Python 3.10 to PATH”.

Drugim potrzebnym programem jest GIT, który to umożliwia łatwą instalację programów bezpośrednio np. z GIT Hub za pomocą komend w wierszu poleceń. Wystarczy pobrać instalator ze strony producenta i przejść cały proces instalacji z domyślnymi ustawieniami.

Następnie tworzymy folder na dysku gdzie chcemy umieścić Stable Diffusion. Musimy pamiętać o maksymalnej długości adresu pliku w systemie Windows. Dlatego proponuję krótką nazwę np “SD”. Po otworzeniu folderu w pasku adresu wpisujemy CMD.

Automatycznie otworzy nam się okno wiersza poleceń ze wskazanej ścieżki. By dokonać instalacji, wklej następującą komendę:

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui 

Po zakończonym procesie zamykamy okno wiersza poleceń i przechodzimy do naszego folderu. Zauważymy, że powstało w nim dużo subfolderów oraz plików. Otwieramy “models” i przechodzimy do “Stable-diffusion”. Znajdziemy tutaj jedynie plik tekstowy “Put Stable Diffusion checkpoints here”.  Jest to tak zwany model językowy, czyli plik wygenerowany na podstawie przebadanych prac innych autorów. To on odpowiada za interpretacje tekstu, czyli wygląd generowanych przez nas grafik. Na początek polecam udostępniony na zasadach licencji CreativeML przez twórców Stable Diffusion bazowy plik, który znajdziemy na stronie huggingface.co. W większości przypadków wersja 4 GB jest wystarczająca no i nie ma tak dużych wymagań co do ilości pamięci VRAM naszej karty graficznej. Przenosimy pobrany plik to wcześniej otworzonego folderu.

Chcąc uruchom Stable Diffusion, przechodzimy do folderu głównego. Znajdujemy plik webui-user.bat i go dwukrotnie klikamy. Przy pierwszym uruchomieniu skrypt automatycznie pobierze i zainstaluje brakujące komponenty. Niestety pasek całkowitego postępu nie jest wyświetlany, więc podczas ładowania komponentów masowych (np. Torch i CUDA) może się wydawać, że proces się zawiesił. Prędkość instalacji w tym momencie jest zależna wyłącznie od naszego łącza internetowego. W moim przypadku nie zajęło to nawet 5 min.

Po zakończeniu instalacji zobaczysz komunikat:

Running on local URL:  http://127.0.0.1:7860

Wystarczy teraz przejść pod podany adres w dowolnej przeglądarce i zacznij korzystać. Pamietaj, by nie zamykać okna konsoli – spowoduje to błąd interfejsu Stable Diffusion WebUI).

Instalacja Stable Diffusion – karty AMD

Domyślnie Stable Diffusion korzysta z programowego interfejsu API bazującego obliczeniach na rdzeniach CUDA. Jak łatwo się domyślić opcja ta nie jest dostępna na kartach od AMD. Jednak posiadacze Radeonów również mogą zacząć przygodę z generowaniem obrazów w Stable Diffusion. W tym celu jednak musimy skorzystać z wersji oprogramowania obsługującego instrukcje Microsofl DirectML. Tak prawdę jedyną, ale za to najbardziej istotną różnicą jest zmiana używanego repozytorium WebUI. W przypadku korzystamy ze zmodyfikowanej wersji  Automatic1111 przygotowanej przez lshqqytiger. Prawidłowa komenda zatem do instalacji i kompilacji modułów pod karty AMD wygląda następująco:

git clone Https://github.com/lshqqytiger/stable-diffusion-webui-directml && cd stable-diffusion-webui-directml && git submodule init && git submodule update

Przygotowana pobrana i skompilowana instalacja Stable Diffusion działa tylko na kartach jednego producenta. Kiedy zatem wymienicie kartę graficzną, musimy przeprowadzić cały proces od nowa. Dodatkowo zwrocie uwagę czy w Windowsie, przypadkiem nie macie zainstalowanych sterowników od karty graficznej innego producenta. Polecam wyczyścić system programem DDU.

Optymalizacja pliku wykonawczego

Plik wykonawczy webui-user.bat możemy dodatkowo zoptymalizować. Proces ten polega na dodaniu specjalnych komend jako parametrów do uruchamiania skryptu Stable Diffusion. By tego dokonać, wystarczy przeciągać plik webui-user.bat na otwarte okno notatnika.

Pojawi się przed nami zatem tako okno:

Dodanie w pierwszej linijce “git pull” spowoduje automatyczną aktualizację Stable Diffusion, przy każdym włączeniu programu.

Dodatkowo w linijce “set COMMANDLINE_ARGS=” możemy dodać następujące polecenia.

  • xformers znacząco skraca czas generowania obrazów na kartach NVIDII, ale nie działa na układach od AMD. Obniża też wymagania dotyczące VRAM
  • lowvram – dla kart graficznych z 4 GB pamięci VRAM, jednak znacząco wpływa na wydajność procesu generowania obrazów.
  • medvram ogranicza zużycie pamięci VRAM na kartach graficznych, przydane dla modeli z 8 -10 GB VRAM.
  • precision full –no-half -komenda konieczna na niektórych kartach AMD, zwłaszcza gdy program często się zawiesza lub wyłącza, bądź podczas ładowania występuje błąd.
  • autolaunch – automatycznie otwiera w przeglądarce interfejs Web UI

Możesz teraz już zacząć generować swoje cyfrowe dzieła sztuki. Jednak aby uzyskać najlepsze wyniki, polecam przestudiowanie pracy innych twórców i używanych przez nich zapytań.

Stable Diffusion to świetna alternatywa dla uznanego Midjourney. W przeciwieństwie do tego drugiego jest całkowicie darmowy i może działać na twoim komputerze bez żadnych ograniczeń. To prawda, że ​​​​proces konfigurowania programu jest nieco bardziej skomplikowany, a wyniki jego pracy w dużym stopniu zależą od naszych umiejętności, jednak moim zdaniem warto sprawdzić program samemu, co zaprezentowany poradnik powinien znacząco ułatwić.