DownloadAndLoadQwen2_5_VLModel
Download the model and hold it in VRAM
- Qwen2_5_VL_model
This is the node you'll place first in any graph built on MakkiShizu's ComfyUI-Qwen2_5-VL pack, and the only one that actually touches Hugging Face. Qwen2.5-VL is Alibaba's Apache 2.0 vision-language model - the family that reads images, video, and text and answers in natural language - and this loader is what turns it into something a ComfyUI graph can talk to. It downloads the weights the first time you run it, loads them into memory, and hands the loaded model to the inference nodes. If you've used DownloadAndLoadFluxModel or any of the other loader nodes, the shape is familiar: pick a checkpoint, set a couple of options, wire the model output onward.
How it works
The node is the "Download and load" part of its own name. On first run it calls snapshot_download from huggingface_hub and pulls the whole repo into ComfyUI/models/VLM/<model-name> - note the models folder, not custom_nodes, so a fresh install has nothing until you actually queue the graph. After that it loads the model with Qwen2_5_VLForConditionalGeneration.from_pretrained(...) using device_map="auto", which spreads layers across your VRAM and system RAM as needed. The 3B model's ~6 GB of bf16 weights fit comfortably on a 6-8 GB card; the 7B needs roughly 13 GB at full precision, and the 72B is a server-side proposition no matter what you do. That's why the README's VRAM table is worth a glance: at bf16 the 7B wants ~13 GB, but INT8 drops it to ~6.6 GB and INT4 to ~3.3 GB (roughly, and always more in practice - the author notes real usage runs ~1.2x the theoretical minimum).
The inputs that matter
There are exactly three, and for most people only the first two get touched:
- model - a dropdown with eight choices:
Qwen/Qwen2.5-VL-3B-Instruct(the default), the 7B, 32B, and 72B, each with an-AWQvariant. If you're on a consumer GPU, the 3B is the sane default and the 7B is the upgrade path; the AWQ builds are pre-quantized 4-bit checkpoints if you want them. - quantization -
none,4bit, or8bit, defaulting to8bit. These map toload_in_8bit/load_in_4bitunder the hood, which means this node silently depends on bitsandbytes being installed. 8-bit is the sensible middle: near-fp16 quality at roughly half the VRAM. - attention -
flash_attention_2,sdpa, oreager, defaulting tosdpa. Leave it.flash_attention_2only helps if you've separately installed theflash-attnpackage, and on modern cards SDPA is fast enough that the extra dependency isn't worth it.
The single output is Qwen2_5_VL_model, a custom type you feed into the Qwen2_5_VL_Run or Qwen2_5_VL_Run_Advanced node's matching input. Nothing else in ComfyUI can consume it, so it doesn't branch anywhere else.
Installing the pack
Search "ComfyUI-Qwen2_5-VL" in ComfyUI Manager and install, or clone it by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/MakkiShizu/ComfyUI-Qwen2_5-VL
cd ComfyUI-Qwen2_5-VL
pip install -r requirements.txt # portable: python_embeded\python.exe -m pip install ...
The requirements are light - qwen-vl-utils plus transformers>=4.49.0 - but they install into the same shared Python environment as everything else, so an old transformers from another node can bite you. If you hit an import error on startup, check pip show transformers and upgrade. You'll also want bitsandbytes in that same environment for the default 8-bit quantization, and the first queue is slow: the model download is several gigabytes and there's no progress bar in the graph, just a hanging "Running" state.
Where people get burned
The README says it plainly: "when using too small a model or quantization, the model may speak nonsense." A 3B at 4-bit will confidently describe things that aren't there. If your captions look hallucinated, the fix is usually a bigger model or less aggressive quantization, not a better prompt. And remember the weights land in models/VLM/, so if you ever reinstall ComfyUI the model redownloads even though your custom_nodes folder is untouched.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | Qwen/Qwen2.5-VL-3B-Instruct | 8 options: Qwen/Qwen2.5-VL-3B-Instruct, Qwen/Qwen2.5-VL-3B-Instruct-AWQ, Qwen/Qwen2.5-VL-7B-Instruct, Qwen/Qwen2.5-VL-7B-Instruct-AWQ, Qwen/Qwen2.5-VL-32B-Instruct, Qwen/Qwen2.5-VL-32B-Instruct-AWQ, +2 |
| quantization | COMBO | 8bit | 3 options: none, 4bit, 8bit |
| attention | COMBO | sdpa | 3 options: flash_attention_2, sdpa, eager |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| Qwen2_5_VL_model | QWEN2_5_VL_MODEL | — |