Nodes/ComfyUI_Simple_Qwen3-VL-gguf/Qwen-VL Vision Language Model
ComfyUI Node

Qwen-VL Vision Language Model

That old Qwen-VL node? It's deprecated — migrate to the V2

By KLL535·Created 11 months ago·Updated 6 days ago· 92
Qwen-VL Vision Language Model
  • image
  • image2
  • image3
  • text
  • conditioning
◄system_promptYou are a highly accurate vision-language assistant. Provide detailed, precise, and well-structured image descriptions.►
◄user_promptDescribe this image.►
◄model_path►
◄mmproj_path►
◄output_max_tokens2048►
◄image_max_tokens4096►
◄ctx8192►
◄n_batch512►
◄gpu_layers-1►
◄temperature0.70►
◄seed42►
◄unload_all_modelsfalse►
◄top_p0.92►
◄repeat_penalty1.20►
◄top_k0►
◄pool_size4194304►
◄script►

Let's be direct about this one: the node is dead. Its own description says so in all caps - "THIS NODE IS NO LONGER SUPPORTED! Use 'Simple Qwen-VL Vision Language Model'." If you found this page because an old workflow uses it, the move isn't to learn it, it's to swap it.

SimpleQwenVLgguf is the legacy version of the pack's main node, kept around purely so workflows saved before the rewrite still load without a wall of red "missing node" errors. It's the first-generation design: every parameter as its own widget, no preset system, no config stack, no execution modes. The pack moved to a JSON-driven model - one config_override text field plus saved presets - because trying to expose every llama.cpp parameter as a separate ComfyUI widget turned into a monster, and the author decided the text-input approach was the future. The old node got frozen in place.

What it has

  • system_prompt, user_prompt - plain text in, no preset dropdowns.
  • model_path, mmproj_path - you type the paths yourself, every single time.
  • output_max_tokens, image_max_tokens, ctx, n_batch, gpu_layers, temperature, top_p, repeat_penalty, top_k, pool_size, seed - the old, flat parameter set.
  • image / image2 / image3 and a script override.
  • Outputs: text and conditioning.

Why you should migrate

Everything this node does, the V2 node (SimpleQwenVLggufV2) does better, with one big practical difference: the new one supports Qwen3.5, Qwen3.6, Gemma4, video, audio, and the three memory modes (subprocess, direct_clean, keep_vram) that guarantee your VRAM is clean after the model runs. The legacy node predates all of that. It also can't load your saved presets, so you'll retype paths forever.

Migration is mechanical:

  1. Drop the new Simple Qwen-VL Vision Language Model node into the workflow.
  2. Copy your model paths into its config_override (or better, save them as a model preset in system_prompts_user.json so you never type them again).
  3. Move system_prompt and user_prompt text to the new node's fields.
  4. Reconnect text to whatever the old node fed.

Install

It ships in the same pack as the V2 node - ComfyUI Manager (search ComfyUI_Simple_Qwen3-VL-gguf) or:

cd ComfyUI/custom_nodes
git clone https://github.com/KLL535/ComfyUI_Simple_Qwen3-VL-gguf

The pack's real dependency, a Qwen3-capable build of llama-cpp-python from the JamePeng fork, applies here too since the legacy node runs the same engine underneath.

One honest caveat: old workflows break for a reason, and the reason here is that keeping both code paths maintained costs time the author would rather spend on the new node. If your old workflow still runs and you're happy, fine. But don't build anything new on it - you'd be adopting a node whose next update might remove it entirely.

Category🌐 SimpleQwenVL

Inputs (20)

NameTypeDefaultDescription
system_promptSTRINGYou are a highly accurate vision-language assistant. Provide detailed, precise, and well-structured image descriptions.—
user_promptSTRINGDescribe this image.—
model_pathSTRING—
mmproj_pathSTRING—
output_max_tokensINT204864–4096—
image_max_tokensINT40961024–1024000—
ctxINT81921024–1024000—
n_batchINT51264–1024000—
gpu_layersINT-1-1–100—
temperatureFLOAT0.700–2—
seedINT42—
unload_all_modelsBOOLEANfalse—
top_pFLOAT0.920–1—
repeat_penaltyFLOAT1.201–2—
top_kINT00–32768—
pool_sizeINT41943041048576–10485760—
imageoptIMAGE—
image2optIMAGE—
image3optIMAGE—
scriptoptSTRING—

Outputs (2)

NameTypeDescription
textSTRING—
conditioningCONDITIONING—