SenseNova U1.5 Text to Image
Eight steps or fifty, it's one node — just let it auto-pick
- model
- image
This is the node that actually draws the picture. Feed it the model output from the SenseNova U1.5 AEGIS Loader (optionally through the LoRA Loader), type a prompt, and out comes an IMAGE. The interesting thing is that one node covers two completely different regimes - the full 50-step base model and the distilled 8-step LoRA - and it will switch between them for you.
SenseNova U1.5 is a flow-matching model, and that changes what the dials mean compared to SDXL habits. There's no sampler or scheduler selector here at all; instead you get timestep_shift (default 3.0), which is the flow-matching knob that decides how sampling effort is spread between composition and detail. Leave it at 3.0 - the README's quality config is built around it. cfg_norm (none / global / channel / cfg_zero_star) is a normalization scheme on top of classifier-free guidance; the recommended setting is none, so just leave it.
The inputs that actually matter:
prompt- multiline. Default is a cinematic portrait; change it to whatever you're making.stepsandcfg- the pair that defines your regime. Base model: 50 steps, CFG 4.0. With the 8-step LoRA attached: 8 steps, CFG 1.0. This mirrors the distillation pattern you see across 2026's models - CFG 1 means guidance is baked into the weights, and pushing it back up to 7 just burns the image and doubles render time.auto_8step_lora_settings- defaulttrue, and this is the neat bit. If a LoRA is attached, the node silently forcessteps=8, cfg=1.0, cfg_norm=none, timestep_shift=3.0. You can't screw up the distilled settings by forgetting to change them. Turn it off only if you deliberately want to fight the LoRA's intended config.width/height- default 2048×2048, and they must be multiples of 32 or the node throws a clear error. Range is 256 to 4096.batch_size- 1 to 4. On a 16 GB card, don't go cranking this just to see what happens.seed- standard, withcontrol_after_generateso you can walk variations.
The only other output is image, which you wire into a SaveImage (the pack's example workflow uses SaveImage). There's a console progress bar that reads the model's real timestep embedder, so repeated CFG passes don't fake extra steps - nice touch when you're counting seconds per image.
Installing and wiring
The pack: ComfyUI Manager → search "SenseNova", or clone it into custom_nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/vizart-vj/ComfyUI-SenseNova-U1.5-AEGIS
Restart, make sure the INT8 checkpoint is in ComfyUI/models/diffusion_models/, and the LoRA (if used) in ComfyUI/models/loras/. The first run does a one-time runtime bootstrap download; model weights are never auto-downloaded.
Gotchas
- Feels slow and blurry? You're running the base 50-step config without a LoRA - that's "maximum quality" mode, not broken. 50 steps on an 8B multimodal at 2048×2048 is not a sprint.
- Blown-out colors at high steps? You've probably left
cfgat something SDXL-ish. Base model wants 4.0; LoRA wants 1.0. - "Width and height must be multiples of 32" - this one bites everyone eventually; the 2048 default is safe, and any size stepping by 32 is fine.
- Black images with the LoRA at 50 steps - that's a settings mismatch, not a model failure. Let
auto_8step_lora_settingsdo its job, or match 8/1.0 manually.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | SENSENOVA_U15_AEGIS_MODEL | — | |
| prompt | STRING | A cinematic portrait, highly detailed, natural materials. | — |
| seed | INT | 00–4294967295 | — |
| steps | INT | 501–100 | — |
| width | INT | 2048256–4096 | — |
| height | INT | 2048256–4096 | — |
| cfg | FLOAT | 4.01–10 | — |
| cfg_norm | COMBO | none | 4 options: none, global, channel, cfg_zero_star |
| timestep_shift | FLOAT | 3.00–10 | — |
| batch_size | INT | 11–4 | — |
| auto_8step_lora_settings | BOOLEAN | true | If a LoRA is attached, automatically use steps=8/cfg=1.0. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |