> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/guides/guides_v2-de/bildgenerierung/invokeai.md).

# InvokeAI

Führe das professionelle Stable-Diffusion-Toolkit InvokeAI mit node-basierter Leinwand auf Clore.ai-GPUs aus

InvokeAI ist ein Stable-Diffusion-Toolkit in Profiqualität mit einem fortschrittlichen, kachelbasierten Node-Canvas-Editor, voller Unterstützung für SDXL/SD1.5/SD2.x, ControlNet, IP-Adapter, LoRA-Verwaltung und einer ausgereiften Web-Oberfläche. Es ist für Künstler und Kreativprofis konzipiert, die präzise Kontrolle über ihren Bildgenerierungs-Workflow benötigen. Die GPUs mit hohem VRAM von CLORE.AI ermöglichen es Ihnen, SDXL in voller Auflösung mit mehreren ControlNets gleichzeitig auszuführen.

{% hint style="success" %}
Alle Beispiele können auf GPU-Servern ausgeführt werden, die gemietet wurden über [CLORE.AI-Marktplatz](https://clore.ai/marketplace).
{% endhint %}

## Serveranforderungen

| Parameter  | Minimum              | Empfohlen                |
| ---------- | -------------------- | ------------------------ |
| RAM        | 12 GB                | 32 GB+                   |
| VRAM       | 6 GB                 | 12 GB+                   |
| Festplatte | 40 GB                | 200 GB+                  |
| GPU        | NVIDIA GTX 1060 6GB+ | RTX 3090, RTX 4090, A100 |

{% hint style="info" %}
Für SDXL (1024×1024) ohne Kompromisse werden 12 GB VRAM empfohlen. Für SD1.5 (512×512 oder 768×768) sind 6 GB VRAM ausreichend. Mehr VRAM = höhere Auflösung, schnellere Generierung und mehr ControlNets gleichzeitig.
{% endhint %}

## Schnellbereitstellung auf CLORE.AI

**Docker-Image:** `ghcr.io/invoke-ai/invokeai:latest`

**Ports:** `22/tcp`, `9090/http`

**Umgebungsvariablen:**

| Variable        | Beispiel    | Beschreibung                              |
| --------------- | ----------- | ----------------------------------------- |
| `INVOKEAI_ROOT` | `/invokeai` | Root-Verzeichnis für Modelle und Ausgaben |

## Schritt-für-Schritt-Einrichtung

### 1. Mieten Sie einen GPU-Server auf CLORE.AI

Besuchen [CLORE.AI-Marktplatz](https://clore.ai/marketplace) und suchen Sie nach:

* **Kreative Arbeiten mit kleinem Budget**: RTX 3080/3090 (10–24 GB VRAM)
* **Professionelles SDXL**: RTX 4090 (24 GB VRAM)
* **Maximale Qualität**: A100 80 GB — mehrere Modelle gleichzeitig ausführen

### 2. Verbinden Sie sich per SSH mit Ihrem Server

```bash
ssh -p <PORT> root@<SERVER_IP>
```

### 3. Erstellen Sie die InvokeAI-Verzeichnisstruktur

```bash
mkdir -p /root/invokeai
```

### 4. Ziehen Sie das InvokeAI-Docker-Image

```bash
docker pull ghcr.io/invoke-ai/invokeai:latest
```

### 5. Starten Sie InvokeAI

**Einfacher Start:**

```bash
docker run -d \
  --name invokeai \\
  --gpus all \
  -p 9090:9090 \\
  -v /root/invokeai:/invokeai \\
  -e INVOKEAI_ROOT=/invokeai \\
  ghcr.io/invoke-ai/invokeai:latest \\
  invokeai-web --host 0.0.0.0 --port 9090
```

**Mit benutzerdefiniertem Root-Verzeichnis und erhöhten Ressourcen:**

```bash
docker run -d \
  --name invokeai \\
  --gpus all \
  --shm-size 8g \\
  -p 9090:9090 \\
  -v /root/invokeai:/invokeai \\
  -v /root/models:/root/models \\
  -e INVOKEAI_ROOT=/invokeai \\
  ghcr.io/invoke-ai/invokeai:latest \\
  invokeai-web --host 0.0.0.0 --port 9090
```

**Mit spezifischer GPU (Server mit mehreren GPUs):**

```bash
docker run -d \
  --name invokeai \\
  --gpus '"device=0"' \\
  -p 9090:9090 \\
  -v /root/invokeai:/invokeai \\
  -e INVOKEAI_ROOT=/invokeai \\
  -e CUDA_VISIBLE_DEVICES=0 \\
  ghcr.io/invoke-ai/invokeai:latest \\
  invokeai-web --host 0.0.0.0 --port 9090
```

### 6. Warten Sie auf die Initialisierung

```bash
docker logs -f invokeai
```

Achten Sie auf: `Uvicorn läuft auf http://0.0.0.0:9090`

### 7. Zugriff über den CLORE.AI-HTTP-Proxy

Öffnen Sie Ihr CLORE.AI-Dashboard und suchen Sie die `http_pub` URL für Port 9090:

```
https://<order-id>-9090.clore.ai/
```

Dies öffnet die vollständige InvokeAI-Weboberfläche in Ihrem Browser.

### 8. Laden Sie Ihr erstes Modell herunter

In der InvokeAI-Oberfläche:

1. Klicken Sie auf **Modell-Manager** (Würfel-Symbol in der linken Seitenleiste)
2. Klicken Sie auf **Modell hinzufügen → HuggingFace**
3. Geben Sie die Modell-ID ein (z. B. `stabilityai/stable-diffusion-xl-base-1.0`)
4. Klicken Sie auf **Modell hinzufügen**

Oder direkt von CivitAI herunterladen:

1. Gehe zu **Modell-Manager → Modell hinzufügen → URL**
2. Fügen Sie die CivitAI-Download-URL ein
3. Modelltyp festlegen (Checkpoint, LoRA usw.)

***

## Anwendungsbeispiele

### Beispiel 1: Einfache Bildgenerierung über die Web-Oberfläche

1. Öffnen Sie InvokeAI über Ihre CLORE.AI-http\_pub-URL
2. Klicken Sie auf **Text zu Bild** im Workflow-Auswahlmenü
3. Geben Sie einen Prompt ein: `"eine majestätische Drachenfigur auf einem Kristallberg, digitale Kunst, 4k"`
4. Negativen Prompt festlegen: `"unscharf, geringe Qualität, Wasserzeichen"`
5. Auflösung setzen auf `1024x1024` (SDXL) oder `512x512` (SD1.5)
6. Klicken Sie auf **Aufrufen**

### Beispiel 2: Verwenden des knotenbasierten Canvas

Der Workflow-Editor ist das Markenzeichen von InvokeAI:

1. Klicken Sie auf **Workflows** in der oberen Navigationsleiste
2. Klicken Sie auf **Neuer Workflow**
3. Knoten hinzufügen: **Text → Bild**, verbinden mit **Bild speichern**
4. Fügen Sie einen **ControlNet** Knoten für geführte Generierung hinzu:
   * Rechtsklick → Knoten hinzufügen → **ControlNet**
   * Verbinden Sie Ihr Referenzbild
   * Wählen Sie den Prozessor aus: `Canny`, `Tiefe`, `Pose`, usw.
5. Klicken Sie auf **Aufrufen** um die vollständige Pipeline auszuführen

### Beispiel 3: LoRA-Verwendung

1. Laden Sie eine LoRA von CivitAI herunter (über Modell-Manager → URL-Import)
2. Im Generierungsbereich finden Sie **LoRA** den Abschnitt
3. Klicken Sie auf **+** und wählen Sie Ihre LoRA aus
4. Stärke festlegen (typisch 0,5–1,0)
5. Triggerwort zum Prompt hinzufügen (auf der CivitAI-Modellseite aufgeführt)

Beispiel-Prompt mit LoRA-Trigger:

```
Portrait einer Frau, <lora:detail-tweaker:0.8>, hyperrealistisch, Studiobeleuchtung
```

### Beispiel 4: IP-Adapter für Stilübertragung verwenden

1. Aktivieren **IP-Adapter** im Generierungsbereich
2. Laden Sie ein Referenzbild für den Stil hoch
3. Stärke festlegen (0,5 = subtile Wirkung, 1,0 = starke Wirkung)
4. Generieren Sie mit beliebigem Prompt — die Ausgabe entspricht dem Referenzstil

### Beispiel 5: API-Verwendung (ohne UI)

InvokeAI stellt eine REST-API für die programmatische Nutzung bereit:

```python
import requests
import time
import base64

BASE_URL = "http://localhost:9090"  # oder Ihre CLORE.AI-http_pub-URL

# Verfügbare Modelle auflisten
models = requests.get(f"{BASE_URL}/api/v1/models").json()
print("Verfügbare Modelle:", [m["name"] for m in models.get("items", [])])

# Generierung in die Warteschlange stellen
payload = {
    "batch": {
        "graph": {
            "nodes": {
                "text_encoder": {
                    "type": "compel",
                    "id": "text_encoder",
                    "prompt": "eine futuristische Stadt bei Sonnenuntergang, fotorealistisch",
                },
                "noise": {
                    "type": "noise",
                    "id": "noise",
                    "width": 1024,
                    "height": 1024,
                    "seed": 42,
                },
                "denoise_latents": {
                    "type": "denoise_latents",
                    "id": "denoise_latents",
                    "steps": 30,
                    "cfg_scale": 7.5,
                    "scheduler": "dpmpp_2m",
                },
                "l2i": {
                    "type": "l2i",
                    "id": "l2i",
                },
            },
            "edges": [],
        }
    }
}

# Einfacher: Die Queue-API verwenden
response = requests.post(f"{BASE_URL}/api/v1/queue/default/enqueue_batch", json=payload)
print(response.status_code)
```

***

## Konfiguration

### invokeai.yaml-Konfigurationsdatei

zu finden unter `/root/invokeai/invokeai.yaml`:

```yaml
InvokeAI:
  Webserver:
    host: 0.0.0.0
    port: 9090
    allow_origins: []
    
  Funktionen:
    esrgan: true          # ESRGAN-Hochskalierung
    internet_available: true
    
  Speicher/Leistung:
    ram: 12.0             # Maximaler RAM für den Modell-Cache (GB)
    vram: 0.25            # Anteil des VRAM für den Modell-Cache
    lazy_offload: true    # Modelle bei Nichtgebrauch auf die CPU auslagern
    
  Pfade:
    models_path: /invokeai/models
    db_path: /invokeai/databases/invokeai.db
    outdir: /invokeai/outputs
```

### Empfohlene Einstellungen je GPU

**RTX 3090 / 4090 (24 GB VRAM):**

```yaml
Speicher/Leistung:
  ram: 24.0
  vram: 0.5   # 50 % für das aktive Modell reservieren
  lazy_offload: false  # Nicht auslagern — genügend VRAM vorhanden
```

**RTX 3080 (10 GB VRAM):**

```yaml
Speicher/Leistung:
  ram: 16.0
  vram: 0.25
  lazy_offload: true
```

**Kleinere GPUs (6-8 GB VRAM):**

```yaml
Speicher/Leistung:
  ram: 8.0
  vram: 0.1
  lazy_offload: true
```

***

## Leistungstipps

### 1. Verwenden Sie SDXL-Turbo oder SDXL-Lightning für schnelle Generierung

Statt des SDXL-Basismodells (25–50 Schritte) verwenden Sie:

* **SDXL-Turbo**: 1–4 Schritte, Generierung in Echtzeit
* **SDXL-Lightning**: 4–8 Schritte, Qualität nahe SDXL

Herunterladen über Modell-Manager → HuggingFace:

* `stabilityai/sdxl-turbo`
* `ByteDance/SDXL-Lightning`

### 2. Wählen Sie den richtigen Scheduler

| Scheduler      | Qualität     | Geschwindigkeit | Am besten geeignet für |
| -------------- | ------------ | --------------- | ---------------------- |
| `euler_a`      | Gut          | Schnell         | Allgemeine Verwendung  |
| `dpmpp_2m`     | Hervorragend | Schnell         | Fotorealistisch        |
| `dpmpp_2m_sde` | Hervorragend | Mittel          | Hohe Detailtreue       |
| `ddim`         | Gut          | Schnell         | Bereichsfüllung        |
| `lms`          | Gut          | Schnell         | Künstlerische Stile    |

### 3. Aktivieren Sie die xFormers-Speicheroptimierung

InvokeAI aktiviert dies automatisch, wenn verfügbar. In den Logs prüfen:

```
xFormers ist verfügbar
```

### 4. Modell-Cache verwenden

Halten Sie Ihre am häufigsten verwendeten Modelle im Cache. In invokeai.yaml:

```yaml
ram: 32.0  # Größer = mehr Modelle zwischengespeichert
```

### 5. Kacheln für große Auflösungen

Für Bilder, die größer sind als Ihr VRAM zulässt (z. B. 2048×2048 auf einer 12-GB-GPU):

* Verwende **Tiled VAE** im Workflow-Editor
* Oder generieren Sie bei 1024×1024 und skalieren Sie dann hoch mit **ESRGAN**

***

## Fehlerbehebung

### Problem: "CUDA out of memory"

```
RuntimeError: CUDA out of memory
```

**Lösungen:**

1. Auflösung verringern (1024→768 oder 512)
2. Batch-Größe auf 1 reduzieren
3. Lazy-Offloading in invokeai.yaml aktivieren
4. Ein kleineres Modell verwenden (SD1.5 statt SDXL)

### Problem: Web-Oberfläche nicht erreichbar

```bash
# Prüfen, ob der Container läuft
docker ps | grep invokeai

# Protokolle auf Fehler prüfen
docker logs invokeai 2>&1 | tail -50

# Portzuordnung prüfen
docker port invokeai
```

Stellen Sie sicher, dass Port 9090 in der Portkonfiguration Ihrer CLORE.AI-Bestellung aufgeführt ist.

### Problem: Modell-Download schlägt im Container fehl

```bash
# Manuell per exec herunterladen
docker exec -it invokeai bash
cd /invokeai/models/main
wget "https://civitai.com/api/download/models/XXX" -O mymodel.safetensors
```

### Problem: Langsame Generierung (< 1 it/s)

* GPU-Auslastung prüfen: `docker exec -it invokeai nvidia-smi`
* Stellen Sie sicher, dass xFormers in den Logs aktiviert ist
* Versuche `euler_a` Scheduler (am schnellsten)

### Problem: Schwarze/fehlerhafte Bilder

Meist ein VAE-Problem. Versuchen Sie:

1. Modell-Manager → Modell bearbeiten → VAE ändern zu `sdxl-vae-fp16-fix`
2. Oder hinzufügen `--fp32-vae` Schalter

### Problem: Container startet nicht

```bash
docker logs invokeai
# Häufig: Port 9090 wird bereits verwendet
# Behebung:
docker stop $(docker ps -q --filter "publish=9090")
docker start invokeai
```

***

## Links

* [GitHub](https://github.com/invoke-ai/InvokeAI)
* [Dokumentation](https://invoke-ai.github.io/InvokeAI/)
* [Docker Hub / GHCR](https://github.com/invoke-ai/InvokeAI/pkgs/container/invokeai)
* [CivitAI (Modelle)](https://civitai.com)
* [CLORE.AI-Marktplatz](https://clore.ai/marketplace)

***

## GPU-Empfehlungen für Clore.ai

| Anwendungsfall     | Empfohlene GPU   | Geschätzte Kosten bei Clore.ai            |
| ------------------ | ---------------- | ----------------------------------------- |
| Entwicklung/Testen | RTX 3090 (24 GB) | 0,07–0,21 $/GPU/Stunde                    |
| Produktion         | RTX 4090 (24 GB) | 0,14–0,42 $/GPU/Stunde                    |
| Großflächig        | A100 80GB        | [Bare Metal](https://clore.ai/bare-metal) |

> 💡 Alle Beispiele in diesem Leitfaden können bereitgestellt werden auf [Clore.ai](https://clore.ai/marketplace) GPU-Servern. Durchsuchen Sie verfügbare GPUs und mieten Sie stundenweise — keine Verpflichtungen, voller Root-Zugriff.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/guides/guides_v2-de/bildgenerierung/invokeai.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
