✨ Auto-LLM-Chat
The same auto-prompt trick, with a conversation attached
- clip
- postive
- negative
- orignal-postive
- orignal-negative
- 🌀LLM-Text
- 🌀LLM-Vision
- 🌀postive+LLM-Text+LLM-Vision
Auto-LLM-Chat is the pack's newer name for the text half - added in the January 2025 update explicitly for "serial chat-like" prompting with DeepSeek-R1-style models. Read the README's line about it and the screenshots show a chat box feeding a series of generations, like having a running conversation with your prompt writer instead of one-shot questions.
Let's be honest about what it is, though: open the source and Auto-LLM-Chat (LLM_CHAT) and Auto-LLM-Text (LLM_TEXT) are effectively twins. Same inputs, same call path, same seven outputs, and in both cases the vision half of the shared engine is disabled. Chat carries a couple of extra hidden vision widgets and the chat-flavored framing, but in the shipped code the functional difference is close to nil. If you're choosing between the two, pick the one whose name matches the workflow you're describing to yourself - or just use this one and stop thinking about it.
The "chat-like" behavior isn't a real OpenAI-style multi-turn session either. Each run is a fresh request; the continuity comes from the same knobs as its siblings: llm_recursive_use chains the previous LLM reply into the next call, and llm_keep_your_prompt_ahead keeps your base tags at the front of the assembled prompt. Turn recursive on and a batch turns into a continuing story, which is the whole point of the Chat flavor.
The inputs that matter
llm_text_ur_prompt- your message to the LLM. This is the conversational input; type the next story beat and recursive mode carries the previous one forward.llm_apiurl/llm_api_model_name- defaultshttp://localhost:1234/v1/chat/completionsandllama3.1; set the model name to whatever you loaded in LM Studio or ollama.llm_text_max_token(50 default) andllm_text_tempture(0.3) - reply length and randomness.llm_recursive_use/llm_keep_your_prompt_ahead- the two switches that make it feel like a conversation.
Outputs and wiring
Identical to every node in the pack: postive / negative (CONDITIONING) go straight to your sampler, 🌀LLM-Text is the raw reply, and 🌀postive+LLM-Text+LLM-Vision is the fully assembled prompt string (with 🌀LLM-Vision empty here - the pack shares one schema across all four nodes).
Install
Shared with the rest of the pack. ComfyUI Manager → search auto → ComfyUI-decadetw-auto-prompt-llm → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/xlinx/ComfyUI-decadetw-auto-prompt-llm
# restart ComfyUI
The pack has no heavy dependencies to resolve - requirements.txt is just numpy; it uses requests and Pillow, which ComfyUI ships anyway. What you actually need is a local OpenAI-compatible server: LM Studio (port 1234, the default URL) or ollama (port 11434), with a small text GGUF loaded - the README suggests Qwen1.5-4B-Chat Q2_K (under 2GB VRAM), Gemma 2 9B IQ2_M, or Llama-3-Taiwan-8B Q2_K. No model downloads come from the pack.
Common issues
[Auto-LLM][Result][Missing LLM-Text]...in your prompt. The node doesn't crash on a dead server; it writes the error into the output string and encodes it into your conditioning. If you see that, the server isn't up or the model name/URL is wrong.- Short replies. 50-token default. Raise
llm_text_max_token. - The story goes off the rails. Recursive mode compounds drift - the further a batch runs, the weirder it gets. Keep the recursion toggle honest: it's a feature for variety, not for coherence.
llm_before_action_cmd/llm_post_action_cmdrun real shell commands - the source usesshell=Trueand the README flags the security concern itself. Don't paste unknown commands, and don't run this pack on a ComfyUI exposed to the internet.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| llm_text_result_append_enabled | BOOLEAN | true | — |
| text_prompt_postive | STRING | 1girl, | — |
| text_prompt_negative | STRING | — | |
| llm_keep_your_prompt_ahead | BOOLEAN | true | — |
| llm_recursive_use | BOOLEAN | false | — |
| llm_apiurl | STRING | http://localhost:1234/v1/chat/completions | — |
| llm_apikey | STRING | lm-studio | — |
| llm_api_model_name | STRING | llama3.1 | — |
| llm_text_max_token | INT | 5010–1024 | — |
| llm_text_tempture | FLOAT | 0.30-2–2 | — |
| llm_text_system_prompt | STRING | You are an AI prompt word engineer. Use the provided keywords to create a beautiful composition. Only the prompt words are needed, not your feelings. Customize the style, scene, decoration, etc., and be as detailed as possible without endings. | — |
| llm_text_ur_prompt | STRING | A superstar on stage. | — |
| llm_before_action_cmd_feedback_type | COMBO | 4 options: Pass, just-call, LLM-USER-PROMPT, LLM-VISION-IMG_PATH | |
| llm_before_action_cmd | STRING | — | |
| llm_post_action_cmd_feedback_type | COMBO | 4 options: Pass, just-call, LLM-USER-PROMPT, LLM-VISION-IMG_PATH | |
| llm_post_action_cmd | STRING | — |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| postive | CONDITIONING | — |
| negative | CONDITIONING | — |
| orignal-postive | STRING | — |
| orignal-negative | STRING | — |
| 🌀LLM-Text | STRING | — |
| 🌀LLM-Vision | STRING | — |
| 🌀postive+LLM-Text+LLM-Vision | STRING | — |