WaveSpeedAI WAN 2.5 Text-to-Image
The API-only model, one POST away
- client
- output_image
WAN is famous as a video family, but it does images too - and the 2.5 generation, like its video counterparts, never shipped weights. You can run 2.1/2.2 stills locally, but if you specifically want WAN 2.5 image quality, this node is your on-ramp: the smallest required-input set in the pack (just a client and a prompt), with everything else optional. It's the kind of node you keep around for a specific look rather than a daily driver.
What it is
A hosted WAN 2.5 text-to-image node. The bare minimum is a prompt; size defaults to 1024*1024 as a plain string (the tooltip says each dimension can range 768–1440), and there's a negative_prompt, enable_prompt_expansion, seed, and enable_sync_mode in the optional pile. Notably, size here is a free-text string rather than a dropdown - type width*height - so exact canvases are easy, but you're on your own for validation.
How it works
client from the WaveSpeedAI Client node, then a POST to the WAN 2.5 text-to-image endpoint with prompt, size, and the optional fields. The generated image downloads back as an IMAGE tensor. enable_prompt_expansion lets the API rewrite and enrich your prompt before generating - handy for fast drafts, less good when you need the output to match your words exactly. enable_sync_mode defaults off, so it submits and polls by default.
The inputs that matter
- prompt - the image to generate. WAN reads descriptive prompts well.
- size - a
width*heightstring, 768–1440 per dimension. - negative_prompt - what to avoid; useful for the usual artifacts.
- enable_prompt_expansion - auto-enhance the prompt; on for exploration, off for control.
- seed - -1 for random; fix for reproducibility.
Output name is output_image, type IMAGE.
Install & setup
cd ComfyUI/custom_nodes
git clone https://github.com/razvanmatei-sf/razv-wavespeed.git
cd razv-wavespeed
pip install -r requirements.txt
or ComfyUI Manager → "razv-wavespeed" → Install, restart. API key from wavespeed.ai in config.ini (from config.ini.tmp), the Client node, or WAVESPEED_API_KEY. Deps: requests, pillow, numpy<2.0.0, torch.
Common issues
- Size string rejected - the API expects
width*heightwith the asterisk; a plain "1024x1024" won't parse the same way. Keep the tooltip format. - Expanded prompt changed the image - that's the feature doing its job; turn it off if the output drifts from your intent.
- "No output received" - transient API error or timeout; retry.
- 401 - key issue.
The honest verdict: for general T2I, open local models are cheaper and WAN isn't the community's favorite stills model anyway. This node earns its place if you're already paying for the pack and want WAN 2.5's particular aesthetic, or if your workflow is WAN-heavy and you'd rather keep everything on one API. For everyone else, the Qwen and Nano Banana T2I nodes in the same pack are more interesting buttons.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| client | WAVESPEED_AI_API_CLIENT | — | |
| prompt | STRING | Text description for image generation | |
| sizeopt | STRING | 1024*1024 | Image resolution (width*height). Range: 768~1440 pixels per dimension |
| negative_promptopt | STRING | Describe what you don't want in the image | |
| enable_prompt_expansionopt | BOOLEAN | false | Automatically expand and enhance the prompt |
| seedopt | INT | -1-1–2147483647 | Random seed for reproducible results. -1 for random seed |
| enable_sync_modeopt | BOOLEAN | false | Wait for generation to complete before returning |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| output_image | IMAGE | — |