TA-ComfyUI-Nodes-Pack
Some useful nodes for ComfyUI (model loader & extensions for EBU-LMStudio)
Nodes (20)
Caption a whole folder of images with a local vision LLM
A single node that clears VRAM and RAM — and gets out of the way
A clickable Discord invite, parked right on your canvas
Let a node name your output files so you never have to again
Flux guidance only when you're actually sampling Flux
The manual, one click away, inside the pack
The KSampler that takes its sampler and scheduler from a wire
Peek inside a latent without loading a VAE
Pick the right prompt string depending on whether the LLM is actually up
One loader for diffusion, GGUF, and checkpoints — plus the model's name
Swap an entire model, CLIP, and VAE with one dropdown
Route between your typed prompt and the LLM's — or blend them
One place to see every prompt your workflow is actually using
SageAttention on a switch, instead of a reinstall ritual
Sampling settings you edit once and reuse everywhere
Save to JPEG or WebP, or don't save at all
Save a PNG and the prompt that made it, in one node
A kill switch for a 14GB upscaler you don't always want
Turn LM Studio or Ollama into your prompt generator
One dropdown to switch models without rebuilding the workflow
TA-ComfyUI-Nodes-Pack
Custom nodes for ComfyUI by thomo.ART.
⚠️ Breaking Change – Version 2.x is not compatible with 1.x nodes. Workflows built with version 1.x must be rebuilt. Node names, inputs, and outputs have changed significantly.

