Die Künstliche Intelligenz Stable Diffusion ist eine Open-Source-Software, die von Stabilty AI, RunwayML, Eleu-therAI, LAION und einer Forschungsgruppe der LMU München entwickelt wurde. Sie kann zur Erstellung, Bearbeitung oder zum Rendern von Bildern genutzt werden, jedoch liegt die Verantwortung für die erstellten Bilder beim Betreiber der Anwendung. Somit muss persönlich dafür sorge getragen werden, dass mit der Anwendung keine verwerflichen Inhalte erstellt werden.
Weitere Informationen zu Ihren Pflichten und der Lizenz, finden Sie unter dem folgenden Link:
https://github.com/CompVis/stable-diffusion/blob/main/LICENSE
Entgegen proprietärer Konkurrenten wie Dall-E-2, ist Stable Diffusion kostenlos und in einer öffentlich zugänglichen Version erhältlich. Diese ist frei verfügbar und beispielsweise bei GitHub oder DockerHub zu finden.
Wie die Software implementiert und verwendet wird, soll hier vorgestellt werden.
Anforderungen von Stable Diffusion:
- GPU mit 8GB GDDR Speicher
- Native Ubuntu 22.04LTS Installation
- Neueste Version der Docker-Engine
- Neuester Nvidia Treiber
- Weitere Pakete wie z.B. : wget, git, python, etc
Installationsablauf von Stable Diffusion:
Installation von Docker:
Wir installieren die Docker-Engine über einen Einzeiler:
curl -fsSL https://get.docker.com | sudo sh
Installation von CUDA:
Als erstes updaten wir die systemeigenen Paketquellen und installieren grundlegende Pakete:
sudo apt update && apt-get update && apt upgrade -y && apt install -y vim ca-certificates curl git wget gnupg language-pack-de lsb-release software-properties-common libgoogle-perftools4 libgoogle-perftools-dev libtcmalloc-minimal4
Als nächstes installieren wir die neuesten Grafikkartentreiber:
sudo apt install -y nvidia-driver-530
Danach starten wir das System neu:
sudo init 6
Nach dem Neustart installieren wir anwendungsspezifische Python Pakete:
sudo apt-get install -y python3 python3-venv python-is-python3
Der alte Nvidia Key wird entfernt:
sudo apt-key del 7fa2af80
Der neue Nvidia Key hinzugefügt, Paketquellen ergänzt und aktualisiert:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
Jetzt installieren wir die CUDA Pakete:
apt-get install -y libnvidia-container1 nvidia-container-toolkit libnvidia-container-tools nvidia-docker2
Danach müssen wir das System erneut neu starten:
sudo init 6
Nach dem Neustart überprüfen wir mit einem einfachen CUDA-Container, ob die Verfügbarkeit der GPU-Ressourcen in unserer Containerumgebung vorhanden sind:
docker run --gpus all --rm nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi
Installation von Stable Diffusion:
Wir können die Anwendung Stable Diffusion auf verschiedenen Wegen implementieren, hier verwenden wir die Lösung von AUTOMATIC1111. Das Git-Repository für weitere Informationen ist unter dem folgenden Link zu finden:
https://github.com/AUTOMATIC1111/stable-diffusion-webui
Bevor wir die Anwendung herunterladen, erstellen wir für diese ein Verzeichnis:
cd && mkdir stablediffusion && cd stablediffusion
Wir downloaden mit dem folgenden Befehl die Anwendung und installieren sie automatisiert. Das CLI wird durch den Befehl und die Log-Ausgabe von Stable Diffusion gesperrt, darf jedoch nicht geschlossen werden. Wenn wir die Anwendung das erste Mal starten, gestaltet sich dies zeitintensiver als gewöhnlich.
bash <(wget -qO- https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh)
Die Installation ist erfolgreich abgeschlossen, sobald wir die Ausgabe „Running on local URL: http://127.0.0.1:7860“ sehen:
Nachdem wir die oben dargestellte Ausgabe erhalten haben, sollte die Anwendung unter der folgenden URL zu finden sein:
http://127.0.0.1:7860/
Kopieren Sie zum Aufrufen die URL in Ihren Browser und bestätigen Sie die Eingabe.
Verwendung von Stable Diffusion:
Stable Diffusion bringt in der hier implementierten Form viele Funktionen mit sich. Wir sehen auf der ersten Seite sogleich die Möglichkeit aus Texteingaben Bilder zu erzeugen. Unsere Texteingaben, welche als Kriterien für die Erstellung des Bildes dienen, müssen auf Englisch formuliert werden und durch Kommas getrennt sein, wie hier folgt beispielsweise dargestellt:
A digital illustration of a medieval town, 4k, detailed, trending in artstation, fantasy
Desweiteren ist es uns möglich, die erstellten Bilder innerhalb der Anwendung zu verschieben und diese mit den zusätzlichen Tool´s der Anwendung weiter zu bearbeiten.
Wenn wir auch Sie beim Aufbau eines eigenen Stable Diffusion Servers oder dem Managed Hosting eines Stable Diffusion Serves unterstützen können, dann nehmen Sie gerne Kontakt auf.
Weitere interresante Artikel finden Sie in unserem Blog, oder machen Sie doch gleich mit dem nächsten Docker Beitrag weiter.
- Migration von DropBox zu Nextcloud - 20. September 2024
- Draw.io – Das Diagramm-Tool als Nextcloud-Integration - 6. September 2024
- Plausible Analytics – die Community Edition realisiert mit Docker - 4. September 2024