SeedReam4API (单图)
The quick Seedream 4 generation node
- image
- image
- response
- image_url
This is the same Seedream 4.0 API as the multi-image node, minus the reference-image buffet. SeedReam4API (单图) takes one prompt, one optional reference image, and returns images - the node you reach for when you just want a quick t2i or a single-image edit, without 14 input sockets staring at you. If the 多图 node is the workhorse, this is the quick draw.
How it works
Identical machinery under the hood: it calls the chosen mirror's image-generation endpoint, downloads the result, and hands back a normal IMAGE tensor. The image input is where the difference lives - feed it a reference and the model treats the job as an edit or style transformation ("turn this photo into a watercolor", "same character, new outfit") rather than a from-scratch generation. Leave it empty and it's plain text-to-image. Everything else - mirror selection, resolution, aspect ratio, seed, watermark, retry logic - matches the 多图 node, so a workflow built on one ports to the other in seconds.
The inputs you'll set
- prompt - the generation or edit instruction.
- image - the single reference image (optional). This is the whole point of the 单图 variant.
- resolution - 1K / 2K / 4K; the
doubao-seedream-4-5-251128model won't do 1K, so keep 2K if you switch models. - aspect_ratio - presets plus Custom; picking Custom unlocks width/height (64–8192).
- max_images - 1–15 per call.
- watermark - defaults on, like the multi-image node.
- api_key - or use the config file /
DOUBAO_API_KEYenv var.
Outputs are image (the IMAGE tensor → Preview Image), response (raw API text for debugging), and image_url (the hosted file URL).
Install & setup
Same pack, one install for all of it:
cd ComfyUI/custom_nodes
git clone https://github.com/xuchenxu168/ComfyUI_doubao_seed
cd ComfyUI_doubao_seed
pip install -r requirements.txt
Restart, then drop your key into SeedReam4_config.json, the node's api_key field, or the environment. No model files to fetch - the model lives on ByteDance's servers (or the mirror's).
Gotchas
The single-image editing is where expectations bite. This is not a local img2img with tight denoise control - you're at the mercy of Seedream's own interpretation and ByteDance's content filter, so edits can wander and "creative freedom" requests can get refused. The README's troubleshooting list for failed generation is: filtered prompt, exhausted quota, unsupported resolution, or a malformed reference image - check those in that order. And as with the whole pack, every call costs money and your inputs leave the machine, so treat it as the API call it is, not a free local sampler.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | A beautiful landscape | — |
| mirror_site | COMBO | comfly | 3 options: comfly, t8_mirror, volcengine |
| model | COMBO | doubao-seedream-4-0-250828 | 2 options: doubao-seedream-4-0-250828, doubao-seedream-4-5-251128 (不支持1K) |
| response_format | COMBO | url | 2 options: url, b64_json |
| resolution | COMBO | 1K | 3 options: 1K, 2K, 4K |
| aspect_ratio | COMBO | 1:1 | 10 options: 1:1, 4:3, 3:4, 16:9, 9:16, 2:3, +4 |
| width | INT | 102464–8192 | — |
| height | INT | 102464–8192 | — |
| api_key | STRING | — | |
| max_images | INT | 11–15 | — |
| seed | INT | -1-1–2147483647 | — |
| watermark | BOOLEAN | true | — |
| stream | BOOLEAN | false | — |
| tail_on_partial | BOOLEAN | true | — |
| imageopt | IMAGE | — | |
| sequential_image_generationopt | COMBO | disabled | 2 options: disabled, auto |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| response | STRING | — |
| image_url | STRING | — |