Bernini Generation Settings
The knobs that decide what Bernini renders
- generation_args
- summary
Bernini Run Single GPU has a wall of widgets, and when you're building a workflow you don't want to scroll past seventeen of them every time you tweak one number. Bernini Generation Settings is the Kijai-style answer: bundle all the sampling/generation parameters into one typed BERNINI_GENARGS object, wire that one wire into the runner, and keep the big node tidy. Same philosophy as Bernini Model Config - small helpers feeding a clean runner.
The inputs that matter
- num_frames - the big one.
1means text-to-image or image editing; anything above that is video. Max is 241, but remember Bernini inherits Wan's ~81-frame comfort window, and every editing frame costs roughly double because the source video is part of the model input. - width / height - output resolution (default 848×480, the Wan-ish wide ratio). Steps are forced to multiples of 8.
- max_image_size - long-edge cap used when reference media is resized.
- num_inference_steps - default 40; with a distillation/speed LoRA like LightX2V you can go much lower.
- seed - reproducibility. Default 42.
- fps - output frame rate, default 16.
- guidance_mode - the seven-mode list again (
rv2v,v2v,v2v_chain,t2v, plus_apgvariants). Caveat in the tooltip and worth repeating: this can be overridden by the case JSON if the case carries aguidance_mode- check Bernini Case Builder if your setting seems ignored.
The optional row is the Bernini-specific math: flow_shift (default 5), omega_V (1.25), omega_I (4.5), omega_TI (4), omega_scale (0.8), and eta (0.5). These are the flow-matching and guidance-strength knobs the upstream sampler exposes. The defaults are sensible; don't touch them until you're chasing a specific artifact, and then change one at a time.
Outputs
- generation_args (type
BERNINI_GENARGS) - plugs into the runner'sgeneration_argsinput and overrides its generation widgets. - summary (STRING) - pretty-printed JSON of every value; dump it to a Show Text node to confirm what the runner will actually use.
Installing this node
One of the 16 nodes in the lzits Nodes pack (Lior Zitser, MIT). Install via ComfyUI Manager (search "lzits Nodes") or:
cd ComfyUI/custom_nodes
git clone https://github.com/lzitser23/lzits-nodes.git
Restart ComfyUI. No extra dependencies - it's pure parameter bundling. The upstream Bernini repo, model download, and a Python 3.11 CUDA environment are the real requirements (see Bernini Setup Commands).
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| num_frames | INT | 11–241 | Use 1 for text-to-image/image editing. Use >1 for video. |
| width | INT | 84864–2048 | — |
| height | INT | 48064–2048 | — |
| max_image_size | INT | 84864–4096 | — |
| num_inference_steps | INT | 401–100 | — |
| seed | INT | 420–2147483647 | — |
| fps | INT | 161–120 | — |
| guidance_mode | COMBO | t2v | Can be overridden by the case JSON if the case contains guidance_mode. |
| flow_shiftopt | FLOAT | 5.00–20 | — |
| omega_Vopt | FLOAT | 1.250–20 | — |
| omega_Iopt | FLOAT | 4.500–20 | — |
| omega_TIopt | FLOAT | 4.000–20 | — |
| omega_scaleopt | FLOAT | 0.800–20 | — |
| etaopt | FLOAT | 0.500–1 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| generation_args | BERNINI_GENARGS | — |
| summary | STRING | — |