SSD Nodes Learn 8GB RAM — $66/Jahr
Anleitungen Matt ConnorVon Matt Connor · Aktualisiert 2026-08-01

Self-hosted KI-Bildgenerator: Hardware und Kosten

Erfahren Sie, was ein CPU-VPS schafft, warum SDXL 6,94 GB GPU-Speicher benötigt, wie Sie ComfyUI installieren und wie viel Festplattenspeicher Sie einplanen.

Was ein selbst gehosteter KI-Bildgenerator wirklich benötigt

Ein selbst gehosteter KI-Bildgenerator besteht aus einer Webanwendung und einer Modelldatei. Die Anwendung ist ComfyUI und läuft auf jedem Linux-System. Das Modell bestimmt die erforderliche Hardware. Ein Checkpoint der SDXL-Klasse ist eine einzelne Datei mit 6.94 GB und sollte im GPU-Speicher liegen. Diese eine Tatsache bestimmt das gesamte Budget. Lesen Sie daher die folgende Hardwareübersicht, bevor Sie einen Server mieten.

Die ehrliche Zusammenfassung: Ein VPS ohne CPU kann die Software installieren und bereitstellen. Mit einem älteren Stable Diffusion 1.5-Modell kann er Bilder mit 512x512 in ein bis zwei Minuten pro Bild erzeugen. Derselbe Server benötigt für SDXL mit 1024x1024 zehn bis zwanzig Minuten pro Bild. Das bedeutet nicht, dass die Einrichtung fehlerhaft ist. Es ist eine Rechenfrage, und dieser Leitfaden erklärt sie.

Warum die Modellgröße die Maschine bestimmt

Die Bildgenerierung führt eine Entrauschungsschleife aus. Bei einer Darstellung mit 30 Schritten wird das vollständige Modell 30-mal auf das Bild angewendet, und jeder Durchlauf liest alle Gewichte. SDXL benötigt bei halber Genauigkeit etwa 6.9 GB für die Gewichte. Daher werden vor der Anzeige eines Bildes bei einer Darstellung mit 30 Schritten ungefähr 200 GB durch den Speicher bewegt.

Eine GPU mit 24 GB Grafikspeicher (VRAM, der direkt neben dem Grafikchip verlötete Speicher) liest mit mehreren hundert Gigabyte pro Sekunde und hält alle 6.9 GB gleichzeitig vor. Ein CPU-VPS liest den Systemspeicher mit einigen zehn Gigabyte pro Sekunde. Außerdem verfügt er über keine Matrix-Hardware für die Faltungen. Daher läuft dieselbe Schleife ein bis zwei Größenordnungen langsamer. Dies ist dasselbe Argument zur Speicherbandbreite, das auch Textmodelle bestimmt. Lesen Sie dazu auch wann sich ein VPS mit GPU tatsächlich lohnt.

Die Bildgenerierung unterscheidet sich in einem wichtigen Punkt von der Textgenerierung. Ein Chatmodell gibt Tokens als Stream aus. Daher bleibt eine langsame Maschine nutzbar, weil während des Lesens neue Wörter erscheinen. Ein Bild wird erst angezeigt, wenn der letzte Schritt abgeschlossen ist. Langsam bedeutet, dass Sie auf einen Fortschrittsbalken starren.

Die Hardware-Leiter mit realen Zahlen

Der folgende Block enthält typische Werte für ein SDXL-Bild mit 1024x1024, 30 Schritten und dem Euler-Sampler, Stand Juli 2026. Betrachten Sie sie als Größenordnung. Ihr Sampler, die Schrittzahl und die Auflösung verändern diese Werte.

ChartOne SDXL image, 1024x1024, 30 steps (typical, July 2026)
The data behind this chart
[
  {
    "label": "8 vCPU VPS, no GPU",
    "seconds_per_image": 780
  },
  {
    "label": "8GB VRAM GPU",
    "seconds_per_image": 32
  },
  {
    "label": "12GB VRAM GPU",
    "seconds_per_image": 18
  },
  {
    "label": "24GB VRAM GPU",
    "seconds_per_image": 9
  }
]

Die CPU-Zeile weist 780 Sekunden aus, also etwa dreizehn Minuten. Die Karte mit 24 GB benötigt 9 Sekunden. Das ist der Unterschied, den Sie mit zusätzlicher Hardware kaufen.

Lesen Sie die Leiter so. Unter 8 GB VRAM läuft SDXL weiterhin, weil ComfyUI Ebenen automatisch in den System-RAM auslagert und eine Karte mit nur 1 GB verwenden kann. Das Auslagern kostet bei jedem Schritt Zeit. Daher benötigt eine Karte mit 6 GB pro Bild eher eine Minute als 30 Sekunden. Bei 8 GB passt das Basismodell in den Speicher, und das Rendern läuft ohne Einschränkungen. Bei 12 GB können Sie zusätzlich zum Checkpoint ein oder zwei ControlNet-Modelle im Speicher halten, ohne auszulagern. Bei 24 GB können Sie SDXL, den Refiner und das Upscaling in einem Workflow ausführen. Außerdem können Sie mit dem Training von LoRA-Adaptern beginnen. Dafür wird deutlich mehr Speicher benötigt als für die Generierung.

Was ein CPU-VPS leisten kann und was nicht

Er kann mehr, als viele erwarten, und weniger, als das Marketing verspricht. Beschreiben Sie die Grenze konkret.

Ein CPU-VPS kann ComfyUI installieren, die Weboberfläche bereitstellen, Ihre Modellbibliothek speichern, die Warteschlange verarbeiten und Bilder vollständig ohne GPU generieren. Bei Stable Diffusion 1.5 mit 512x512 und 20 Schritten benötigen Sie auf 8 modernen vCPUs mit 16 GB RAM ungefähr 60 bis 150 Sekunden pro Bild. Für einen Stapelauftrag, der über Nacht läuft, oder einen Bildendpunkt mit geringem Volumen hinter einer Warteschlange ist das durchaus ausreichend.

Ein CPU-VPS eignet sich nicht für interaktives Arbeiten. Bei der Prompt-Iteration bedeuten 20 Renderings pro Stunde und 13 Minuten pro Rendering, dass Sie 4 erhalten. Auch das Trainieren ist damit nicht praktikabel. Das LoRA-Finetuning auf der CPU dauert Tage, nicht Stunden. Behandeln Sie es daher als nicht verfügbar.

Die Speicherregel für den reinen CPU-Betrieb unterscheidet sich von der GPU-Regel. Die Gewichte werden in den System-RAM geladen. Sie benötigen daher die Modellgröße plus Arbeitsspeicher: etwa 16 GB RAM für SDXL und etwa 8 GB für SD 1.5. Auf einem System mit 4 GB startet ComfyUI und wird anschließend vom Out-of-Memory-Killer beendet, während das erste Rendering läuft. Das zeigt sich daran, dass der Prozess mit Killed in dmesg verschwindet und kein Python-Traceback ausgegeben wird.

ComfyUI auf einer GPU-Maschine installieren

Dies sind die Upstream-Befehle. Beginnen Sie mit einer sauberen Ubuntu-24.04-Installation, auf der der NVIDIA-Treiber bereits vorhanden ist. Überprüfen Sie zuerst den Treiber, weil jeder spätere Fehler ohne diese Prüfung gleich aussieht.

nvidia-smi

Dabei muss eine Tabelle mit Ihrer Karte und einer CUDA-Version ausgegeben werden. command not found oder NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver bedeutet, dass der Treiber fehlt oder das Kernelmodul nach einem Upgrade nicht geladen wurde. Beheben Sie das, bevor Sie fortfahren, weil ComfyUI sonst unbemerkt auf die CPU zurückfällt und Sie die Software dafür verantwortlich machen.

sudo apt update
sudo apt install -y git python3-venv python3-pip wget
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
python3 -m venv venv
. venv/bin/activate
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt

Die virtuelle Umgebung ist keine optionale Empfehlung. PyTorch installiert eine große Abhängigkeitsstruktur. Wenn Sie PyTorch systemweit auf einem Rechner installieren, auf dem bereits andere Software läuft, kann diese andere Software ausfallen. Überprüfen Sie, ob PyTorch die Karte erkennt, bevor Sie fortfahren.

python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

True zusammen mit dem Namen Ihrer Karte bedeutet, dass der Software-Stack funktioniert. False bedeutet, dass das installierte Wheel nicht zum Treiber passt. Ursache ist meist, dass bereits ein CPU-only-Torch-Wheel im Cache lag. Installieren Sie es mit der obigen Index-URL erneut.

Laden Sie ein Modell herunter und planen Sie den Speicherplatz

ComfyUI wird ohne Gewichte ausgeliefert. Checkpoints gehören nach models/checkpoints, VAE-Dateien nach models/vae und LoRA-Adapter nach models/loras.

cd ~/ComfyUI/models/checkpoints
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors

