Regionale Prompts in ComfyUI: Mehrere Motive mit Set Area, RegionalPrompt und Cutoff trennen

"Der ComfyUI-Kernquellcode definiert Parameter und Abbildung auf Latent-Bereiche für ConditioningSetArea, ConditioningSetAreaPercentage und ConditioningCombine."
Auf einer 1024x768-Leinwand soll links ein kurzhaariges Mädchen in Rot und rechts ein Junge mit blauer Jacke stehen. Das Ergebnis färbt die rechte Jacke rot und die linken Haare blau; Kleidung und Haarfarben beider Personen vermischen sich. Das liegt weder am Seed noch an einem zu schwachen Modell. Der CLIP-Textencoder liest den ganzen Satz als Kontext: In „red hair, blue jacket“ kann red zu jacket und blue zu hair wandern. Regions-Conditioning begrenzt einen Prompt zwar räumlich im Latent, doch das Embedding enthält weiterhin den global codierten Kontext. Drei Wege helfen: native Koordinatenregionen mit ConditioningSetArea + Combine, Attributbindung mit Cutoff und maskenbasiertes regionales Sampling mit Impact Pack Regional. Jeder Weg hat einen eigenen Einsatzbereich und eigene Grenzen.
Warum sich Prompts bei mehreren Motiven vermischen
CLIP codiert den globalen Kontext
Der CLIP-Textencoder von Stable Diffusion codiert Wörter nicht vollständig unabhängig, sondern wertet den ganzen Satz aus. In „blue hair, yellow eyes“ kann blue die eyes beeinflussen, weil die Tokens beim Erzeugen des Embeddings zusammenwirken. ConditioningSetArea begrenzt die Bedingung auf eine Latent-Region, das Embedding selbst entsteht jedoch aus dem globalen Kontext. Blau kann daher weiterhin zu den Augen wandern. Regionale Prompts verringern räumliche Vermischung, etwa Rot von links nach rechts, verhindern aber keine Vermischung auf Token-Ebene, etwa blue mit eyes.
Drei Arten der Vermischung
| Art | Typisches Symptom | Lösungsrichtung |
|---|---|---|
| Räumliche Vermischung | Rote Kleidung links beeinflusst rechts; Blau im Vordergrund beeinflusst den Hintergrund | Regions-Conditioning (Set Area / RegionalPrompt) |
| Attributvermischung | In „blue hair, yellow eyes“ beeinflusst blue die Augen | Attributbindung (Cutoff) |
| Inkonsistente Identität | Dasselbe Motiv erhält bei anderem Seed ein anderes Gesicht | FaceID / LoRA (hier nicht behandelt) |
Auswahl: Problem → Ansatz → Werkzeug → ungeeigneter Fall
| Problem | Empfohlener Ansatz | Nodes | Ungeeignet für |
|---|---|---|---|
| Figuren links und rechts trennen | Native Koordinatenregionen | ConditioningSetArea + ConditioningCombine | Komplexe Masken, weil Koordinaten berechnet werden müssen |
| Farb- oder Kleidungsvermischung | Attributbindung | Cutoff BasePrompt + Set Region + Regions To Conditioning | Koordinatenbereiche; SDXL muss getestet werden, da das README schwache Ergebnisse mit SDXL 0.9 nennt |
| Komplexe Maskenregionen | Maskenbasiertes regionales Sampling | Impact Pack: RegionalPrompt + CombineRegionalPrompts + RegionalSampler | Benötigt Impact Pack und kann zu fehlenden Nodes führen |
| Einfache Farbblockmasken | Vereinfachte Regions-Nodes | Inspire Pack: Regional Conditioning By Color Mask | Hängt von Impact Pack oder IPAdapter Plus ab |
| Falsche Pose | Posensteuerung | ControlNet (OpenPose / Canny / Depth) | Löst keine Attributvermischung |
| Inkonsistente Identität | Identitätssteuerung | FaceID / ReActor / LoRA | Löst keine regionalen Prompts |
Eine sinnvolle Kombination lautet: Regionale Prompts bestimmen die Position → OpenPose bestimmt die Pose → ein globales Conditioning mit strength 0.3-0.5 vereinheitlicht die Stimmung. Positionen aus OpenPose, ControlNet oder IPAdapter müssen manuell zu den Regionen passen. Die Nodes erkennen nicht automatisch, dass die linke OpenPose-Person zur linken Prompt-Region gehört.
Nativer Weg: ConditioningSetArea + Combine
Koordinatenparameter
| Parameter | Bedeutung | Einheit | Bereich | Hinweis |
|---|---|---|---|---|
| x / y | Koordinate oben links | Pixel | 0 - MAX_RESOLUTION | Ursprung liegt oben links |
| width / height | Breite und Höhe der Region | Pixel | 64 - MAX_RESOLUTION, Schritt 8 | UI-Schritt 8, weil beim Schreiben in den Latent durch 8 geteilt wird |
| strength | Gewicht des Regions-Conditionings | Fließkommazahl | 0 - 10, Standard 1.0 | Gewichte überlappender Regionen werden beim Sampling normalisiert |
Der Schritt beträgt 8, weil ConditioningSetArea.append() den Latent-Bereich als (height // 8, width // 8, y // 8, x // 8) schreibt. Ein 512x512-Bild wird im Latent-Raum zu 64x64, daher sollten die Koordinaten Vielfache von 8 sein. ConditioningSetAreaPercentage akzeptiert Werte von 0 bis 1, wenn Prozentwerte bequemer sind.
Verbindung vom Prompt zum Sampler
Dieses Beispiel teilt eine 1024x768-Leinwand zwischen zwei Motiven:
Schritt 1: Region für den linken Prompt
- Prompt des linken Motivs → CLIP Text Encode (Conditioning-Ausgabe)
- Conditioning → ConditioningSetArea (x=0, y=0, width=512, height=768, strength=1.0)
- Conditioning mit Regionsdaten ausgeben
Schritt 2: Region für den rechten Prompt
- Prompt des rechten Motivs → CLIP Text Encode (Conditioning-Ausgabe)
- Conditioning → ConditioningSetArea (x=512, y=0, width=512, height=768, strength=1.0)
- Conditioning mit Regionsdaten ausgeben
Schritt 3: Conditionings kombinieren
- Linke Set-Area-Ausgabe → ConditioningCombine (Eingang 1)
- Rechte Set-Area-Ausgabe → ConditioningCombine (Eingang 2)
- Combine-Ausgabe → positive Conditioning des KSampler
Optional: globales Hintergrund-Conditioning
- Hintergrund-Prompt → CLIP Text Encode
- Conditioning → ConditioningSetArea (x=0, y=0, width=1024, height=768, strength=0.3-0.5)
- Mit den Regions-Conditionings kombinieren und über geringe strength die Stimmung vereinheitlichen
Wichtig: strength ist keine „Deckkraft“, sondern das Gewicht der Rauschvorhersage. Bei überlappenden Regionen werden die Gewichte mehrerer Conditionings vor dem Sampling normalisiert; die Summe muss nicht manuell berechnet werden.
Überlappungen und strength einstellen
Bei überlappenden Regionen steuert strength die Mischung der Conditionings. Das Sampling normalisiert die Gewichte automatisch. Als Ausgangspunkt eignen sich strength=1.0 für Motive im Vordergrund und strength=0.3-0.5 für den globalen Hintergrund. Ein niedriger Hintergrundwert reduziert Störungen, beseitigt sie jedoch nicht vollständig. Widersprüchliche Farben in beiden Figuren-Prompts können sich über den globalen CLIP-Kontext weiterhin beeinflussen.
Attributbindung: Cutoff
Einsatzbereich und Funktionsweise
Das typische Beispiel ist blue, das in „blue hair, yellow eyes“ die eyes beeinflusst, weil CLIP den ganzen Satz als Kontext codiert. Cutoff soll ein Attribut nur auf einen festgelegten Teil des Prompts wirken lassen. Dazu maskiert es Ziel-Tokens, erzeugt das Embedding erneut und nutzt die resultierende Richtung, um Attributbeziehungen zu isolieren.
Cutoff ist kein koordinatenbasierter regionaler Prompt. Es verarbeitet Token-Beziehungen, nicht Positionen. Die Nodes heißen Cutoff BasePrompt, Cutoff Set Region, Cutoff Regions To Conditioning und Cutoff Regions To Conditioning (ADV) und liegen unter conditioning > cutoff.
SDXL-Hinweis: Das README berichtet schlechte Ergebnisse mit SDXL 0.9. Aktuelle SDXL- oder FLUX-Versionen müssen getestet werden; Cutoff ist keine universell zuverlässige Lösung.
Installation und Verwendung
Installation:
- In ComfyUI-Manager nach
ComfyUI_Cutoffsuchen - Oder mit
git clone https://github.com/BlenderNeko/ComfyUI_Cutoffmanuell nachcustom_nodesklonen - ComfyUI nach der Installation neu starten
Grundablauf:
- Den vollständigen Prompt, etwa „blue hair, yellow eyes“, in BasePrompt eingeben
- In Set Region die Attributbindung definieren, etwa „blue“ an „hair“
- Mit Regions To Conditioning ein Conditioning erzeugen
- Dieses Conditioning bei Bedarf mit Set Area räumlich begrenzen
Grenzen und Hinweise
Cutoff eignet sich nicht für Koordinatenbereiche. Es bindet Token-Attribute, platziert aber nicht „rote Kleidung links, blaue Kleidung rechts“. Für beide Probleme bindest du zuerst Attribute mit Cutoff und begrenzt das Ergebnis anschließend mit Set Area.
Die Wirkung mit SDXL ist unsicher. Das README nennt schwache Ergebnisse mit SDXL 0.9; aktuelle Versionen erfordern eigene Tests. Wer vor allem SDXL nutzt, sollte Cutoff zunächst mit einem einfachen Farbbeispiel prüfen.
Maskenbasiertes regionales Sampling: Impact Pack Regional
Nodes RegionalPrompt und RegionalSampler
| Node | Eingabe | Ausgabe | Zweck |
|---|---|---|---|
| RegionalPrompt | mask + advanced_sampler + variation_seed/strength/method | REGIONAL_PROMPTS | Verbindet Maske und Sampler zu einem regionalen Prompt |
| CombineRegionalPrompts | Mehrere REGIONAL_PROMPTS | REGIONAL_PROMPTS | Kombiniert mehrere regionale Prompts |
| RegionalSampler | base_sampler + REGIONAL_PROMPTS + overlap_factor + restore_latent | latent | Wendet in jedem Schritt Sampling auf Regionen an |
| RegionalSamplerAdvanced | Eingaben von RegionalSampler + Schrittsteuerung | latent | Steuert über Schritte statt denoise |
Parameter:
overlap_factor: steuert den Übergangsbereich außerhalb der Regionrestore_latent: stellt beim regionalen Sampling den base latent außerhalb der Maske wieder her und reduziert dort zusätzliches Rauschen
RegionalSampler sampelt Regionen in jedem Schritt. TwoSamplersForMask führt dagegen zuerst globales Sampling aus und kombiniert anschließend per Maske. Der erste Ansatz kontrolliert den Ablauf jeder Region genauer.
Installation und Fehlerbehebung
Installation:
- In ComfyUI-Manager nach
ComfyUI Impact Packsuchen - ComfyUI nach der Installation neu starten und den Browser aktualisieren
Typische Probleme:
- Roter oder fehlender Node → Workflows importieren und fehlende Nodes installieren
- Python-Abhängigkeitsfehler → siehe den späteren Beitrag zu ComfyUI-Fehlerbehebung und Wartung
Vereinfachter Weg: Inspire Pack Regional Conditioning (optional)
Wer keine Set-Area-Koordinaten berechnen möchte, kann den Ablauf mit einer Farbblockmaske vereinfachen. Inspire Pack enthält:
| Node | Zweck |
|---|---|
| Regional Prompt Simple (Inspire) | Vereinfachte Eingabe regionaler Prompts |
| Regional Prompt By Color Mask (Inspire) | Definiert Regionen per Farbblockmaske |
| Regional Conditioning Simple (Inspire) | Vereinfachtes regionales Conditioning |
| Regional Conditioning By Color Mask (Inspire) | Definiert Conditioning-Regionen per Farbblockmaske |
| Regional IPAdapter Mask / By Color Mask / Encoded Mask | Regionale Nodes für IPAdapter |
Einige Nodes hängen von Impact Pack oder IPAdapter Plus ab. Prüfe vor der Verwendung die Abhängigkeiten im README.
Dieser Weg passt zu vorhandenen Farbblockmasken, etwa links rot und rechts blau, und vermeidet manuelle Pixelberechnungen.
Kombinationsgrenzen und Risiken im zweiten Pass
Kombination mit ControlNet, IPAdapter und LoRA
| Werkzeug | Gesteuertes Ziel | Nicht gelöstes Problem |
|---|---|---|
| Regionaler Prompt (Set Area / Regional) | Position und Prompt-Zuordnung | Identitätskonsistenz; Attributvermischung, die Set Area nicht löst |
| ControlNet (OpenPose / Canny / Depth) | Pose und Struktur | Attributvermischung; Positionszuordnung |
| IPAdapter | Einfluss eines Referenzbildes auf Stil oder Komposition | Regionale Trennung; feste Identität, da IPAdapter den Gesamtstil beeinflusst |
| FaceID / LoRA | Konsistente Identität oder konsistenter Stil | Regionale Prompts; Attributvermischung |
Die praktische Reihenfolge lautet: regionale Prompts für die Position → OpenPose für die Pose → schwaches globales Conditioning für eine gemeinsame Stimmung. Positionen aus OpenPose, ControlNet oder IPAdapter müssen manuell an den Regionen ausgerichtet werden; „die Person links“ wird nicht automatisch gebunden.
Farbvermischung bei zweitem Pass, Upscale oder Inpaint
Fehlt beim zweiten Pass, Upscale oder bei der Gesichtsreparatur das regionale Conditioning, kann das Modell wieder globale Konsistenz anstreben und zuvor getrennte Haar- oder Kleidungsfarben mischen. Das Area-Composition-Beispiel warnt, dass Haarfarben ohne regionalen Prompt im zweiten Pass zusammengeführt werden können.
Entscheide, ob spätere Pässe das regionale Conditioning beibehalten oder lokales Inpaint geeigneter ist. Nach einer Trennung mit Set Area können die Regionen beim Upscale erneut gesetzt werden, damit globale Konsistenz die Motivtrennung nicht aufhebt.
Nächste Schritte und weiterführende Beiträge
Regionale Prompts sind nur ein Teil einer Komposition mit mehreren Motiven. Posensteuerung, Identitätskonsistenz, Referenzbilder und hochauflösende Reparaturen benötigen weitere Werkzeuge.
Veröffentlicht:
- Workflows importieren und fehlende Nodes installieren: löst Probleme bei der Installation von Custom Nodes und bei fehlenden Nodes
- Stable-Diffusion-Promptvorlagen: Grundlagen für Fälle, in denen ein Prompt mehrere Motive nicht klar beschreibt
- ComfyUI-ControlNet-Anleitung: steuert Pose und Struktur zusätzlich zur Positionierung durch regionale Prompts
- ComfyUI-LoRA-Anleitung: hält Figuren oder Stile konsistent und trennt Multi-LoRA-Vermischung von regionaler Prompt-Vermischung
Eigene Beiträge behandeln IPAdapter, FaceID und Gesichtskonsistenz, LoRA-Training, hochauflösende Reparaturen und Inpainting. Zusammen mit regionalen Prompts verringern diese Werkzeuge die Unsicherheit in Szenen mit mehreren Motiven.
Linke und rechte Motivregionen mit Set Area erstellen
Teile eine 1024×768-Leinwand in zwei Hälften, weise jedem Motiv sein positives Conditioning zu und vereinheitliche die Stimmung mit einem schwachen globalen Conditioning.
⏱️ Estimated time: 20 min
- 1
Step 1: Endgültige Leinwand festlegen
Stelle den Latent oder Empty Latent Image auf 1024×768 ein und berechne alle Regionskoordinaten aus dieser endgültigen Größe. - 2
Step 2: Prompt für das linke Motiv schreiben
Verwende ein eigenes CLIP Text Encode für das linke Motiv. Farbe, Kleidung und Frisur gehören nur in diesen lokalen Zweig. - 3
Step 3: Linke Region festlegen
Verbinde das linke Conditioning mit ConditioningSetArea und nutze x=0, y=0, width=512, height=768 und strength=1.0. - 4
Step 4: Rechte Region festlegen
Erstelle für das rechte Motiv ein zweites CLIP Text Encode und ConditioningSetArea mit x=512, y=0, width=512, height=768 und strength=1.0. - 5
Step 5: Lokale Conditionings kombinieren
Führe beide mit Regionsdaten versehenen Conditionings über ConditioningCombine zusammen und verbinde die Ausgabe mit positive des KSampler. - 6
Step 6: Schwaches globales Conditioning hinzufügen
Für einheitliches Licht oder einen gemeinsamen Hintergrund ergänzt du ein vollflächiges Conditioning mit strength 0.3-0.5, damit es die lokalen Zweige nicht überdeckt. - 7
Step 7: Posensteuerung ausrichten
Ergänze für Positionen und Gesten von zwei Personen OpenPose, Depth oder Canny und richte die Pose manuell an den Regionen aus. - 8
Step 8: Spätere Sampling-Pässe prüfen
Entscheide vor Upscale, zweitem Pass oder Inpaint, ob das regionale Conditioning erhalten bleibt, damit Farben und Attribute nicht wieder zusammenlaufen.
FAQ
Sind x, y, width und height Pixel oder Prozentwerte?
Warum sollten Set-Area-Koordinaten Vielfache von 8 sein?
Ist Cutoff ein Werkzeug für regionale Prompts?
Wann sollte ich RegionalPrompt statt Set Area verwenden?
Wie stelle ich strength bei überlappenden Regionen ein?
Warum ordnet der Prompt die zwei Personen in OpenPose nicht richtig zu?
Was tun bei roten oder fehlenden Nodes?
8 Min. Lesezeit · Veröffentlicht am: 28. Aug. 2026 · Aktualisiert am: 28. Aug. 2026
ComfyUI & Stable Diffusion Praxisleitfaden
Wenn du über die Suche hier gelandet bist, kommst du am schnellsten weiter, indem du zum vorherigen oder nächsten Beitrag dieser Serie springst.
Vorheriger
Eigenes LoRA mit ComfyUI trainieren: Daten, Tags und Validierung
Bereite den Datensatz und die Captions vor, stimme dim, alpha, Lernraten, Steps und VRAM-Optionen ab, erkenne Overfitting und prüfe das LoRA anschließend in ComfyUI.
Teil 10 von 16
Nächster
ComfyUI-Bilder hochskalieren und lokal reparieren: Hires Fix, FaceDetailer und Inpainting
Pixel-Upscaling, latentes Resampling, FaceDetailer, manuelles Inpainting und Kachelverarbeitung gezielt wählen und Gesichtsdrift, Nähte sowie Änderungen außerhalb der Maske beheben.
Teil 12 von 16



Kommentare
Melde dich mit GitHub an, um einen Kommentar zu hinterlassen