AI Chat & Image Captioner
Caption images via Alibaba's DashScope (Qwen-VL)
- image
- STRING
The name undersells what this actually is: it's a DashScope client. Feed it an image and it sends that image to Alibaba Cloud's DashScope API - the Qwen vision-language models - and returns a text description. No image, and it's just a chat call to the same API. Either way, it doesn't run anything locally; it needs an Alibaba Cloud DashScope API key, and it won't do a thing without one.
Where it fits
Captioning is the unglamorous, essential half of LoRA training: a good dataset is images plus accurate text, and writing captions by hand for a hundred images is soul-crushing. Vision-language models automate it - hand them an image, get a description. This node routes that job to Qwen-VL through DashScope, which is a sensible choice given the pack's roots: DashScope is Alibaba's model service, and the Qwen/Tongyi family is strong at exactly this kind of bilingual image understanding. Wire Any File List → this node → Text Saver and you've got an auto-captioning pipeline that writes a .txt per image.
How it works
You supply a dashscope_api_key and (optionally) an image. The system_prompt sets the model's behavior and the user_prompt is your instruction - "describe this image in detail," say. It calls DashScope, the model looks at the image, and the response comes back as a string. max_tokens caps the length of that response. Because it's an API call, there's no VRAM cost on your end, but you do need network access and a working key.
The inputs that matter
- dashscope_api_key - your Alibaba Cloud DashScope key. Required. It's a credential, so strip it before sharing the workflow.
- image (optional) - the image to caption. Leave it out and the node acts as a plain text chat.
- user_prompt - your instruction to the model. The defaults ship in Chinese, so rewrite this in English if you want English captions.
- system_prompt - the model's role/behavior. Also Chinese by default.
- max_tokens (optional) - response length cap (default 512).
The single output is a STRING - the caption or reply. Send it to a Text Saver or straight into another prompt.
Common issues
The number-one error is Invalid Api-Key provided, and it's almost always one of two things: a bad key, or the wrong region endpoint. DashScope has separate international and mainland-China endpoints, and a key issued for one won't authenticate against the other - make sure your key matches the endpoint the node targets. Second, the defaults are Chinese, so if your captions come back in Chinese when you wanted English, edit user_prompt and system_prompt to English. Beyond that, it's an external paid API: it can rate-limit, cost money per call, and needs a live connection, so it's not something to bury inside a workflow you run on a tight loop. And keep the key out of any workflow you publish.
Installing ComfyUI-Addoor
ComfyUI-Addoor (葵花宝典) is a utility pack from developer Eagle-CN, and this node lives in its API group. ComfyUI Manager: Install Custom Nodes → search "ComfyUI-Addoor" → install → restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/Eagle-CN/ComfyUI-Addoor.git
cd ComfyUI-Addoor
pip install -r requirements.txt
Restart and find it under 🌻 Addoor / API. You'll need an Alibaba Cloud DashScope account and API key before it works.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| user_prompt | STRING | 请问有什么可以帮您? | — |
| system_prompt | STRING | 你是一位专业的 AI 助手,擅长图像分析和文字对话。在描述图片时,请注意细节并使用专业的术语;在对话时,保持友好和专业。 | — |
| seed | INT | 00–18446744073709550000 | — |
| dashscope_api_key | STRING | — | |
| imageopt | IMAGE | — | |
| max_tokensopt | INT | 5121–1024 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |