Zhenzhen_Mju
Upscale One of the Four Grid Cells
- image
- taskId
If you've used Comfly_Mj and wondered why every image comes back looking like a postage stamp, this is the node you were missing. Midjourney doesn't hand you a finished high-res image on the first imagine - it gives you a 4-up grid of drafts, and you pick which one to upscale. Comfly_Mju is that "U" button, in node form.
It's pure plumbing and it's completely necessary: the MJ workflow in this pack is a two-node dance, and Mju is the second step. Skip it and you'll forever be stuck with draft-resolution grids, convinced the pack is broken. It's not - you just never told Midjourney which cell you actually wanted.
How it works
You feed it the taskId that came out of Comfly_Mj, set exactly one of the four U1–U4 toggles to true (those correspond to the four cells of the grid, top-left through bottom-right), and the node submits the upscale action to the proxy's Midjourney backend. It waits for the upscaled render and returns the finished image - along with a new taskId, because an upscaled result is itself a fresh task you could chain further.
The inputs that matter
- taskId - the string from
Comfly_Mj. This is the connection that makes the whole flow work; wire it, don't paste it. - U1 / U2 / U3 / U4 - four booleans, default all false. Turn on exactly one. Turning on two is a race with no winner; turning on none does nothing.
Outputs: image (IMAGE) and taskId (STRING - the new task, if you want to chain more actions).
There's also the standard api_key input, empty means it uses the key from Comflyapi.json.
Install
Same pack, same drill:
cd ComfyUI/custom_nodes
git clone https://github.com/ainewsto/Comfyui_Comfly
Restart, or install via ComfyUI Manager (search Comfyui_Comfly). No downloads beyond the standard requirements.txt set. Key from ai.comfly.chat in Comflyapi.json or the node's api_key.
Where people get burned
Every failure mode here is a wiring mistake. The classic: you set U1 true but forgot to connect taskId, so the node has no idea which grid to upscale - connect the wire, not your hopes. Second classic: you leave Comfly_Mj's taskId unconnected and instead paste a stale task id, and MJ has no idea what grid you mean anymore (tasks expire server-side). And the boring one: each upscale is a billed call, so preview the grid, pick your winner once, and don't upscale all four "just in case" - you'll pay for three images you'll never use.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| taskId | STRING | — | |
| U1 | BOOLEAN | false | — |
| U2 | BOOLEAN | false | — |
| U3 | BOOLEAN | false | — |
| U4 | BOOLEAN | false | — |
| api_keyopt | STRING | — | |
| skip_erroropt | BOOLEAN | false | 开启后,节点失败时不报错、按旧行为返回默认空结果;关闭时(默认)失败直接抛出错误。 |
| seedopt | INT | 00–18446744073709550000 | Execution seed for ComfyUI cache control. Fixed reuses the cached result; randomize/increment/decrement requests a new run. This compatibility seed is not sent to APIs that do not expose a native seed parameter. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| taskId | STRING | — |