Nodes/ComfyUI_faishme/Faishme Moondream
ComfyUI Node

Faishme Moondream

A Tiny Vision Model That Answers Questions About Your Image, Offline

By AkashKarnatak·Created 2 years ago·Updated about a year ago· 0
Faishme Moondream
  • image
  • STRING
question
device

Faishme Moondream is the local alternative to the pack's Gemini node: it runs Moondream2, a small open-source vision-language model, entirely on your machine, and answers a question about an image. No API key, no cloud, no data leaving your computer. You feed it an image and a question, it returns the answer as a string. It's the node to reach for when you want "what's in this image?" without paying per call or uploading anything.

How it works

On the first run the node loads vikhyatk/moondream2 (pinned to revision 2025-01-09) from Hugging Face via transformers, with trust_remote_code=True - that first load is a multi-gigabyte weight download, so have some patience and disk space. It caches the model per selected device, so switching between cuda and cpu reloads it. Then it takes the first image in your batch, feeds it your question, and returns the model's answer through the STRING output.

A couple of honest caveats about the model itself. Moondream2 is roughly a 1.7B-parameter model - it's a genuinely small VLM. It answers factual image questions well, but it's not a reasoning engine and it can be confidently wrong about fine details, text, and counting. In the wider ComfyUI community it was the go-to lightweight captioner for a while, and then Florence-2 showed up and ate its lunch on captioning speed - so if your actual job is mass-captioning a dataset, there are faster open nodes now. Where Moondream still shines is simple, on-demand QA where you don't want to spin up a bigger model.

Inputs and outputs

Three inputs:

  • image - the IMAGE to ask about. Only the first image in the batch gets queried.
  • question - your prompt, as a multiline string. Keep it concrete: "what color is the dress?" beats "describe."
  • device - cuda or cpu. On CPU the 1.7B model is workable but slow; on a GPU it's quick.

Output is a single STRING with the answer - wire it into a Show Text node to read it, or into logic that acts on it.

The dependency gotcha

This is the node where the pack's requirements.txt bites you. The code imports transformers and uses a device_map that effectively needs accelerate - and neither is listed in the pack's requirements. torch comes with ComfyUI, but transformers and accelerate may not be in your environment. If the node errors at load or on first query, install them:

cd ComfyUI/custom_nodes/ComfyUI_faishme
pip install transformers accelerate

Restart ComfyUI after. (The same requirements file lists pyvips and pandas, which this node doesn't touch - so don't go hunting for them if the model loads fine.)

Installing the pack

Search "ComfyUI_faishme" in ComfyUI Manager, or:

cd ComfyUI/custom_nodes
git clone https://github.com/AkashKarnatak/ComfyUI_faishme

Restart ComfyUI. It shows up under FaishmeNodes.

The bottom line

It's a clean, minimal wrapper around a known, respected open model. First run is heavy (download), but after that it's a genuinely useful offline vision-answer node that fits naturally next to the pack's Gemini and fashion nodes. Just don't expect Florence-2-level captioning throughput, and remember the first frame in the batch is the only one that gets asked.

CategoryFaishmeNodes

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
questionSTRING
deviceCOMBO2 options: cuda, cpu

Outputs (1)

NameTypeDescription
STRINGSTRING