ComfyUI Node

Qwen2.5-VL-7B-Instruct

The image-to-text node that reads your images

By Runware·Created 2 years ago·Updated about a month ago· 140
Qwen2.5-VL-7B-Instruct
  • image
  • text
prompt

Here's the node that turns your graph into a self-describing pipeline: feed it any IMAGE and it tells you what's in it. Runware_alibaba_qwen2_5_vl_7b_instruct is Qwen's 7-billion-parameter vision-language model - the V in VL is "vision" - running in the cloud as a single ComfyUI node. One input, one STRING output, and the amount of workflow magic that unlocks is quietly enormous.

This is the captioning node. Wire an image into it, ask "describe this in detail for an image-generation prompt," and the output feeds straight into a positivePrompt socket on an image node. That single loop gives you three things people pay tools for: image-to-prompt reversal (turn a reference render into a re-generable prompt), auto-captioning batches for training sets, and a "describe what this produced" debug step that tells you whether your generation actually matches your intent. In the Runware pack's own taxonomy this is a caption task, which tells you how the author thinks of it.

How it works

Runware runs it as a caption task with the runware:152@2 model AIR - this is Qwen2.5-VL-7B-Instruct served on their side, so no weights, no VRAM, no Ollama. The node base64-encodes your IMAGE tensor, sends it up with your optional prompt, and returns the model's text. That's the whole mechanism; the sophistication is all in what you ask it.

The inputs that matter

There are only two, and that's a feature:

  • image (required) - the IMAGE tensor. It's a full image input, so it accepts generated images, loaded files, or frames from a video node.
  • prompt (optional) - the instruction. This is where the node lives or dies. "Write a detailed prompt that would regenerate this image" produces something you can loop back. "Describe the lighting and camera angle" produces an analysis. "List every object and its position" produces a structured dump. Default empty gives you a generic caption.

The output is a single text (STRING) - wire it into a prompt input, a text display, a file saver, anything.

Installing it

Install the pack, not the model. ComfyUI Manager → search Runware → install → restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Add a key from runware.ai/api-keys via ComfyUI Settings → Runware API key (or RUNWARE_API_KEY). Nothing downloads - the 7B model is served remotely.

Where people get burned

  • It's not free. Every caption is a metered cloud call with a title-bar cost. Batch-captioning 500 images is a bill, not a background task - budget accordingly.
  • The prompt controls everything. An empty prompt gets you a generic caption that's often useless for prompt-reversal. Be specific about the format you want.
  • It reads, it doesn't modify. This node returns text. If you want Qwen to edit an image rather than describe it, that's a different model - this one is the caption rung.
  • Don't loop it into itself. A caption node feeding a generation node feeding a caption node is a fun demo and a miserable way to spend API credits. Use it for one direction at a time.

Qwen2.5-VL-7B is the cheapest vision-language node in the pack and the one that most rewards a good prompt field. Give it a job, not a shrug.

CategoryRunware/Text/runware

Inputs (2)

NameTypeDefaultDescription
imageIMAGE
promptoptSTRINGInstructions or questions to guide the image analysis.

Outputs (1)

NameTypeDescription
textSTRING