Nodes/ComfyUI-nkxx/Wujiai 通用生图 (同步)
ComfyUI Node

Wujiai 通用生图 (同步)

One node, every Wujiai image model — Gemini, Nano Banana, Grok, GPT, Seedream

By nkxx188·Created 11 months ago·Updated 6 months ago· 14
Wujiai 通用生图 (同步)
  • images
  • image
  • report
model_namegemini-3.1-flash-image-preview
promptA cyberpunk cat
aspect_ratio1:1
image_size默认
sequential_modedisabled
max_images15
n1
concurrency1
api_key

This is the flagship of the Wujiai side of the ComfyUI-nkxx pack: one node that fronts a whole catalog of closed image models through the Wujiai gateway. Change the model_name and the same node talks to Gemini, Nano Banana, Grok, GPT-image, or Seedream. The README's pitch is "a single node system that unifies multiple models," and it mostly delivers - the node picks a provider by inspecting the model name and builds the right request (Gemini :generateContent style or OpenAI-compatible /v1/images/generations), then blocks until the image comes back.

Inputs:

  • model_name - free STRING, default gemini-3.1-flash-image-preview. This is the whole trick: type a different model name and you switch vendors. The pack's model list is cloud-synced (it fetches the gateway's live host/config at runtime), so new model names appear without updating the plugin.
  • prompt - multiline, default "A cyberpunk cat".
  • aspect_ratio - 1:1, 16:9, 9:16, 3:4, 4:3, 2:3, 3:2, auto, 21:9.
  • image_size - 默认 / 1K / 2K / 3K / 4K.
  • sequential_mode - disabled / auto. The tooltip says it plainly: 组图模式, i.e. "group image mode." Auto lets the model produce a composed multi-image grid from your reference inputs instead of treating them as separate stills.
  • max_images - 1–15. How many reference images get passed along.
  • n - 1–10, how many images to request per call.
  • concurrency - 1–10, how many parallel calls.
  • images (optional) - the reference IMAGE batch; the node slices it up per the max_images/n logic.
  • api_key - optional; blank uses the pack-wide Wujiai key.

Outputs: image (IMAGE tensor, ready for preview/save or as a first frame for a local video model) and report (STRING with status and your remaining balance).

Mechanically the sync path builds the request, uploads any reference images to Wujiai, and waits with a long timeout. Note it's a gateway - your images and prompts go through Wujiai's servers, so this is a paid, cloud-only workflow. There's no local model here and never will be; the point is trading a bunch of per-vendor API clients for one node.

Install is pack-wide:

cd ComfyUI/custom_nodes
git clone https://github.com/jieg9341-lab/ComfyUI-nkxx

Restart (first boot auto-installs requests, pandas, openpyxl, yt-dlp, opencv-python, aiohttp). Register a Wujiai account (wujiai.org) and put the key in the node, or set WUJIAI_KEY, or use the pack's global key manager.

Grounded gotchas:

  • The Wujiai host is resolved at runtime (a live config fetch with a cached fallback), so a first-run hiccup or a DNS/HTTPS oddity on your network can make the node fail with "动态路由获取失败" printed to the console - it falls back to a secondary channel, but if you see that and failures, check general outbound connectivity before blaming the model.
  • Different providers accept different things. Not every model honors aspect_ratio or n the same way; if a model returns oddly-shaped results, that's the model, not the node.
  • Sync means it blocks the queue for the duration of the generation - a 4K Seedream call is not instant. For batches, use the async trio.
  • This is a paid API: every call spends credits, and the report showing your balance is the pack's way of keeping you honest.
CategoryNkxx/Wujiai/Universal

Inputs (10)

NameTypeDefaultDescription
model_nameSTRINGgemini-3.1-flash-image-preview
promptSTRINGA cyberpunk cat
aspect_ratioCOMBO1:19 options: 1:1, 16:9, 9:16, 3:4, 4:3, 2:3, +3
image_sizeCOMBO默认5 options: 默认, 1K, 2K, 3K, 4K
sequential_modeCOMBOdisabled组图模式
max_imagesINT151–15
nINT11–10
concurrencyINT11–10
imagesoptIMAGE
api_keyoptSTRING

Outputs (2)

NameTypeDescription
imageIMAGE
reportSTRING