JZL - 🚀 模型加载Pro
The GGUF loader with every sampling knob, and a backend that doesn't fight ComfyUI
- llama_model
- parameters
"JZL - 🚀 模型加载Pro" is the local-LLM end of the JZL-MiniMax-H3 pack's "漫剧" (short drama) pipeline. The pack's Script Processor uses a Qwen-class VLM to write storyboards and camera directions, and this node is where you load that GGUF model and set every sampling parameter the writing quality depends on. If you're only doing reference-to-video encoding, you don't need it - but if you want the LLM-written script chain, this is the loader.
How it works
It lists models from ComfyUI's LLM folder (the same folder the built-in GGUF loader uses) into the model dropdown, lists mmproj projector files for vision-language models, and offers 33 chat_handler presets - LLaVA-1.5/1.6, Moondream2, MiniCPM-v2.6, Gemma3, Qwen2.5-VL, Qwen3-VL and more - so the pack knows how to talk to the model you picked.
The interesting part is the backend switch. Default is llama-cpp-python (in-process). The newer option is llama-server: the pack no longer calls llama-cpp-python at all - it spawns a pinned llama.cpp b10436 binary as a separate subprocess, runs inference, then kills it, which isolates crashes and releases VRAM when the pass is done. That path requires running the pack's installer first (see below).
The inputs that matter
model- your GGUF, from theLLMfolder.mmprojandchat_handlerfollow from that choice.backend-llama-cpp-pythonorllama-server. Tryllama-serverif the in-process backend keeps wedging your ComfyUI.n_ctx- context length, default 32768, up to 262144. The tooltip's rule of thumb: a short story at 32K, a 56-segment epic at 131K–256K.temperature- default 0.6, which the pack says keeps[SHOT_START]formatting strict and reduces hallucinations.top_k(40),top_p(0.9),min_p(0.05),repeat_penalty(1.05) - the usual suspects, all with sensible defaults.max_tokens- 8192 default; scale up for many segments.vram_limit- GB cap,-1= unlimited.gpu_device- only for thellama-serverbackend;autofollows ComfyUI's current card, or pick an index.
Outputs are llama_model and parameters, which plug straight into the pack's Script Processor.
How to install it
Pack install as usual - ComfyUI Manager, search "ComfyUI-JZL-MiniMax-H3", or git clone https://github.com/wjluoxiao/ComfyUI-JZL-MiniMax-H3 into custom_nodes, then restart.
If you want the llama-server backend (recommended if you hit in-process crashes), run the runtime installer once. On Windows double-click install_runtime.bat; otherwise:
cd ComfyUI/custom_nodes/ComfyUI-JZL-MiniMax-H3
python install_runtime.py # --dry-run to preview, --force to reinstall
It's pure-Python stdlib, auto-detects your OS/arch/GPU, and downloads a pinned, SHA256-verified llama.cpp b10436 build - zero pip installs. If you already have llama-cpp-python, it won't conflict; you can even pip uninstall llama-cpp-python to reclaim disk.
Common issues
The big one: llama-server fails with "no runtime found" if you never ran the installer - it's a subprocess, so there's no pip fallback. Another classic is picking a chat_handler that doesn't match the model (e.g. Qwen3-VL handler with a Qwen2.5-VL file) and getting garbage tokens instead of [SHOT_START] blocks. And remember the model goes in the LLM folder, not models/checkpoints - the dropdown only sees the former.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | 0 options: | |
| mmproj | COMBO | None | 1 options: None |
| chat_handler | COMBO | None | 33 options: None, LLaVA-1.5, LLaVA-1.6, Moondream2, nanoLLaVA, llama3-Vision-Alpha, +27 |
| advanced_settings | BOOLEAN | false | 开启后显示上下文长度、显存上限、图像token 及全部推理参数 |
| n_ctx | INT | 327681024–262144 | 上下文长度上限 Qwen3.5-9B 原生 262144(256K);短篇 32768,56 段调到 131072-262144 |
| vram_limit | INT | -1-1–1024 | 显存使用上限(GB), -1=不限制 参考值, 实际可能略超 |
| image_min_tokens | INT | 00–4096 | — |
| image_max_tokens | INT | 00–4096 | — |
| max_tokens | INT | 81920–262144 | 生成 Token 上限(Qwen3.5-9B 上限 262144) 6 段约 12K,56 段约 128K,请按段数调整 |
| top_k | INT | 400–1000 | 词汇库检索范围 40 配合 0.60 温度,兼顾格式严谨与词汇多样 |
| top_p | FLOAT | 0.900–1 | — |
| min_p | FLOAT | 0.050–1 | — |
| typical_p | FLOAT | 1.000–1 | — |
| temperature | FLOAT | 0.600–2 | 温度 0.60 确保 [SHOT_START] 格式严谨,减少幻觉 |
| repeat_penalty | FLOAT | 1.050–10 | 重复惩罚 1.05 轻微防句式复读,同时保留台词(太高会让 LLM 省略已在故事里写过的台词) |
| frequency_penalty | FLOAT | 0.000–1 | — |
| present_penalty | FLOAT | 0.000–2 | — |
| mirostat_mode | INT | 00–2 | — |
| mirostat_eta | FLOAT | 0.100–1 | — |
| mirostat_tau | FLOAT | 5.000–10 | — |
| state_uid | INT | -1-1–999999 | 使用特定 ID 保存对话状态 (-1 = 使用节点 unique_id) |
| backend | COMBO | llama-cpp-python | 本地推理后端:llama-cpp-python(默认,进程内)或 llama-server(子进程,需先运行 install_runtime.bat) |
| gpu_device | COMBO | auto | GPU 设备(仅 llama-server 后端):auto = 自动跟随 ComfyUI 当前显卡;也可手动指定索引 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| llama_model | LLAMACPPMODEL | — |
| parameters | LLAMACPPARAMS | — |