Nodes/Quality of Life Nodes for ComfyUI/ModelArk Seedream Images (Soze)
ComfyUI Node

ModelArk Seedream Images (Soze)

Image Gen and Editing Via BytePlus ModelArk

By SozeInc·Created 2 years ago·Updated 8 days ago· 10
ModelArk Seedream Images (Soze)
  • image_batch
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • image_7
  • image_8
  • image_9
  • image_10
  • images
  • image_urls
  • image_count
  • model_id
  • status
model_versionseedream-5.0-lite
prompt
size2K
num_images1
seed0
watermarkfalse
response_formaturl
model_id_override
size_override
guidance_scale0.0
negative_prompt
sequential_image_generationdisabled

Seedream is ByteDance's answer to the "I want a hosted flagship image model without renting a cloud GPU" problem, and this node is a single entry point to four generations of it: 4.0, 4.5, 5.0 Lite, and 5.0 Pro. Text-to-image is the headline, but the real trick is that it's also an editing node - connect reference images and the model blends, edits, or reworks them according to your prompt, all through BytePlus ModelArk's hosted API. Like the other API nodes in this pack, it needs no local model and no VRAM; it needs an ARK_API_KEY and a tolerance for paying per call.

The inputs that matter

  • model_version - the dropdown: seedream-4.0, seedream-4.5, seedream-5.0-lite (default), seedream-5.0-pro. Bigger number isn't automatically better for your job; Lite is cheap and fast, Pro is the expensive one you reach for when you need it.
  • prompt - the whole job. negative_prompt is optional.
  • size - presets from 1024×1024 up to 4K. Two escape hatches if the presets don't fit your aspect: size_override takes an arbitrary string like 2048x1152, and model_id_override lets you paste a specific dated model id from your BytePlus console when ByteDance ships a new revision your preset doesn't know about yet. Those overrides are the "the API moved on, this node didn't" insurance.
  • num_images - 1 to 15, maps to the API's n.
  • seed - 0 means ModelArk picks; anything up to 2^32 is honored.
  • watermark - off by default. On if you need the branded output; most people leave it off.
  • response_format - url (default) or b64_json. Unless you specifically need base64, leave it on url.

Reference editing lives on the optional side: image_1 through image_10 (individual slots, they override) or image_batch (auto-fanned, capped at ten). Connect one or more and the node uploads them to FAL's CDN so ModelArk can fetch them - which, as with the Seedance node, means reference runs also need FAL_KEY in addition to ARK_API_KEY. Text-only generation doesn't need it; the moment you plug an image in, you do.

Outputs

images (a real IMAGE batch you can save or feed onward), image_urls, image_count, model_id (the resolved model id, so you can see which dated revision actually ran), and status.

Honest notes

There's a guidance_scale (0–20) where 0 means "use the server default" (typically ~7.5) - most people should leave it at 0 and not fight the platform defaults. And sequential_image_generation with auto lets the model emit multiple images sequentially; pair it with num_images if you want that behavior. The two failure modes that actually bite are the missing FAL key on reference runs and a blank prompt - the latter short-circuits cleanly without spending a call, so at least one of them is friendly.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/SozeInc/ComfyUI_Soze.git
pip install -r ComfyUI_Soze/requirements.txt

Then export ARK_API_KEY (and FAL_KEY for editing runs). If you're coming from the pack's other BytePlus node, the billing model and key are the same - one account, one key, Seedream for images and Seedance for video both behind it.

CategoryModelArk/ImageGeneration

Inputs (23)

NameTypeDefaultDescription
model_versionCOMBOseedream-5.0-lite4 options: seedream-4.0, seedream-4.5, seedream-5.0-lite, seedream-5.0-pro
promptSTRING
sizeCOMBO2KPreset or use model_id_override + a custom size_override.
num_imagesINT11–15Maps to `n` (and sequential_image_generation_options.max_images).
seedINT00–42949672960 = let ModelArk choose. Max 4294967296 (2^32) per ModelArk API.
watermarkBOOLEANfalse
response_formatCOMBOurl2 options: url, b64_json
model_id_overrideoptSTRINGPaste a specific dated model id (e.g. seedream-4-0-250828). Overrides model_version.
size_overrideoptSTRINGIf set, replaces `size`. e.g. '2048x1152' for a custom aspect.
guidance_scaleoptFLOAT0.00–200 = use server default (typically ~7.5).
negative_promptoptSTRING
sequential_image_generationoptCOMBOdisabledauto = let model emit multiple images sequentially.
image_batchoptIMAGEOptional IMAGE batch (capped at 10 frames). Ignored if any image_N slot is connected.
image_1optIMAGEReference image slot 1. Overrides image_batch when connected.
image_2optIMAGEReference image slot 2. Overrides image_batch when connected.
image_3optIMAGEReference image slot 3. Overrides image_batch when connected.
image_4optIMAGEReference image slot 4. Overrides image_batch when connected.
image_5optIMAGEReference image slot 5. Overrides image_batch when connected.
image_6optIMAGEReference image slot 6. Overrides image_batch when connected.
image_7optIMAGEReference image slot 7. Overrides image_batch when connected.
image_8optIMAGEReference image slot 8. Overrides image_batch when connected.
image_9optIMAGEReference image slot 9. Overrides image_batch when connected.
image_10optIMAGEReference image slot 10. Overrides image_batch when connected.

Outputs (5)

NameTypeDescription
imagesIMAGE
image_urlsSTRING
image_countINT
model_idSTRING
statusSTRING