LingBot Loader (1.3B dense)
The boring middle node that makes an 8GB video model work
- LINGBOT_MODEL
LingBot Loader is the middle node in a three-node pack for LingBot-Video-Dense-1.3B, Robbyant's small open-weights text/image-to-video DiT. The name undersells it and oversells it at once: it doesn't do any of the clever memory management (that's the text encoder and sampler), but without it you're not running LingBot at all. It's the node that turns a raw .safetensors in your models folder into the transformer, VAE, and scheduler the Sampler can chew on.
If you wandered over here from the LingBot-Video release thread, you already know the family lore: Robbyant dropped a 30B-A3B MoE in July 2026, the crowd immediately started asking "ComfyUI when?", and this pack by RealRebelAI (the same org that ships the SCAIL-2 GGUF quants) is part of the answer. The dense 1.3B is the little sibling that actually fits on an 8GB card - the whole pack is built and tested on a 3070 8GB. Set expectations accordingly: this is the "runs on my hardware" model, not the quality leader. One commenter's reaction to the 1.3B was literally "are they kidding?"; take it as a fun toy for iterating, not a Wan killer.
How it works
The loader is pleasantly honest about what it does. It reads the DiT architecture from the bundled model_assets/transformer/config.json, instantiates LingBotVideoTransformer3DModel, and streams your safetensors into it with load_state_dict(..., strict=False). It then honors the checkpoint's fp32-module list - norms and modulation layers stay in fp32 while everything else drops to bf16 - which is the standard mixed-precision move for a flow-matching DiT. Next it builds the Wan VAE (AutoencoderKLWan, the same one from the Wan video stack) in full fp32, plus a FlowUniPC scheduler from bundled config. All three get packed into a LINGBOT_MODEL object.
The detail worth knowing: the loader does not move anything onto your GPU. The transformer sits on CPU until the Sampler's first step calls .to(device). So loading this node costs you RAM, not VRAM - on an 8GB card the load itself won't OOM you. The DiT is only ~1.3B params, roughly 2.8GB in bf16, which is exactly why this pack fits where Wan 14B can't.
The inputs that matter
Four inputs, and you'll realistically touch two.
- transformer_name - dropdown populated from
models/diffusion_models(andunet), filtered to.safetensors/.sft. PickLingBot_1.3b_DiT.safetensors. - vae_name - dropdown from
models/vae; pickLingBot_vae.safetensors. - device -
cudaorcpu, defaultcuda. Leave it. - dtype -
bf16(default) orfp16. If your card predates bf16 support and throws, this is the switch; otherwise keep bf16.
Output: a single LINGBOT_MODEL, which wires straight into LingBot Sampler's lingbot_model input. That's the only place it goes - the loader is upstream of nothing else.
Install
Clone the repo into custom_nodes, install the deps, drop in the weights, restart:
cd ComfyUI/custom_nodes
git clone https://github.com/aiaiai666/ComfyUI_Rebels_LingBot
python_embeded\python.exe -m pip install -U diffusers transformers accelerate safetensors einops numpy
Needs diffusers >= 0.37 and a transformers recent enough for Qwen3-VL. Then fetch from the companion HF repo (this pack bundles the configs, not the weights) into:
models/diffusion_models/LingBot_1.3b_DiT.safetensorsmodels/vae/LingBot_vae.safetensorsmodels/text_encoders/LingBot_text-encoder.safetensors
ComfyUI Manager will find it by searching "ComfyUI_Rebels_LingBot" if you'd rather click than clone.
Gotchas
The dropdowns only scan those specific folders, so a none found on transformer_name almost always means the weights aren't in models/diffusion_models - wrong folder, or a .gguf/.bin file that the filter skips. If you see missing keys / unexpected keys printed to the console on load, that's the pack's normal chatter (the encoder's tied lm_head is the famous one), not something to chase. And remember the pack's house rules even though they live on the Sampler: 832×480 is the trained resolution, 81 frames is the hard cap, and guidance 6.0 for text-to-video but ~3.0 for image runs. Get those wrong and no loader is going to save you.
One honest caveat about the model itself: TI2V motion is modest on the dense 1.3B, and rendered text in the output is basically a no-go. The loader will happily set up an image-to-video run (the Sampler warns you about it); just don't expect the i2v behavior of the big models.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| transformer_name | COMBO | 1 options: none found | |
| vae_name | COMBO | 1 options: none found | |
| device | COMBO | cuda | 2 options: cuda, cpu |
| dtype | COMBO | bf16 | 2 options: bf16, fp16 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LINGBOT_MODEL | LINGBOT_MODEL | — |