# Membangun ulang workflow di antarmuka

Rencana ini menjelaskan graf asli v1. Buat node dengan mencari pengenal teknisnya di ComfyUI. Label yang diterjemahkan bisa berbeda. Angka di dalam tanda kurung adalah pengenal dari JSON yang disertakan, berguna untuk membaca kaitannya; antarmuka dapat memberikan angka lain selama pembangunan ulang manual.

## Node umum

| Pengenal | Tipe core | Pengaturan | Output yang digunakan |
| --- | --- | --- | --- |
| 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` dari manifes | CONDITIONING |

Hubungkan CLIP dari loader (1, slot 1) ke input clip dari teks negatif (3, slot 0).

## Tiga cabang yang harus dibuat

| Varian | Teks positif | KSampler | VAEDecode | SaveImage |
| --- | --- | --- | --- | --- |
| A, frontal | 4 | 5 | 6 | 7 |
| B, lateral | 8 | 9 | 10 | 11 |
| C, backlight | 12 | 13 | 14 | 15 |

Salin `prompt` lengkap dari setiap varian ke CLIPTextEncode positifnya. Ketiga teks berbagi prefiks `common_positive_prompt` lalu frasa `light`. Negatif umum tidak berubah.

Untuk **setiap** cabang, lakukan delapan koneksi berikut:

1. CLIP dari loader → clip dari teks positif.
2. MODEL dari loader → model dari KSampler.
3. CONDITIONING dari teks positif → positive dari KSampler.
4. CONDITIONING dari teks negatif umum → negative dari KSampler.
5. LATENT dari latent kosong umum → latent_image dari KSampler.
6. LATENT dari KSampler → samples dari VAEDecode.
7. VAE dari loader → vae dari VAEDecode.
8. IMAGE dari VAEDecode → images dari SaveImage.

Total: 1 koneksi umum + 3 × 8 = **25 koneksi**. Node 0.37.0 SaveImage juga memiliki output IMAGE; biarkan tidak terhubung. Tidak ada node eksternal maupun pengambilan gambar input yang diperlukan.

## Parameter ketiga KSampler

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

Dalam JSON UI 0.4, `widgets_values` mengikuti urutan ini: `[24092026, "fixed", 24, 6.5, "euler", "normal", 1.0]`. Kontrol `fixed` adalah widget antarmuka yang ditambahkan ke seed; ini bukan argumen tambahan dari fungsi Python `sample`.

Input yang terhubung dari KSampler mengikuti urutan `model`, `positive`, `negative`, `latent_image`. Output dari loader mengikuti `MODEL`, `CLIP`, `VAE`. Perbedaan antara widget dan kait ini mencegah pergeseran nilai dalam JSON yang ditulis secara manual.

## Nama output dan kontrol

Masukkan di setiap SaveImage `output_prefix` dari manifes. Prefiksnya berbeda-beda agar output tidak menjadi rangkaian anonim. Penomoran akhir ditangani oleh ComfyUI.

Simpan hasil pembangunan ulang Anda dalam JSON baru. Pengenal dan posisi bisa berbeda dari yang ada di folder; validator yang disertakan, yang sengaja ketat, hanya menerima pengenal dari resep v1. Bandingkan secara visual rantai dan parameternya, lalu validasi generasi di lingkungan Anda. Skema UI saja tidak membuktikan keberadaan model maupun keberhasilan komputasi.

Sumber: [definisi node 0.37.0](https://github.com/Comfy-Org/ComfyUI/blob/73c9bad4d21e7addbe1d13bc92eee0f1431b017d/nodes.py), [kontrol nilai frontend 1.52.7](https://github.com/Comfy-Org/ComfyUI_frontend/blob/1a7a6b82514874545dc5e8203d0bd2188c2d9b18/src/scripts/widgets.ts), [skema UI 0.4](https://docs.comfy.org/specs/workflow_json_0.4).
