# Workflow in der Oberfläche neu aufbauen

Dieser Plan beschreibt den ursprünglichen Graphen v1. Erstellen Sie die Nodes, indem Sie ihren technischen Bezeichner in ComfyUI suchen. Die übersetzten Bezeichnungen können abweichen. Die Zahlen in Klammern sind die Bezeichner des gelieferten JSON und nützlich, um dessen Verbindungen zu lesen; die Oberfläche kann bei einer manuellen Rekonstruktion andere Zahlen vergeben.

## Gemeinsame Nodes

| Bezeichner | Core-Typ | Einstellung | Verwendete Ausgaben |
| --- | --- | --- | --- |
| 1 | CheckpointLoaderSimple | sd_xl_base_1.0.safetensors | MODEL, CLIP, VAE |
| 2 | EmptyLatentImage | width 1024, height 1024, batch_size 1 | LATENT |
| 3 | CLIPTextEncode | `negative_prompt` des Manifests | CONDITIONING |

Verbinden Sie CLIP des Loaders (1, Slot 1) mit dem Eingang clip des negativen Textes (3, Slot 0).

## Drei Zweige zu erstellen

| Variante | Positiver Text | KSampler | VAEDecode | SaveImage |
| --- | --- | --- | --- | --- |
| A, frontal | 4 | 5 | 6 | 7 |
| B, seitlich | 8 | 9 | 10 | 11 |
| C, Gegenlicht | 12 | 13 | 14 | 15 |

Kopieren Sie den vollständigen `prompt` jeder Variante in ihren positiven CLIPTextEncode. Die drei Texte teilen das Präfix `common_positive_prompt` und dann den Satz `light`. Der gemeinsame Negativtext ändert sich nicht.

Für **jeden** Zweig stellen Sie diese acht Verbindungen her:

1. CLIP des Loaders → clip des positiven Textes.
2. MODEL des Loaders → model des KSampler.
3. CONDITIONING des positiven Textes → positive des KSampler.
4. CONDITIONING des gemeinsamen negativen Textes → negative des KSampler.
5. LATENT des gemeinsamen leeren Latent → latent_image des KSampler.
6. LATENT des KSampler → samples von VAEDecode.
7. VAE des Loaders → vae von VAEDecode.
8. IMAGE von VAEDecode → images von SaveImage.

Gesamt: 1 gemeinsame Verbindung + 3 × 8 = **25 Verbindungen**. Ein Node SaveImage 0.37.0 hat ebenfalls eine Ausgabe IMAGE; lassen Sie sie unverbunden. Weder ein externer Node noch eine Bildeingabe sind erforderlich.

## Parameter der drei KSampler

| Widget | Wert |
| --- | --- |
| seed | 24092026 |
| control_after_generate | fixed |
| steps | 24 |
| cfg | 6.5 |
| sampler_name | euler |
| scheduler | normal |
| denoise | 1.0 |

Im JSON UI 0.4 folgt `widgets_values` dieser Reihenfolge: `[24092026, "fixed", 24, 6.5, "euler", "normal", 1.0]`. Der Regler `fixed` ist ein Widget der Oberfläche, das dem seed hinzugefügt wird; er ist kein zusätzliches Argument der Python-Funktion `sample`.

Die verbundenen Eingänge von KSampler folgen der Reihenfolge `model`, `positive`, `negative`, `latent_image`. Die Ausgänge des Loaders folgen `MODEL`, `CLIP`, `VAE`. Diese Unterscheidung zwischen Widgets und Anschlüssen verhindert, dass sich die Werte in einem von Hand geschriebenen JSON verschieben.

## Ausgabenamen und Kontrolle

Geben Sie in jedes SaveImage seinen `output_prefix` aus dem Manifest ein. Die Präfixe sind unterschiedlich, damit die Ausgaben nicht zu einer anonymen Serie werden. Die endgültige Nummerierung übernimmt ComfyUI.

Speichern Sie Ihre Rekonstruktion in einem neuen JSON. Die Bezeichner und Positionen können von denen des Ordners abweichen; der gelieferte Validator, bewusst streng, akzeptiert nur die Bezeichner des Rezepts v1. Vergleichen Sie dann visuell die Kette und die Parameter und bestätigen Sie die Generierung in Ihrer Umgebung. Das UI-Schema allein beweist weder das Vorhandensein des Modells noch den Erfolg der Berechnung.

Quellen: [Node-Definitionen 0.37.0](https://github.com/Comfy-Org/ComfyUI/blob/73c9bad4d21e7addbe1d13bc92eee0f1431b017d/nodes.py), [Wertkontrolle des Frontends 1.52.7](https://github.com/Comfy-Org/ComfyUI_frontend/blob/1a7a6b82514874545dc5e8203d0bd2188c2d9b18/src/scripts/widgets.ts), [UI-Schema 0.4](https://docs.comfy.org/specs/workflow_json_0.4).