Verwenden Sie immer .safetensors statt .ckpt. Eine .ckpt-Datei ist ein serialisiertes Python-Objekt. Beim Laden wird Code des Erstellers ausgeführt. Das safetensors-Format enthält nur Tensoren. Eine schädliche Datei kann daher nichts ausführen.

Der Speicherbedarf wird häufig übersehen. Ein SDXL-Basis-Checkpoint benötigt 6.94 GB. Der Refiner benötigt weitere 6 GB. Ein einzelnes ControlNet-Modell benötigt 1.4 bis 2.5 GB, ein Upscaler 60 bis 350 MB und ein LoRA 20 bis 400 MB. Wer regelmäßig damit arbeitet, lädt innerhalb einer Woche ein zweites und drittes Basismodell herunter. Planen Sie für eine funktionierende Installation 100 GB Speicherplatz ein. Überwachen Sie auch das Ausgabeverzeichnis. PNG-Dateien mit 1024x1024 Pixeln sind jeweils 1 bis 2 MB groß. Ein unbeaufsichtigter Batch kann eine kleine Festplatte unbemerkt füllen. Legen Sie models/ und output/ auf einem erweiterbaren Volume ab. Sichern Sie Ihre Workflow-JSON-Dateien mit etwas wie verschlüsselten inkrementellen Backups in einen Objektspeicher. Die Gewichte können erneut heruntergeladen werden. Die von Ihnen angepassten Workflows nicht.

Starten und sicher darauf zugreifen

cd ~/ComfyUI
. venv/bin/activate
python main.py --listen 127.0.0.1 --port 8188

ComfyUI verwendet Port 8188. Fügen Sie auf einem System ohne GPU --cpu hinzu. Dadurch wird der CPU-Pfad erzwungen, anstatt wegen eines fehlenden CUDA-Geräts fehlschlagen.

Binden Sie an 127.0.0.1, nicht an 0.0.0.0. ComfyUI hat keine Anmeldeseite und keine Benutzerkonten. Alles, was den Port erreicht, kann Aufträge in die Warteschlange stellen, jedes von Ihnen erzeugte Bild lesen und benutzerdefinierte Nodes installieren. Dadurch ist die Ausführung beliebigen Codes auf Ihrem Server möglich. Greifen Sie stattdessen über einen SSH-Tunnel von Ihrem Laptop darauf zu.

ssh -N -L 8188:127.0.0.1:8188 you@your-server

Öffnen Sie anschließend http://127.0.0.1:8188 lokal. Wenn Sie echten Zugriff für mehrere Benutzer benötigen, schalten Sie einen Reverse-Proxy mit Authentifizierung davor und lassen Sie die Anwendung an localhost gebunden. Die gleiche Überlegung gilt für jeden nicht authentifizierten, selbst gehosteten Dienst. Dies ist das Standardmuster bei Docker-Compose-Bereitstellungen auf einem VPS.

Unter systemd weiter ausführen

Eine Renderwarteschlange, die beim Schließen Ihrer SSH-Sitzung beendet wird, ist kein Dienst. Schreiben Sie /etc/systemd/system/comfyui.service.

[Unit]
Description=ComfyUI
After=network-online.target

[Service]
User=comfy
WorkingDirectory=/home/comfy/ComfyUI
ExecStart=/home/comfy/ComfyUI/venv/bin/python main.py --listen 127.0.0.1 --port 8188
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now comfyui
systemctl status comfyui

active (running) und eine Protokollzeile mit To see the GUI go to: http://127.0.0.1:8188 bedeuten, dass der Dienst läuft. Beachten Sie, dass ExecStart den Interpreter innerhalb der virtuellen Umgebung direkt angibt, weil systemd Ihr Shell-Profil nicht ausführt und activate nie ausgeführt wird.

Die pragmatische Empfehlung je nach Budget

Wenn Sie die Bildgenerierung ausprobieren möchten und die Kosten wichtiger sind als die Geschwindigkeit, verwenden Sie einen CPU-VPS mit 16 GB RAM, führen Sie SD 1.5 mit 512x512 aus und akzeptieren Sie ein bis zwei Minuten pro Bild. Das ist der realistische Einstieg und kostet nur einen Bruchteil einer Lösung mit GPU. Dort können Sie auch die Modellbibliothek und die Workflows hosten, während Sie sich entscheiden.

