ComfyUI - OSX

ComfyUI is a node-based implementation of Stable Diffusion. It can be confusing at first, but it’s extremely powerful. It’s arguably one of the best UI for rendering images for SDXL.

https://github.com/comfyanonymous/ComfyUIopen in new window

Installation

Read the official docs, but this is what I’d do in a Mac environment. If you’re not a geek and don’t know what these things are, then follow the official docsopen in new window instead. These are setups that I would recommend for other geeks you are familiar with setting up custom environments for development. If you use my setup instead of what’s outlined in the official docs, it might be harder for them to support you.

Make a Stable Diffusion folder

I like to keep all my Stable Diffusion things in a folder called sd in my home directory. You don’t have to. You can install this anywhere you like.

mkdir ~/sd

Change folder

cd to the folder where you’d like to install ComfyUI. This can be anywhere, but I made an sd folder so I’ll just use that.

cd ~/sd

Clone the repo

git clone https://github.com/comfyanonymous/ComfyUI.git

Create a new virtualenv for comfy

pyenv virtualenv 3.10.9 comfy

Switch to the new virtualenv

pyenv shell comfy

Install Pytorch Nightly.

Read Accelerated PyTorch Training on Macopen in new window

pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu

Copy your models the model folders

  • Checkpoint models: ~/sd/ComfyUI/models/checkpoints
  • VAE: ~/sd/ComfyUI/models/vae

Alternatively, you can have Comfy look at other folders for models, if you put them in a centralized location, by editing this file:

extra_model_paths.yaml

install dependencies

pip install -r requirements.txt

Launch ComfyUI

python main.py --force-fp16

You can optionally set an output folder. This is especially useful if you prefer saving files outside of your main folder, and sync to somewhere else, e.g. Dropbox.

python main.py --force-fp16 --output-directory ~/Dropbox/StableDiffusion/outputs-comfyui

Workflow

Using ComfyUI with SDXL can be daunting at first if you have to come up with your own workflow. Thankfully, some people have made this much easier by publishing their own workflow and sharing them

SeargeSDXL

This is by far the best workflow I have come across. I highly recommend it. It utilizes all the features of SDXL.

https://github.com/SeargeDP/SeargeSDXLopen in new window

SeargeSDXL is both a workflow and a collection of custom nodes. To install any custom modes, clone the repo into the custom nodes folder.

Assuming that you follow the same folder structure on this page, you can follow the steps below.

# cd into the custom nodes folder
cd ~/sd/ComfyUI/custom_nodes

# clone the repo
git clone https://github.com/SeargeDP/SeargeSDXL.git

# Stop ComfyUI if it’s already running

# Start ComfyUI
python main.py --force-fp16

But how do you use the workflow after restart? You’ll need to load the workflow. To do that, simply drag the workflow JSON file into the window. You’ll find the latest workflow JSON file in the folder you’ve just cloned. Version 3.4 is the latest as of this writing, and it’s located here:

~/sd/ComfyUI/custom_nodes/SeargeSDXL/workflow/Searge-SDXL-Reborn-v3_4.json

Via GUI

  • Open Finder
    • Press Command + Shift + G to open by path
    • Paste ~/sd/ComfyUI/custom_nodes/SeargeSDXL/workflow
    • Press Enter
  • Drag the JSON into the ComfyUI window

Via the Terminal

### This opens a finder with the path containing the JSON fie
open ~/sd/ComfyUI/custom_nodes/SeargeSDXL/workflow
  • Drag the JSON into the ComfyUI window

Load workflow with images

ComfyUI also saves the entire workflow into the source images, so you can actually load complete workflows from the images themselves!

There are a collection of imagesopen in new window on the ComfyUI_examples repoopen in new window — When you drag these images into the ComfyUI window, you’ll load the entire workflow. Quite genius if you ask me.

Last Updated: