🧠 DeepSeek 智能助手
Cheap, capable, and the one that needs a key
- response
The other LLM node in this pack is the exact opposite of the Ollama one: no local model, no VRAM juggling - this one calls DeepSeek's hosted API and bills you per token. "🧠 DeepSeek 智能助手" is a thin, OpenAI-compatible chat client: paste a key, type a prompt, get a response out. The pack's README frames it as the flagship feature, and for good reason - DeepSeek's pricing is famously cheap, and their models are genuinely good at the kind of structured text work (captioning, JSON, rewriting prompts) that ComfyUI workflows want.
How it works
It uses the openai Python library pointed at DeepSeek's API (https://api.deepseek.com/v1), so it's OpenAI-compatible plumbing under the hood. Every run builds a message list - optional system_prompt, optional context (JSON chat history), then your input_str - and sends a chat.completions.create request. Responses are streamed chunk by chunk and reassembled. OUTPUT_NODE = True, and it also implements IS_CHANGED by hashing its inputs so ComfyUI doesn't waste calls re-running it when nothing changed.
Inputs that matter
api_key(STRING, password field) - from platform.deepseek.com. There's no way around it, this is the one node in the pack that needs money and a key.model-deepseek-chat(default),deepseek-reasoner, ordeepseek-coder. Fair warning:deepseek-coderis a legacy/retired model - DeepSeek's current line is chat (V3) and reasoner (R1). Choosedeepseek-chatunless you have a specific reason not to.input_str- your prompt. Multiline.temperature,max_tokens(1–4096, default 512),stop_sequences(comma-separated).stream_mode-enable/disable. Disabled is the safe default; streaming gives you live partial output but the node is an output node either way.- Optional:
system_prompt,context(a JSON array of prior messages, in the OpenAI chat format).
Output: response (STRING). Feed it into prompt templates, a text encoder, or a Show Text node.
Installing it
ComfyUI Manager → search comfyUI_LLM, or:
cd ComfyUI/custom_nodes
git clone https://github.com/XieJunchen/comfyUI_LLM
pip install -r ComfyUI/custom_nodes/comfyUI_LLM/requirements.txt
# restart ComfyUI
The openai package comes in via requirements.txt. No model files, no local weights - everything runs on DeepSeek's servers.
Where people get burned
- Empty key = hard error. The node validates and raises "API密钥不能为空" (API key cannot be empty) - but the error text is Chinese, so if you don't read it, an empty key looks like a broken node rather than a missing field.
- Inputs shorter than two characters are rejected. It's a guard, but it means you can't send a one-character prompt. Whatever.
- It writes a debug log to
~/Desktop/deepseek_comfyui.logon every run, overwriting it at import. Same quirk as the Ollama node - harmless, just odd. - Cost creep if you loop it.
IS_CHANGEDprevents pointless re-runs on identical inputs, but a workflow that calls it in a loop will happily burn tokens. Watch it. - Same trust caveat as every custom node: you're installing unsandboxed Python into a machine that has your ComfyUI install. This pack is small, personal, and hasn't got much community scrutiny - check what you install, as with all nodes (the ecosystem's history of malicious custom nodes makes that a habit worth having).
If you want a hosted model with real capability and don't mind the key, this is the pack's answer to the local-Ollama route. Local and API versions of the same idea - pick whichever fits your setup.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — | |
| input_str | STRING | — | |
| model | COMBO | deepseek-chat | 3 options: deepseek-chat, deepseek-coder, deepseek-reasoner |
| temperature | FLOAT | 0.70–1 | — |
| max_tokens | INT | 5121–4096 | — |
| stop_sequences | STRING | — | |
| stream_mode | COMBO | disable | 2 options: enable, disable |
| system_promptopt | STRING | 你是有帮助的AI助手 | — |
| contextopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| response | STRING | — |