H3 Ollama Model (Local)
Local Gemma drives the H3 Director — no cloud, no per-plan bill
- llm_model
H3 Ollama Model (Local) is the node that makes the H3 Story Director's planning stage free after the model is loaded. It connects the Director to an Ollama server running a local vision model, using Ollama's native multimodal chat endpoint - which means up to four reference images, the exact JSON Schema, seed, temperature, output budget, and context length all survive the trip. It's the "run everything on your own box" answer to both OpenRouter and a datacenter API.
The tested local profile is Gemma with huihui_ai/gemma-4-abliterated:12b - an abliterated Gemma, which matters because the Director can plan explicit content and a stock instruct Gemma would spend its whole context refusing instead of writing scene prompts. The model string defaults to exactly that.
How it works
The node emits an LLMMODEL that feeds H3 Story Director - LLM Model (API). You pick the matching Gemma profile in the Director - the profile shapes the structured worksheet the node asks for, the Ollama node supplies the model. The node does not select the profile; it just moves bytes.
server_url- defaults tohttp://127.0.0.1:11434, the standard address when Ollama and ComfyUI share a machine. It accepts a local/LAN/remote server root, an address ending in/api, or the complete/api/chatendpoint, plus a masked key for protected hosted services.model-huihui_ai/gemma-4-abliterated:12bby default.keep_alive- the VRAM decision.falsesends0and unloads the VLM right after each plan, freeing memory before MiniMax H3 loads.truesends-1and keeps it resident for repeated planning. If you're running H3 on the same card, leave thisfalse.thinking-falsefor speed;truelets supported models reason internally before returning the structured plan, at the cost of time and tokens.context_length- 32768 default. It includes the system prompt, JSON Schema, visual tokens and the plan; bigger is more VRAM.timeout_seconds- 600 default; a local 12B on CPU can be slow.
Install
The pack itself:
cd ComfyUI/custom_nodes
git clone https://github.com/elgalardi/ComfyUI-VisionPromptAssistant
Restart ComfyUI. You also need Ollama running separately (not a pip install - the actual Ollama app), and the model pulled once:
ollama pull huihui_ai/gemma-4-abliterated:12b
Common issues
The usual culprit is Ollama not being reachable - if the node fails to connect, confirm ollama serve is running and server_url isn't pointing at the wrong port. Second: VRAM contention. If MiniMax H3 loading chokes right after a plan, that's keep_alive left at true; set it to false so the VLM is evicted before the video model starts. And if the Director keeps rejecting output, check you've selected the Gemma Director Profile - the Ollama node delivers a model, the profile tells the Director to ask for the worksheet a local Gemma can actually fill.
Quality take, honestly: a 12B Gemma is not a frontier model. The plans will be simpler than grok's, and that's the price of free per-call planning. Start with draft_only on, review the synced cards, and don't blame the node if a weaker model writes a weaker story.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| server_url | STRING | http://127.0.0.1:11434 | Paste a local, LAN, remote, or hosted Ollama-compatible address. Accepts a server root, an address ending in /api, or the complete /api/chat endpoint. |
| model | STRING | huihui_ai/gemma-4-abliterated:12b | — |
| api_key | STRING | Optional Bearer token for protected remote or hosted Ollama-compatible services. Local Ollama needs no key. | |
| keep_alive | BOOLEAN | false | False unloads the model after every plan and frees VRAM for ComfyUI. True keeps it loaded for repeated planning. |
| thinking | BOOLEAN | false | Allows supported Ollama models to reason internally before returning the final structured plan. This may improve difficult scenes but increases generation time and token use. |
| context_length | INT | 327688192–65536 | Includes the system prompt, JSON Schema, visual tokens, and generated plan. Larger values consume more VRAM. |
| timeout_seconds | INT | 60060–3600 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| llm_model | LLMMODEL | — |