Modelverse Qwen Image
The Modelverse text-to-image node
- client
- image
Alibaba's Qwen Image is one of the more interesting entries in the crowded text-to-image space - Tongyi Lab shipped it as the open-ish counterpart to models like Flux, and it's especially good at text rendering and following fiddly multi-part prompts. Modelverse Qwen Image is UCloud's hosted version of it, exposed as a ComfyUI node. You type a prompt, it returns a proper IMAGE tensor that plugs straight into your existing graph - no local model, no GPU, no checkpoint download.
That last bit is the whole point. The KB's Alibaba Tongyi panel makes the case: Alibaba became the community default because it shipped open weights. Here you get the hosted variant instead, which trades away local control for "it just runs." If you already have a Qwen Image checkpoint locally, you probably don't need this node. If you're on a laptop or a rented machine with no GPU headroom, it's a zero-install way to add a genuinely good T2I model to your workflows.
The inputs that matter
The node needs a client from the Modelverse Client or Secret Client node - the pack's universal wiring. After that:
prompt- the star. Qwen Image is a native text-to-image model, so this is a descriptive prompt, not a tag soup.aspect_ratio- pick from nine ratios, from ultra-wide21:9to tall9:21. Default1:1.num_requests(1–10) andnum_images(1–4) - here's the subtle part.num_requestsfires that many separate concurrent API calls, each with a bumped seed, producing a batch of variation images.num_imagesasks for multiple images in a single call. Either way the node concatenates everything into one batchedIMAGEoutput. For quick grids, cranknum_requests; for a single multi-image result,num_images.steps(default 20),guidance_scale(default 2.5),seed(-1for random), and an optionalnegative_prompt.
There's also response_format (url or b64_json). The default url makes the node download each result URL and convert it to a tensor; b64_json decodes inline base64 instead. Both end in the same image output - this is mostly an internal detail unless you're debugging, but url is what you want in normal use.
How it works under the hood
The node hits Modelverse's /v1/images/generations endpoint (the OpenAI-style image API), building one request per variation and firing them concurrently with asyncio.gather. So a num_requests of 4 means four parallel API calls, not a local batch loop - it's fast but it's also four times the credits in one go. Worth remembering before you set it to 10 on a whim.
Install and run
The pack installs once for all these nodes: ComfyUI Manager → search "ComfyUl-UCloud" → Install → restart, or git clone https://github.com/ucloud/comfyui-plugin into custom_nodes. Dependencies are light (requests, pillow, numpy, openai) and there's nothing to download beyond the code.
You'll need a Modelverse API key from the console, and remember this is metered - every request costs credits. The output image wires into anything that takes an IMAGE: a preview, a save node, a VAE decode, or straight into an image-to-video node downstream. That last one - Qwen Image generating a still, then Wan or Vidu animating it - is the workflow where this node really earns its keep.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| client | MODELVERSE_API_CLIENT | — | |
| prompt | STRING | a beautiful flower | — |
| aspect_ratio | COMBO | 1:1 | 9 options: 21:9, 16:9, 4:3, 3:2, 1:1, 2:3, +3 |
| num_requests | INT | 11–10 | — |
| num_images | INT | 11–4 | — |
| steps | INT | 201–50 | — |
| seed | INT | -1-1–18446744073709550000 | — |
| guidance_scale | FLOAT | 2.51–10 | — |
| response_format | COMBO | url | 2 options: url, b64_json |
| negative_promptopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |