LazyPrompt — Vision Describe
Turn any frame into a scene caption, locally
- image
- scene_context
LazyPrompt - Vision Describe is a captioner that runs Qwen2.5-VL locally and turns whatever image you feed it into a block of scene text - then hands that text to LazyPrompt's Prompt Engineer so the LLM writes about what's actually in your frame instead of hallucinating a scene from a two-word prompt. Wire an image in, get a scene_context string out. That's the whole job, and it's quietly the most useful part of the LazyPrompt trio for image-to-video work.
Why you'd want it: when you're starting from a reference frame, the description the vision model writes is authoritative. Feed it into Prompt Engineer's scene_context and the expansion is grounded - the character, the lighting, the framing are already described, so the LLM isn't inventing them from scratch. The caption prompt is written to be honest about what's visible, right down to the camera angle and time of day.
How it works
Connect any IMAGE (Lazy Image Loader, Load Image, whatever). Pick model_name - two local Qwen2.5-VL options, both abliterated for unflinching captions:
- Qwen2.5-VL-3B - Fast (huihui abliterated) - the default. About ~6GB VRAM, quick.
- Qwen2.5-VL-7B - Better NSFW (prithiv caption) - slower, and the author's notes say it's often better on explicit content.
First run downloads the weights from Hugging Face - that's a real multi-GB download, so budget the time and disk. offline_mode makes it use only the local HF cache (turn it on after the download finishes, or the node can't find anything), and local_path lets you point at a snapshot folder to pin an exact model install instead of whatever the dropdown resolves to.
The single output is scene_context, and it's a plain STRING - it'll drive any string input, but its intended home is LazyPrompt Engineer's scene_context socket. It's one-shot per run; ComfyUI re-runs it when the input image changes, and the model stays cached in VRAM between runs (that's why ~6GB of headroom matters).
Install and the heavy lift
Install with the whole pack: ComfyUI Manager → search vsaan212/Vsaan212-workflow-utilities, or clone into custom_nodes and restart. This is one of the two nodes in the pack that genuinely needs the heavy requirements.txt deps - transformers, qwen-vl-utils, accelerate - so expect Manager to install packages on first setup. No API key anywhere; it's 100% local.
Where people get burned
offline_modeon before the first download → nothing loads, because there's no cache yet. Turn it on after a successful run.- Caption looks wrong or generic → try the 7B model. The 3B is fast and mostly fine, but the 7B was tuned specifically for caption quality on explicit imagery.
- VRAM pressure → the vision model and a resident 8B prompt LLM don't share a 8GB card gracefully. The pack's LazyPrompt - Unload local model node won't touch the vision model's cache, but switching to LM Studio for the text side frees local HF slots.
If you're only ever describing one frame per project, the honest take is that this is a lot of VRAM for a caption you could paste yourself - but once you're iterating over many reference frames, not having to type any of them is the entire point.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Starting frame for I2V / reference for grounding. | |
| model_name | COMBO | Qwen2.5-VL-3B — Fast (huihui abliterated) | 3B ~6GB VRAM; 7B slower, often better on explicit captions. |
| offline_mode | BOOLEAN | false | Use local cache only when ON. |
| local_path | STRING | Optional local snapshot folder; overrides HF id. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| scene_context | STRING | — |