Ich wollte schon länger einmal bei mir daheim eine lauffähige Stable Diffusion Installation aufsetzen. Das ganze bin ich jetzt über Ostern angegangen mit zwei Zielen die ich verfolgt habe. Einmal möchte ich lernen wie ich gute Prompts schreibe damit die genierten Bilder auch in meinen Augen gut aussehen denn ob Kunst schön ist oder nicht liegt im Auge des Betrachters. Das zweite Ziel das ich verfolge ist auch einmal selber ein Netz weiter zu trainieren mit meinen spezifischen Anforderungen. Denn ich würde gerne für ein Minensuchprojekt Bilder von PFM-1 Antipersonen-Minen generieren die als synthetische Daten für die Verbesserung der Erkennungsrate von neuronalen Netzen genutzt werden können. So könnten da bei Stable Diffusion die Geometrie nicht unbedingt dem Original entspricht zumindest False Positive Tests möglich werden. Bei Stable Diffusion ist genau das der spannende Teil für mich, ob ich es schaffe einem bereits trainierten Modell noch weitere Fähigkeiten beibringen zu können. Daher geht es jetzt gleich einmal los mit der Installation und einrichten einer entsprechenden Umgebung auf einem frisch eingerichteten Ubuntu 22.04 LTS System.

early test picture

early test picture

Installations Anleitung – Stable Diffusion web UI

In diesem Abschnitt geht es um die Installation der Stable Diffusion web UI die dank dem Respository von AUTOMATIC1111 ein Web-Interface auf Basis der Gradio library auf dem Zielsystem einrichtet. Das klappt um es schon einmal vorweg zu nehmen wirklich ganz einfach und ohne Probleme.

Hinweis Hardware: So wie ich das Projekt verstanden habe wird zwingend eine NVIDIA GPU benötigt mit mindestens 12GB Ram. Die CPU und der Systemspeicher sollten nicht zu knapp bemessen sein aber werden für dieses Projekt nicht sonderlich in Anspruch genommen. Die Beschreibung von meinem System das ich für dieses Projekt verwende findet ihr hier: Deep Learning PC.

Hinweis MIFCOM Deep Learning PC: Wer einen fertig aufgebauten PC kaufen möchte ohne selber zu schrauben wird sicher bei der Münchner Firma MIFCOM fündig die sehr hochwertige und leistungsstarke Rechner für das weite Feld der künstlichen Intelligenz auch nach individuellen Anforderungen fertigt. Aus meinem Berufsleben heraus habe ich mit der Firma MIFCOM sehr gute Erfahrungen gemacht und schätze die hohe Qualität im Aufbau der Rechner sowie den sehr guten Service.

Zeitaufwand Installation (30 bis 40 Minuten)

Ich möchte noch kurz eine Abschätzung des Zeitaufwandes geben. Je nach Internetanbindung benötigt die Installation von AUTOMATIC1111 gute 30 bis 40 Minuten und es werden 9GB an Plattenplatz belegt. Zusätzlich zu den 9 GB Speicherplatz kommt noch der Platzbedarf hinzu für die verschiedenen trainierten Modelle die noch benötigt werden um Bilder generieren zu können. So waren bei mir nach ein paar Abenden gute 50GB Platz nur für Modelle belegt die auch ausprobiert habe. Während die Installation läuft muss man nicht vor dem Rechner sitzen. Im Prinzip läuft die Installation voll automatisch ab ohne dass der Anwender noch etwas dazu beitragen muss.

Vorbereitung virtuelle Umgebung, Treiber und Co.

Wie ich eingangs geschrieben habe wurde von mir für diesen Bericht ein frisch aufgesetztes Ubuntu 22.04 System verwendet. Es macht bei solchen Projekten immer Sinn diese in einer virtuellen Umgebung zu installieren. Das ist zwar Optional aber ich empfehle es so vorzugehen. Ich musste auch alle Treiber von NVIDIA installieren sowie CUDA um Stable Diffusion mit GPU Unterstützung zum Laufen zu bekommen. Daher jetzt hier meine Beschreibung welche Vorbereitungen ich getroffen habe.

Anaconda einrichten

Da ich alles in einer virtuellen Anaconda Umgebung installiere um hier auch immer wieder diese Umgebungen einfach löschen also zurücksetzen zu können ohne mein Ubuntu System selber zu verändern hier die Befehle um eine virtuelle Umgebung mit dem Namen stable-diffusion aufzusetzen. Zunächst einmal schaut ihr welche Anaconda Version für euer Linux System die richtige und vor allem aktuelle ist. Dazu öffnet ihr hier den folgenden Link.

URL: https://repo.anaconda.com/archive/

Im April 2023 war es bei mir die Version des Installation Skriptes Anaconda3-2023.03-Linux-x86_64.sh welches die nachfolgende URL hat. Die aktuelle für euch passende URL müsst ihr jetzt einmal in die Zwischenablage kopieren. Diese brauchen wir dann später noch für die Installation.

URL: https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh

Jetzt einmal das System mit dem folgenden Befehl auf den aktuellen Stand bringen.