Overview
A collection of nodes designed for use in thomo.ART workflows, focused on flexible multi-model image generation with LLM/VLM integration, structured prompt routing, and clean workflow management.
The full documentation is available via the built-in Help button in each node (opens in your browser at http://localhost:8188/ta-nodes/wiki/index.html).
Credits
This project was inspired by or builds upon the following open-source works:
-
ComfyUI-EBU-LMStudio by burnsbert (Eric W. Burns) Inspiration for the LM Studio / LLM integration in ComfyUI, implemented in the TASmartLLM node with support for both LM Studio and Ollama.
-
Comfyui-Memory_Cleanup by LAOGOU-666 Inspiration for the VRAM and RAM cleanup logic in the TACleanupSwitch node.
Tested on the following system:
- CPU: AMD Ryzen 9 5900X
- RAM: 64GB
- GPU: RTX 3090 (24GB VRAM)
- Python: 3.12.10
- Torch version: 2.9.1+cu130
- Triton version: 3.5.1
- LM Studio: 0.4.12 (Build 1)
- Ollama: 0.21.0
- ComfyUI: 0.19.3
Changelog
v2.0.9 changed ta_smart_llm to v3.8
- added a reasoning output to TA Smart LLM
v2.0.8 changed ta_smart_llm to v3.7
v3.3 — Empty LLM response detection: status output now shows a warning instead of silently passing an empty prompt downstream. v3.4 — Added thinking_mode toggle (✅ Thinking ON / ❌ Thinking OFF) to strip or keep the [think]...[/think} block from models with reasoning/thinking capabilities. v3.5 — LM Studio 0.4.7+ compatibility: the node now reads reasoning_content as fallback when content is empty, fixing the blank prompt issue introduced in newer LM Studio versions. v3.6 — Fixed inverted thinking_mode logic and refactored response parsing to correctly handle all three scenarios: LM Studio 0.4.6 (content with tags), LM Studio 0.4.7+ (reasoning_content without tags), and Ollama. v3.7 — Renamed internal parameter strip_thinking to thinking_mode for clarity.
v2.0.6 changed ta_smart_llm to v3.2
request_timeoutis built as an INT widget betweenmax_tokensandunload_image_models_first— default 120s, adjustable from 30 to 600s in increments of 30.
v2.0.5 changed .gitignore
- All JSON files have been added to Gitignore so that they will no longer be overwritten during an update.
v2.0.3 changed ta_smart_llm
ta_smart_llm v3.1:
unload_image_models_firstandunload_llm_afternow default toTrue. Note that existing nodes in the workflow retain their saved values—the new default only applies to newly placed nodes.
v2.0.2 changed ta_smart_llm
ta_smart_llm v3.0 is the consolidated version with all fixes:
- Active models are now displayed at the top of the dropdown, offline models at the bottom — no validation error
- timeout=0.5 for all backend queries
- IS_CHANGED returns "disabled" if llm_enable=False — the node is cached
- _flush_lmstudio_context removed — saves the 0.5s pause before vision requests
- temperature + max_tokens as configurable parameters
Nodes
🧠 TA Unified Model Switcher
Switch between multiple models without changing the workflow. Uses a dropdown to select the active model – all others are skipped via lazy evaluation. Model list is configured via a browser-based editor.
🗂️ TA Model Preset
Load MODEL, CLIP, and VAE from a named preset. Supports Diffusion Models ([D]), GGUF ([G]), and Checkpoints ([C]). Presets are managed via a browser-based editor.
📦 TA Load Model (with Name)
Combined loader for all three model types. Auto-detects the type from the filename prefix and outputs a TA_MODEL_NAME string for use with the Filename Generator.
🤖 TA Smart LLM
Text-to-prompt and image-to-prompt via LM Studio or Ollama. Automatically detects vision-capable models. Supports VRAM management and model caching.
🔀 TA Prompt Hub
Central prompt collector. Passes through positive prompt, negative prompt, additional prompt, and LoRA trigger words. Combines non-empty parts into a single combined_prompt output.
🗂️ TA Prompt Controller
Routes between a manually typed prompt and a generated prompt (e.g. from TA Smart LLM). Five modes: Manual Only, Generated Only, two Combine orders, and Clear/Empty.
🎛️ TA Sampler Preset & ⚡ TA KSampler
Designed as a pair. TA Sampler Preset loads sampling parameters (steps, CFG, sampler, scheduler, start/end step) from a JSON file via browser editor. TA KSampler accepts sampler and scheduler as plain strings and provides live latent preview per step.
🧹 TA Cleanup Switch
Combined VRAM and RAM cleanup in one switchable node. Replaces a three-node cleanup chain. Passes any signal through unchanged. Can be fully disabled with zero overhead.
🌊 TA Flux Guidance Gate
Automatically applies Flux Guidance to conditioning when the active sampler preset is FLUX-based (detected via the preset name). Passes conditioning through unchanged for all other presets.
🔧 TA SageAttention Toggler
Patches a model with SageAttention and/or PyTorch FP16 matmul acceleration. Supports all five SageAttention kernel variants. Both patches are independent and toggleable.
📁 TA Filename Generator
Generates structured output file paths from folder, subfolder (supports strftime date codes), prefix, workflow version, model name, and timestamp. Returns both a base path and an upscaled variant path.
💾 TA Save Image Optional
Saves images as JPEG or WebP with configurable quality. Includes an enable toggle and optional companion .txt files with prompts and timestamp.
💾 TA Save Image With Prompt
Extends ComfyUI's built-in SaveImage with optional companion .txt files containing prompts and timestamp. Always saves as PNG.
🎬 TA SeedVR2 Gate
Enable/disable gate for the SeedVR2 upscaler pipeline using lazy evaluation. When disabled, all upstream nodes (including the ~14 GB model loaders) are skipped entirely.
💬 TA Discord Link
Displays a clickable Discord invite link directly inside the ComfyUI graph. URL and button label are configurable via a browser-based editor.
Installation
Via ComfyUI Manager
Search for TA ComfyUI Nodes Pack in the ComfyUI Manager and install.
Manual
cd ComfyUI/custom_nodes
git clone https://github.com/thomoart/TA-ComfyUI-Nodes-Pack
Restart ComfyUI after installation.
Documentation
Full node documentation (DE/EN) is built into the pack and accessible directly from ComfyUI via the 🔗 TA Help Link node or at:
http://localhost:8188/ta-nodes/wiki/index.html
License
- Node Pack: Apache 2.0
- Workflows: CC-BY-NC-SA 4.0