ComfyUI
The image renderer behind darkroom, atlas bakes and proof's evaluation runs. Darkroom needs a websocket output node and two of its own custom nodes, which a stock install lacks.
Used by
Official guides
- ComfyUI on GitHub (opens in new tab)
- System requirements (opens in new tab)
- Manual install (opens in new tab): also the `models/` folder layout
- Custom nodes (opens in new tab)
Minimal setup
-
Install ComfyUI and start it (
python main.py --listen). Use--listenso containers can reach it. It listens on port 8188. -
Put your checkpoints and LoRAs in its
models/tree (see Checkpoints and LoRAs). -
Point each client at it. The variable names and defaults differ:
For a ComfyUI on another machine, use
http://<GPU_HOST>:8188.
Darkroom's nodes
Darkroom receives images over ComfyUI's websocket, so a stock install needs two additions.
-
SaveImageWebsocketships with ComfyUI as an example node (custom_nodes/websocket_image_save.py). Check that it's loaded:curl http://localhost:8188/object_info/SaveImageWebsocket -
DarkroomLoadImageBase64andDarkroomLoadMaskBase64are needed only for image-to-image and inpainting. They live in darkroom's repo, outside the Python package. Copy the file in and restart ComfyUI:cp argus-darkroom/comfyui/darkroom_load_image_base64.py <ComfyUI>/custom_nodes/ curl http://localhost:8188/object_info/DarkroomLoadMaskBase64If you copied an older version before the mask node existed, copy it again.
Atlas's workflow
Atlas's starter workflow template names an SDXL depth ControlNet. Swap in one your ComfyUI actually has. See the ComfyUI workflow template (opens in new tab).