Wenn Sie täglich Prompts überarbeiten, mieten Sie bei einem GPU-Cloud-Anbieter stundenweise eine GPU mit mindestens 12 GB VRAM und fahren Sie sie herunter, sobald Sie sie nicht mehr benötigen. Bildgenerierung ist eine stoßweise anfallende Aufgabe. Eine ungenutzte GPU mit monatlicher Abrechnung ist hier die häufigste Ursache für unnötig hohe Kosten. Bewahren Sie die Checkpoints auf günstigem Block-Storage auf und mounten Sie diesen.

Wenn Sie andere Personen bedienen oder LoRA-Adapter trainieren, benötigen Sie 24 GB VRAM und eine dauerhaft betriebene Maschine. An diesem Punkt lohnt sich dieselbe Maschine normalerweise auch für den Betrieb eines lokalen Sprachmodells. Diese Konfiguration wird unter einen LLM mit Ollama selbst hosten beschrieben.

Unabhängig von der gewählten Stufe sollten Sie Ihre eigene Maschine messen, bevor Sie veröffentlichten Angaben vertrauen. Stellen Sie denselben Prompt fünfmal in die Warteschlange und lesen Sie die von ComfyUI in der Konsole ausgegebene Anzahl der Sekunden pro Iteration ab. Diese Zahl zeigt Ihre tatsächliche Position auf der Leistungsskala.

FAQ

Kann ich Stable Diffusion ohne GPU ausführen?

Ja. ComfyUI läuft mit python main.py --cpu und erzeugt echte Bilder, auch wenn keine Grafikkarte vorhanden ist. Rechnen Sie bei Stable Diffusion 1.5 mit 60 bis 150 Sekunden pro Bild bei 512x512 und bei SDXL mit zehn bis zwanzig Minuten bei 1024x1024 auf 8 modernen vCPUs. Das reicht für Stapelverarbeitung über Nacht und Endpunkte mit geringem Volumen. Für die schrittweise Anpassung von Prompts ist das ungeeignet. Training ist damit überhaupt nicht praktikabel.

Wie viel VRAM benötige ich für SDXL?

Mit 8 GB läuft SDXL bei 1024x1024 problemlos. Bei weniger VRAM lagert ComfyUI Layer automatisch in den System-RAM aus und funktioniert weiterhin, bis hinunter zu etwa 1 GB VRAM. Jeder ausgelagerte Verarbeitungsschritt kostet jedoch Zeit. Mit 12 GB können Sie ein ControlNet zusammen mit dem Checkpoint im VRAM halten. 24 GB reichen für Basismodell, Refiner und Upscaling in einem Workflow aus und sind die praktische Untergrenze für das Training von LoRA-Adaptern.

Wie viel Speicherplatz benötigen die Modelle?

Der SDXL-Basis-Checkpoint allein belegt 6.94 GB. Der Refiner benötigt zusätzlich etwa 6 GB. ControlNet-Modelle belegen jeweils 1.4 bis 2.5 GB, LoRA-Adapter 20 bis 400 MB und Upscaler bis zu 350 MB. Planen Sie 100 GB für eine funktionierende Installation mit einigen Basismodellen ein. Überwachen Sie das Ausgabeverzeichnis separat, da 1024x1024-PNG-Dateien jeweils 1 bis 2 MB groß sind.

Ist es sicher, ComfyUI im öffentlichen Internet bereitzustellen?

Nein. ComfyUI bietet keinerlei Authentifizierung. Außerdem installiert und führt sein System für benutzerdefinierte Nodes Python-Code über die Oberfläche aus. Ein offener Port ermöglicht daher die Remote-Code-Ausführung auf Ihrem Server. Binden Sie ComfyUI an 127.0.0.1, greifen Sie über einen SSH-Tunnel mit ssh -N -L 8188:127.0.0.1:8188 you@your-server darauf zu und schalten Sie einen Reverse Proxy mit Authentifizierung davor, wenn mehrere Personen Zugriff benötigen.

Warum wurde mein Rendern ohne Fehlermeldung beendet?

Wenn der Prozess mit Killed in dmesg verschwindet und kein Python-Traceback ausgegeben wird, war der Linux-Out-of-Memory-Killer die Ursache, nicht ein Fehler in ComfyUI. Auf einem rein CPU-basierten System liegen die Gewichte im System-RAM. SDXL benötigt daher etwa 16 GB und SD 1.5 etwa 8 GB, jeweils zuzüglich Arbeitsspeicher für die Verarbeitung. Erweitern Sie den RAM, fügen Sie Swap hinzu oder verwenden Sie ein kleineres Modell und eine niedrigere Auflösung.

#stable-diffusion#comfyui#ai#images#self-hosting#gpu