Files
2026-01-22 22:38:49 +02:00

101 lines
3.9 KiB
Markdown

# 🎨 ComfyUI-ForgeAPI for InstantID workflow
![ComfyUI](https://img.shields.io/badge/ComfyUI-Extension-blue?style=flat-square) ![SDXL](https://img.shields.io/badge/Model-SDXL-orange?style=flat-square) ![Status](https://img.shields.io/badge/Status-Active-green?style=flat-square)
**A ComfyUI node for controlling a local Forge UI / Automatic1111 WebUI via API.**
This node bridges the gap between ComfyUI's workflow flexibility and Forge UI's superior implementation of specific ControlNet models. It is designed specifically for an **InstantID + Canny ControlNet** workflow on SDXL, allowing you to leverage Forge's robust rendering backend directly from your ComfyUI canvas.
### 🚀 Why use this?
While ComfyUI is a powerful platform, Forge UI often delivers superior results for **InstantID**. This node allows you to:
* Use Forge UI as a rendering engine for ComfyUI.
* Achieve high-quality results in **under 8 steps** (using `dmd2_sdxl_4step_lora_fp16`).
* Seamlessly map InstantID keypoints and Canny edges.
---
## ✨ Key Features
* **SDXL & InstantID Optimized:** Pre-configured for high-performance face reference workflows.
* **Flexible LoRA Support:** Defaults to 4-step LoRAs but supports full customization via dropdowns.
---
## 🛠️ Requirements
### 1. Local Forge UI Instance
You must have a local instance of Forge UI (or Automatic1111) running.
* **Default URL:** `http://127.0.0.1:7860`
* **Flag:** You must launch Forge with the API enabled:
python launch.py --api
### 2. Required Models
Place the following models in your Forge UI `models/ControlNet/` directory:
| Model Type | Filename | Description |
| :--- | :--- | :--- |
| **IP-Adapter** | `ip-adapter_instant_id_sdxl.safetensors` | The InstantID adapter. |
| **ControlNet** | `control_instant_id_sdxl.safetensors` | Handles InstantID keypoints. |
| **ControlNet** | `diffusers_xl_canny_full.safetensors` | Handles Canny edge detection. |
> **⚠️ Note:** This node connects to your *external* Forge UI instance. These models must be installed in **Forge**, not just ComfyUI.
---
## ⚡ Quick Start Guide
1. **Launch Forge UI:**
Run your local Forge instance with the API flag.
```bash
python launch.py --api
```
2. **Start ComfyUI:**
Open ComfyUI and load your workflow.
3. **Add the Node:**
Search for and add the **Local Forge UI Controller** node.
4. **Configure:**
* Select your models from the dropdowns (these are auto-detected from your running Forge instance).
* Load your `instantid_image` (Face Reference) and `canny_image` (Edge Reference).
5. **Run:**
Connect your output and queue the prompt.
---
## 🎛️ Node Parameters
### Required Settings
| Parameter | Description |
| :--- | :--- |
| **`forge_url`** | The API URL for Forge (Default: `http://127.0.0.1:7860`). |
| **`instantid_model`** | Select the IP-Adapter model (e.g., `ip-adapter_instant_id_sdxl`). |
| **`instantid_keypoints_model`** | Select the Keypoints model. |
| **`canny_model`** | Select the Canny ControlNet model. |
| **`prompt`** / **`negative`** | Your text prompts for generation. |
| **`steps`** | Recommended: **8-12**. (8 for speed, 12 for quality). |
| **`lora_tag`** | The LoRA used for acceleration (e.g., `dmd2_sdxl_4step`). |
### Optional Inputs
* **`instantid_image`**: The reference image for facial identity.
* **`canny_image`**: The reference image for composition.
* **`weights`**: Fine-tune the influence of InstantID or Canny (`0.0` to `2.0`).
---
## ❓ Troubleshooting
**Failed to Connect?**
* Ensure Forge UI is running.
* Verify you started Forge with `--api`.
* Check that `forge_url` matches your local address.
**No Images Returned?**
* Verify that all required `.safetensors` are inside the Forge `models/ControlNet/` folder.
* Ensure the models appear in the dropdown lists.
**Dropdowns showing defaults/empty?**
* **Restart Order:** You must start Forge UI *before* starting ComfyUI (or reload the ComfyUI browser tab) so the node can fetch the model list.