Zum Hauptinhalt springen
Zurück zur Kategorie

Stable Diffusion Einrichtung: Self-Hosted Bilderzeugung

Stable Diffusion Installation, AUTOMATIC1111 und ComfyUI Oberflächen, Modell-Download, LoRA-Training, ControlNet-Nutzung und Docker Self-Hosted Bilderzeugung Anleitung.

Lesezeit: 16 Min. KI & ML Self-Hosting
stable-diffusionbilderzeugungkünstliche intelligenzself-hostingcomfyuigpu

Inhaltsverzeichnis

Stable Diffusion Einrichtung: Self-Hosted Bilderzeugung

Stable Diffusion ist ein Open-Source-KI-Modell, das Bilder aus Text generiert. Durch den Betrieb auf Ihrem eigenen Server können Sie unbegrenzt Bilder erzeugen, benutzerdefinierte Modelle trainieren und mit vollständiger Privatsphäre arbeiten. Diese Anleitung behandelt die Installation von AUTOMATIC1111 Web UI und ComfyUI, Modellverwaltung, LoRA und ControlNet-Nutzung im Detail.

Was ist Stable Diffusion?

Stable Diffusion ist ein Latent-Diffusion-Modell, entwickelt von Stability AI. Hauptmerkmale:

  • Text-zu-Bild (txt2img): Bilderzeugung aus Textbeschreibungen
  • Bild-zu-Bild (img2img): Neue Bilder mit vorhandenen Bildern als Referenz erzeugen
  • Inpainting: Bestimmte Bereiche eines Bildes bearbeiten
  • ControlNet: Kontrollierte Erzeugung mit Pose-, Kanten- und Tiefenkarten
  • LoRA: Modell-Feinabstimmung mit geringen Ressourcen
  • Upscaling: Niedrig aufgelöste Bilder vergrößern

Systemanforderungen

KomponenteMinimumEmpfohlen
GPUNVIDIA 6 GB VRAMNVIDIA 12 GB+ VRAM
RAM16 GB32 GB+
Festplatte30 GB100 GB+ (für Modelle)
OSUbuntu 22.04 LTSUbuntu 22.04/24.04 LTS
CUDA11.8+12.1+
Python3.10+3.10.x

AUTOMATIC1111 Web UI Installation

AUTOMATIC1111 ist die beliebteste Weboberfläche für Stable Diffusion.

Manuelle Installation

hljs bash
# Abhängigkeiten
sudo apt-get update
sudo apt-get install -y python3-venv python3-pip git wget

# Repository klonen
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

# Modell herunterladen (Stable Diffusion XL)
wget -O models/Stable-diffusion/sd_xl_base_1.0.safetensors \
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"

# Starten
./webui.sh --listen --port 7860 --xformers --enable-insecure-extension-access

Docker mit AUTOMATIC1111

hljs yaml
version: '3.8'
services:
  stable-diffusion:
    image: ghcr.io/abetlen/stable-diffusion-webui-docker:latest
    container_name: sd-webui
    ports:
      - "7860:7860"
    volumes:
      - sd_models:/app/models
      - sd_outputs:/app/outputs
      - sd_extensions:/app/extensions
    environment:
      - COMMANDLINE_ARGS=--listen --xformers --enable-insecure-extension-access --no-half-vae
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    restart: unless-stopped

volumes:
  sd_models:
  sd_outputs:
  sd_extensions:

ComfyUI Installation

ComfyUI ist eine fortgeschrittene knotenbasierte Stable-Diffusion-Oberfläche. Ideal für komplexe Workflows.

Manuelle Installation

hljs bash
# Repository klonen
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI

# Python virtuelle Umgebung
python3 -m venv venv
source venv/bin/activate

# Abhängigkeiten
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt

# Starten
python main.py --listen 0.0.0.0 --port 8188

Modell-Download und Verwaltung

Beliebte Modelle

hljs bash
# Stable Diffusion XL Base
wget -O models/Stable-diffusion/sd_xl_base_1.0.safetensors \
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"

# Stable Diffusion 1.5 (für niedrigen VRAM)
wget -O models/Stable-diffusion/v1-5-pruned-emaonly.safetensors \
  "https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors"

LoRA-Nutzung

LoRA (Low-Rank Adaptation) ermöglicht die Feinabstimmung großer Modelle mit geringen Ressourcen.

hljs bash
# LoRA-Modelle im Verzeichnis models/Lora ablegen
mkdir -p models/Lora

LoRA-Prompt-Nutzung

Um LoRA in AUTOMATIC1111 zu verwenden, fügen Sie es Ihrem Prompt hinzu:

a beautiful landscape, mountains, sunset <lora:detail-enhancer:0.7>

ControlNet-Einrichtung

ControlNet ermöglicht die Steuerung der Bilderzeugung mit Pose-, Kantenkarten und Tiefeninformationen.

hljs bash
# ControlNet-Erweiterung installieren (AUTOMATIC1111)
cd extensions
git clone https://github.com/Mikubill/sd-webui-controlnet.git

# ControlNet-Modelle
mkdir -p models/ControlNet
wget -O models/ControlNet/control_v11p_sd15_canny.pth \
  "https://huggingface.co/lllyasviel/ControlNet-v1-1/resolve/main/control_v11p_sd15_canny.pth"

API-Bilderzeugung

Programmatische Bilderzeugung über die AUTOMATIC1111-API:

hljs python
import requests
import base64
from pathlib import Path

def generate_image(prompt, negative_prompt="", steps=30, width=1024, height=1024):
    url = "http://localhost:7860/sdapi/v1/txt2img"
    payload = {
        "prompt": prompt,
        "negative_prompt": negative_prompt,
        "steps": steps,
        "width": width,
        "height": height,
        "sampler_name": "DPM++ 2M Karras",
        "cfg_scale": 7,
        "seed": -1
    }
    
    response = requests.post(url, json=payload)
    result = response.json()
    
    image_data = base64.b64decode(result["images"][0])
    Path("output.png").write_bytes(image_data)
    print("Bild gespeichert: output.png")

generate_image(
    prompt="a futuristic data center, neon lights, cyberpunk style, 8k",
    negative_prompt="blurry, low quality, distorted"
)

Leistungsoptimierung

hljs bash
# Speicheroptimierung mit xformers
pip install xformers

# Startparameter
./webui.sh --listen --xformers --opt-sdp-attention --no-half-vae --medvram --port 7860

Speichersparende Parameter

ParameterBeschreibungVRAM-Einsparung
--xformersxformers AttentionMittel
--medvramMittlerer VRAM-ModusHoch
--lowvramNiedriger VRAM-ModusSehr hoch
--opt-sdp-attentionSDP AttentionMittel
--no-half-vaeVAE float32Qualitätsverbesserung

Erzeugen Sie unbegrenzt Bilder mit Stable Diffusion auf REXE GPU-Servern. SDXL-Modelle laufen mit hoher Geschwindigkeit auf NVIDIA A100 GPUs.