ComfyUI Node

Dalle Image Variation

Remix an image with the API, not a new seed

By cleanlii·Created about a year ago·Updated about a year ago· 1
Dalle Image Variation
  • image
  • IMAGE
size
n1

Remix an image with the API, not a new seed

Dalle Image Variation is the pack's lightest node and the one I'd actually reach for most: hand it an image and it comes back with a variation - same subject, different take - instead of a fresh render. It's the ComfyUI-native version of OpenAI's "this image, but again" button.

Why you'd reach for it

Locally, a "variation" usually means a new seed, which changes everything at once. The API's variation tends to hold the subject and mood while shifting composition and details - a decent "explore around this image" tool, or a way to reinterpret a local render without rewriting the prompt. Same economics as the other two nodes in this pack: a few cents a shot, no GPU involved.

How it works

Thin and honest. It takes the first frame of image, converts it to RGBA, resizes it to your chosen size, saves it to /tmp/variant_image.png, and calls create_variation. As with the edit node, no model is passed, so the SDK default (dall-e-2) handles the work - meaning it's the older model doing this, not DALL·E 3.

Inputs and output

  • image - what to remix.
  • size - the usual three options, but only 1024x1024 is accepted by the variation endpoint. Keep it square.
  • n - 1 to 4; here it genuinely works (the API allows it) and just costs more per image.

The IMAGE output drops straight into your regular saving or upscaling chain.

Install & gotchas

Same pack as the other two - Manager search "DalleImageNodes" or:

cd ComfyUI/custom_nodes
git clone https://github.com/cleanlii/comfyui-dalle-integration

then python -m pip install openai and a real key in config.json (auto-created with a placeholder on first load - replace it or every call 401s). Two things to watch:

  • Only image[0] is used - feed it a single image, not a batch.
  • The node resizes your input to the target size before sending, so a non-square image gets squished rather than rejected. Pick the aspect you actually want instead of trusting the API to complain.

If the node doesn't appear in the menu after restart, the pack folder didn't load - check that config.json and prompt_log.txt exist next to DalleImageNodes.py. Single-commit repo from April 2025, unmaintained since, but this one is simple enough that it just keeps working.

CategoryOpenAI/Dalle

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
sizeCOMBO3 options: 1024x1024, 1024x1792, 1792x1024
nINT11–4

Outputs (1)

NameTypeDescription
IMAGEIMAGE