Nodes/ComfyUI-Prompt-MZ/MinusZone - deprecated - ImageInterrogator(BaseLLava)
ComfyUI Node

MinusZone - deprecated - ImageInterrogator(BaseLLava)

The raw-path LLaVA interrogator — old, but the pairing logic still teaches

By MinusZoneAI·Created 2 years ago·Updated about a year ago· 138
MinusZone - deprecated - ImageInterrogator(BaseLLava)
  • image
  • clip
  • llama_cpp_options
  • customize_instruct
  • captioner_config
  • text
  • conditioning
llama_cpp_model
mmproj_model
resolution512
sd_formatnone
keep_devicefalse
seed0

deprecated - ImageInterrogator(BaseLLava) is the raw-path sibling of the old LLaVA interrogator: instead of the preset dropdowns on ImageInterrogator(LLava), both the vision model and its projector are plain STRING fields where you type file paths. Per the README, these base nodes exist so you can "直接传入模型路径 / directly pass in the model path." It's the v1 escape hatch for the v1 vision node, and like every v1 node it's been superseded - here by CLIPTextEncode(ImageInterrogator) plus the manual/downloader model-config selectors.

The inputs are the v1 interrogator's minus the presets: llama_cpp_model (path to a LLaVA-capable GGUF) and mmproj_model (path to the matching projector) are both free-text. Then resolution (default 512, resize before the model sees the image), sd_format (none / v1 - a vestigial SD 1.5-era flag), keep_device, seed. Optional: image, clip, llama_cpp_options, customize_instruct, captioner_config. Outputs: text (the image description) and conditioning (only with clip wired).

The one thing worth taking from it

The mechanism is the canonical LLaVA-in-llama.cpp pattern, and it explains why vision nodes in this pack need two files at all: a base LLM that does the text generation and an mmproj projector that turns image embeddings into text tokens. The base node forces you to confront that pairing by hand - you pick both paths, and if they don't match, the output is garbage or an error. The modern ModelConfigManualSelect(ImageInterrogator) automates the pairing by SHA256 and gives you dropdowns; the downloader variant fetches both files for you. That's the upgrade path, and it's the honest recommendation: understand the two-file concept from this node, then never use it again.

Installing

Ships in the pack's v1 subpackage, always registered:

cd ComfyUI/custom_nodes
git clone https://github.com/MinusZoneAI/ComfyUI-Prompt-MZ

Restart. Needs llama-cpp-python + diskcache; the files are yours to supply, no auto-download.

Troubleshooting

Raw-path nodes fail on paths first: absolute paths, files present, correct names - there's no dropdown to save you. Then the pairing: the mmproj must be the one built for your exact base model family (a LLaVA-1.6 Mistral projector won't pair with a Llama-3 base, etc.). The pack-wide FAQ applies as always: upgrade llama-cpp-python for the LLAMA_SPLIT_MODE_LAYER error, CUDA 12.1 PyTorch for LLama.dll, network fixes for wheel-build failures. And if the interrogator produces empty or boilerplate text, it's usually a weak Q4 model or a mismatched pair - check those before blaming the node.

CategoryMinusZone - Prompt/v1

Inputs (11)

NameTypeDefaultDescription
llama_cpp_modelSTRING
mmproj_modelSTRING
resolutionINT512128–2048
sd_formatCOMBOnone2 options: none, v1
keep_deviceCOMBOfalse2 options: false, true
seedINT00–18446744073709550000
imageoptIMAGE
clipoptCLIP
llama_cpp_optionsoptLLamaCPPOptions
customize_instructoptCustomizeInstruct
captioner_configoptImageCaptionerConfig

Outputs (2)

NameTypeDescription
textSTRING
conditioningCONDITIONING