Befehl: sudo apt-get update

Dann bitte curl installieren da wir curl brauchen um das Installation Skript herunter zu laden und auszuführen.

Befehl: sudo apt install curl -y

Ich habe mir dann einen Arbeitsordner mit den beiden folgenden Befehlen angelegt und bin auch direkt in diesen im Terminal Fenster gewechselt.

Befehl: mkdir anaconda

Befehl: cd anaconda

Jetzt im Arbeitsordner anaconda den folgenden Befehl ausführen. Hier müsst ihr die URL zu dem Installation Skript bitte einfügen. Diese hattet ihr euch zuvor in die Zwischenablage kopiert.

Befehl: curl --output anaconda.sh https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh

Jetzt könnt ihr noch die Checksumme von dem Script erzeugen und mit der Angabe auf der Anaconda Archivseite vergleichen. So stellt ihr einigermaßen sicher das richtige Script auszuführen für die Installation.

Befehl: sha256sum anaconda.sh

Die Installation startet ihr jetzt mit dem folgenden Befehl. Im Anschluss ist Anaconda dann auf eurem System installiert.

Befehl: bash anaconda.sh

Ihr müsst ein paarmal YES angeben und zum Schluss würde ich einmal No vorschlagen bei der Abfrage ob immer die Anaconda Umgebung starten soll. Habt ihr alle Fragen mit YES beantwortet könnt ihr mit dem nachfolgenden optionalen Befehl dann das automatische Starten der Anaconda Umgebung wieder deaktivieren.

Befehl optional: conda config --set auto_activate_base false

Viele der Befehle um Anaconda bedienen zu können sind in dem folgenden PDF zusammen gefasst. Das hilft zu Beginn sicher sehr gut weiter Anaconda als Software bedienen zu können.

URL: conda-cheatsheet.pdf

Zunächst muss einmal conda aktiviert werden. Möchte man dazu den Rechner nicht neustarten dann bitte den folgenden Befehl ausführen.

Befehl: source ~/anaconda3/bin/activate

Jetzt legt ihr mit dem folgenden Befehl eine virtuelle Umgebung mit dem Namen “stable-diffusion” an. In dieser werden wir jetzt alles installieren.

Befehl: conda create --name stable-diffusion

Diese Umgebung startet ihr wiederum mit dem folgenden Befehl.

Befehl: conda activate stable-diffusion

Möchtet ihr heraus gehen aus der virtuellen Umgebung dann nutzt diesen Befehl um Anaconda zu beenden.

Befehl: conda deactivate

Jetzt habt ihr die virtuelle Umgebung am Laufen und könnt in dieser Treiber installieren und machen was ihr wollt ohne die eigentliche Ubuntu Umgebung mit eurem Handeln zu beeinflussen.

CUDA und Treiber von NVIDIA

Ich habe die Installation auf einem komplett frisch aufgesetzten Ubuntu 22.04 vorgenommen. Daher habe ich auch die notwendigen NVIDIA Treiber installieren müssen. Ich habe über den Softwaremanager von Ubuntu die NVIDIA Treiber für meine Grafikkarte installiert. Das klappt super und ist ganz einfach. Im Anschluss habe ich in der virtuellen Anaconda Umgebung CUDA 11.7 installiert. Wenn ihr das gleiche Vorgehen wählt dann folgt am besten der NVIDIA Anleitung hier um die 11.7 CUDA Unterstützung unter Ubuntu 22.04 zu installieren:

Hinweis: Ende April hatte ich noch Probleme AUTOMATIC1111 mit CUDA 12.1.1 zum Laufen zu bekommen. Daher empfehle ich die etwas ältere CUDA Version 11.7 zu verwenden. Mit dieser gibt es dann beim Finetuning mit Dreambooth auch weniger Probleme. Sobald alles ohne Probleme mit der neuen 12.X Version läuft aktualisiere ich meine Anleitung hier (Stand: 2023.05.01)

Hier der Link auf das CUDA Archive bei NVIDIA um auch lätere Versionen installieren zu können.

URL: Deb Network Archive

Nachfolgend der Link auf die CUDA 11.7 Version die bei mir gut funktioniert hat und die ich auch für meine Anleitung hier verwendet habe.

URL: CUDA Deb Netwerok 11.7

Jetzt ist alles soweit eingerichtet und die Installation von AUTOMATIC1111 kann starten. Mehr dazu dann im zweiten Teil der Installationsanleitung.

 

Hier geht es zum Teil 2/2





Artikelübersicht - Stable Diffusion:

Stable Diffusion - AUTOMATIC1111 Ubuntu Installation Teil 1/2
Stable Diffusion - AUTOMATIC1111 Ubuntu Installation Teil 2/2
Stable Diffusion - Bilder lokal generieren mit Prompt Beispielen
Stable Diffusion - AUTOMATIC1111 Experten Konfiguration
Stable Diffusion - Dreambooth Training Finetuning einrichten Teil 1/2
Stable Diffusion - Dreambooth Training Finetuning ausführen Teil 2/2