Nodes/comfyui_dreamlite/DreamLite Generate/Edit
ComfyUI Node

DreamLite Generate/Edit

The 0.39B model that's supposed to do everything, in one node

By lussifa·Created 4 months ago·Updated 4 months ago· 0
DreamLite Generate/Edit
  • image
  • image
dreamlite_repo
model_pathmodels/DreamLite-base
variantbase
prompta dog running on the grass
width1024
height1024
size_modeuse_widget_size
steps0
guidance_scale3.5
image_guidance_scale1.0
seed42
deviceauto
dtypebfloat16

If you've landed on DreamLite Generate/Edit, you were probably actually looking for DreamLite itself: a 0.39B "unified" diffusion model from ByteVisionLab that claims both text-to-image and text-guided editing in a single network, distilled down to 4-step inference so it runs on-device. This node is an unofficial wrapper - the README says so plainly - that calls DreamLite's own Python pipeline instead of trying to shoehorn it into ComfyUI's native KSampler stack.

Now the part nobody loves leading with: the weights are gated. ByteDance's public posture has long been "components open, products closed," and DreamLite has been sitting in internal approval and security review for ages - the community reads it as vapourware, and the README admits the wrapper has never been validated against real weights. Treat this as a front-row seat to a model that may or may not actually arrive. If it does, this is how you'd run it.

How it works

It's a diffusers-style pipeline bridge. The node locates your local clone of ByteVisionLab/DreamLite, adds it to Python's path, imports DreamLitePipeline (or DreamLiteMobilePipeline), then calls from_pretrained() on the model folder with your chosen dtype and device. The loaded pipeline is cached in memory and keyed by model path, repo, variant, dtype and device - so repeat runs are fast but switching variants leaves the old one resident.

steps=0 uses the official defaults (base=28, mobile=4). On the base variant, guidance_scale and image_guidance_scale both get passed through; the distilled mobile variant skips them. Seeds run through a CPU generator, and the output is resized with LANCZOS to your requested dimensions if the model returned something else.

The inputs that actually matter

  • dreamlite_repo - path to your clone of ByteVisionLab/DreamLite. Leave blank only if the dreamlite package is already importable or nested inside the node folder.
  • model_path - where the weights live, e.g. models/DreamLite-base or models/DreamLite-mobile.
  • variant - base for quality, mobile for the 4-step distilled speed.
  • prompt - plus width/height. The image input is optional, and here's the nice bit: plug one in and the node becomes text-guided editing instead of generation.
  • size_mode - use_input_image_size snaps output to your source image's dimensions, which is what you want for edits.
  • steps, dtype (bfloat16 default), device (auto/cuda/cpu), and seed - all worth leaving alone until something's wrong.

Output is a single image (IMAGE) - wire it into a Preview or Save Image node like any generator.

Installing, honestly

ComfyUI Manager can install the wrapper pack if it finds comfyui_dreamlite, but the DreamLite repo and its weights are manual either way. The real sequence:

cd ComfyUI/custom_nodes
git clone https://github.com/lussifa/comfyui_dreamlite
cd comfyui_dreamlite
pip install -r requirements.txt

Then clone https://github.com/ByteVisionLab/DreamLite locally, drop the weights into DreamLite/models/DreamLite-base (or -mobile), restart ComfyUI, and set the two path fields. The dependency list is no joke - pinned transformers==4.57.3 plus diffusers, accelerate, peft, einops, safetensors. Custom nodes share one Python environment with no isolation, so a hard-pinned transformers is a real collision risk with other nodes you run.

Troubleshooting

  • "Could not import DreamLite" - you didn't clone the repo or dreamlite_repo points at the wrong folder. The node even tells you this in its error text.
  • from_pretrained errors - model_path is wrong or the weights aren't there, which is likely given they're gated.
  • Switching variants - the old pipeline stays cached; run the pack's DreamLite Clear Cache node or restart.
  • Everything hangs on load - check device=cuda is honest about your GPU, and consider float16 over bfloat16 on older cards.
CategoryDreamLite

Inputs (14)

NameTypeDefaultDescription
dreamlite_repoSTRINGPath to the cloned ByteVisionLab/DreamLite repo. Leave blank if dreamlite is already importable or repo is nested in this custom node folder.
model_pathSTRINGmodels/DreamLite-baseLocal path to DreamLite-base or DreamLite-mobile weights.
variantCOMBObase2 options: base, mobile
promptSTRINGa dog running on the grass
widthINT102464–4096
heightINT102464–4096
size_modeCOMBOuse_widget_size2 options: use_widget_size, use_input_image_size
stepsINT00–1000 uses the official default: base=28, mobile=4.
guidance_scaleFLOAT3.50–20
image_guidance_scaleFLOAT1.00–20
seedINT420–18446744073709550000
deviceCOMBOauto3 options: auto, cuda, cpu
dtypeCOMBObfloat163 options: bfloat16, float16, float32
imageoptIMAGE

Outputs (1)

NameTypeDescription
imageIMAGE