Qwen 3.5 (WaveSpeed API)
Qwen 3.5 with no local GPU — this one's a cloud API, and yes, that's a different WaveSpeed
- image
- RESPONSE
- THINKING
First, the naming trap, because it will bite you if you search for help: this node calls WaveSpeed AI (wavespeed.ai), a cloud LLM/API provider. It has nothing to do with Comfy-WaveSpeed, the popular ComfyUI acceleration extension that speeds up Flux and video generation. Same word, two completely different things. This node is the "no GPU needed" member of the Qwen 3.5 pack - because it runs nothing locally. Your prompt, and optionally your image, go over the wire to WaveSpeed's OpenAI-compatible API, and the answer comes back as a string.
Why would you want that in a local-first tool like ComfyUI? Two honest reasons. One: your machine can't run the big models - the dropdown tops out at Qwen3.5-397B-A17B, which is not fitting in your VRAM this decade. Two: you're already paying for an API and want the answer inside the graph instead of pasting back and forth from a web chat. If you have a decent GPU, the other two nodes in this pack are local, free, and fast enough; this one is for when they aren't.
How it works
Under the hood it's an OpenAI client pointed at WaveSpeed. You need a key - set the WAVESPEED_API_KEY environment variable or paste it into the node's api_key input, which overrides the env var. That's the one setup step, plus pip install openai.
Images are handled two ways. The image input resizes to a max 1024px side and base64-encodes it into the request; the image_url input sends a URL directly and the tooltip says it's preferred - no base64 bloat, and the API fetches it server-side. Both optional.
The inputs that matter
- model - 7 options. The tooltip embeds pricing per million tokens: Qwen3.5-35B-A3B at $0.16/$1.30 (input/output) is the cheap pick, 27B is $0.20/$1.60, 122B-A10B is $0.26/$2.10, and 397B-A17B is $0.39/$2.30 for "best quality." Default is 27B.
- thinking - on by default; maps to
reasoning_effort: medium. The tooltip is straight with you: turn it off for faster, cheaper responses. If you're captioning in bulk, off is usually the right call. - prompt / system_prompt / max_tokens - the usual chat-completion controls.
Outputs are the same as the rest of the pack: RESPONSE (the answer) and THINKING (the reasoning, when thinking is on). Both feed any text display node.
Installing
cd ComfyUI/custom_nodes
git clone https://github.com/DanielBartolic/ComfyUI-Qwen3.5.git
pip install -r ComfyUI-Qwen3.5/requirements.txt
pip install openai
That's genuinely it - no llama.cpp build, no multi-gigabyte model download, no bitsandbytes. ComfyUI Manager can install the pack itself (search "Qwen3.5"), but the README calls for openai separately, so check your environment if requests fail with a module error.
Where people get burned
- No key, no response - the node needs a WaveSpeed account and API key first; that's an account signup, not a model download.
- It costs money - every run is metered per token, and thinking mode quietly adds a reasoning pass before the answer. Watch the bill if you batch thousands of captions.
- It's a third-party service - your prompts and images leave your machine, so treat it like any hosted API: don't send anything you wouldn't want on someone else's server.
- Wrong WaveSpeed - if you came here looking for the acceleration extension, that's
chengzeyi/Comfy-WaveSpeedon GitHub, a different project entirely.
For a quick test, leave the defaults (27B, thinking on), wire RESPONSE to a PreviewAny, and ask it to describe an image you loaded. If the answer's slower than you'd like, flip thinking off and try the 35B-A3B - that's the cheapest way to see if this node fits your workflow at all.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | Qwen3.5-27B | WaveSpeed model. 35B-A3B: $0.16/$1.30 per M tokens. 27B: $0.20/$1.60. 122B-A10B: $0.26/$2.10. 397B-A17B: $0.39/$2.30 (best quality). |
| prompt | STRING | Describe this image in detail. | Text prompt for the model |
| system_prompt | STRING | Optional system prompt | |
| max_tokens | INT | 409664–81920 | Maximum tokens to generate |
| temperature | FLOAT | 1.000–2 | Sampling temperature. Thinking: 1.0, instruct: 0.7 |
| top_p | FLOAT | 0.950–1 | Nucleus sampling. Thinking: 0.95, instruct: 0.8 |
| top_k | INT | 201–100 | Top-K sampling |
| thinking | BOOLEAN | true | Enable thinking/reasoning mode (reasoning_effort: medium). Disable for faster, cheaper responses. |
| api_key | STRING | WaveSpeed API key. Leave empty to use WAVESPEED_API_KEY env var. | |
| imageopt | IMAGE | Single image input (resized + base64 encoded) | |
| image_urlopt | STRING | Image URL — sent directly to API, no base64. Preferred over image input. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| RESPONSE | STRING | — |
| THINKING | STRING | — |