Nodes/ComfyUI-Youtu-VL/Youtu-VL (Advanced)
ComfyUI Node

Youtu-VL (Advanced)

Same Youtu-VL, but now you get to twiddle temperature

By 1038lab·Created 7 months ago·Updated 7 months ago· 14
Youtu-VL (Advanced)
  • image
  • text
modelYoutu-VL-4B-Instruct
quantizationNone (FP16)
attention_modeauto
deviceauto
preset_prompt🖼️ Describe Image
custom_prompt
max_tokens512
temperature0.10
top_p0.001
repetition_penalty1.05
keep_model_loadedtrue
seed1

This is AILab_YoutuVL with the training wheels off. Same Tencent Youtu-VL 4B model, same transformers engine, same six preset prompts, same single text output - but where the standard node hardcodes its sampling at temperature 0.1 and top_p 0.001, this one lets you turn the knobs. If you never want creative output from a captioner, you don't need this node. If you've ever wanted a vision model to answer a question in two different ways, or to try again because the first answer was too terse, this is the one.

What's actually new

Honestly, the defaults are the right call for most jobs. A LoRA caption or an OCR pass wants the most deterministic, focused output you can get - 0.1–0.4 temperature, and the default top_p of 0.001 is near-greedy on purpose. The point of the Advanced node is the when it's not: visual QA where a bit of variety helps, brainstorming an art direction from a reference image, or any time the "Analyze Elements" preset gives you a list that's too dry. Crank temperature to 0.7+ and Youtu-VL stops being a stenographer and starts offering opinions.

  • temperature - 0.1–0.4 is focused, 0.7+ is creative. Default 0.1.
  • top_p - nucleus sampling cutoff, default 0.001 (extremely conservative).
  • repetition_penalty - 1.05 default; push toward 1.1–1.2 if output loops on the same phrase.
  • device - auto / cuda / cpu / mps. Auto picks based on what it detects; forcing cpu is there for when you want to free the GPU for sampling.
  • max_tokens - raised to 32768, so a genuinely long detailed description won't get clipped the way the standard node's 4096 cap can.

Everything else carries over

model (only Youtu-VL-4B-Instruct is offered), quantization (FP16 / 8-bit / 4-bit), attention_mode (auto / flash_attention_2 / sdpa), the six preset_prompt options, custom_prompt override, keep_model_loaded, seed, and the optional image input. Output is a single text string. First run still downloads ~8GB to models/LLM/Youtu-VL, and the same VRAM auto-step-down (FP16 → 8-bit → 4-bit) applies.

Installation

Identical to the rest of the pack - ComfyUI Manager ("ComfyUI Youtu-VL", publisher 1038lab) or clone + pip install -r requirements.txt:

cd ComfyUI/custom_nodes/
git clone https://github.com/1038lab/ComfyUI-Youtu-VL.git
cd ComfyUI-Youtu-VL
pip install -r requirements.txt

The same transformers>=4.56.0 floor applies; if it won't import, your transformers is too old.

One caveat that matters

The extra knobs don't fix the pack's Apple Silicon problem. The community-documented failure on macOS is in the attention path ('sdpa' exception during processing), so forcing device: cpu or device: mps here is not a workaround - if you're on a Mac, use the GGUF nodes instead, where inference runs through llama.cpp and actually works. Also remember Youtu-VL's Tencent license is non-commercial and not intended for EU use, whichever node you pick.

Category🧪AILab/YoutuVL

Inputs (13)

NameTypeDefaultDescription
modelCOMBOYoutu-VL-4B-InstructSelect the Youtu-VL model. First run downloads weights to models/LLM/Youtu-VL.
quantizationCOMBONone (FP16)Precision vs VRAM. FP16 gives best quality; 8-bit suits 8-16GB GPUs; 4-bit fits 6GB or less.
attention_modeCOMBOautoauto tries flash-attn v2 when available, falls back to SDPA.
deviceCOMBOauto4 options: auto, cuda, cpu, mps
preset_promptCOMBO🖼️ Describe ImageBuilt-in instruction for how Youtu-VL should analyze the input.
custom_promptSTRINGOptional override - replaces preset template when filled.
max_tokensINT51264–32768Maximum number of new tokens to generate.
temperatureFLOAT0.100.01–2Sampling randomness. 0.1-0.4 is focused, 0.7+ is creative.
top_pFLOAT0.0010.001–1Nucleus sampling cutoff. Lower values keep only top tokens.
repetition_penaltyFLOAT1.050.5–2Values >1 penalize repeated phrases.
keep_model_loadedBOOLEANtrueKeep model in VRAM after run for faster subsequent inference.
seedINT11–4294967295Seed for reproducible results.
imageoptIMAGE

Outputs (1)

NameTypeDescription
textSTRING