Nodes/AP Netflix VOID/VOID VAE Loader (AP)
ComfyUI Node

VOID VAE Loader (AP)

The 3D VAE you need (and it isn't your SDXL one)

By adampolczynski·Created 5 months ago·Updated 5 months ago· 7
VOID VAE Loader (AP)
    • void_vae
    vae_name
    dtypebfloat16

    VOID doesn't inpaint with your usual VAE, and this node is how you give it the one it was trained on. While image models encode a frame into a 2D latent, the CogVideoX family uses a 3D VAE that encodes a whole stack of frames into a single temporal latent - shape [16, T', Lh, Lw], time and space together. That's the latent vocabulary the VOID transformer speaks, so it's non-negotiable: no CogVideoX VAE, no removal.

    The loader is dead simple. vae_name is a dropdown over ComfyUI/models/vae/, dtype defaults to bfloat16 (recommended, same story as the model loader), and the output is a VOID_VAE that wires into both VoidSampler and VoidLatentToVideo. Under the hood it instantiates a lightweight CogVideoX 3D VAE class shipped inside the pack and loads the safetensors into it on your GPU. The VAE's scaling factor is 0.7 and it's baked in correctly - which is the kind of detail that silently ruins results when it's wrong.

    The one decision is which VAE file to download, and the README gives you two options that are genuinely interchangeable because they share the same architecture and scaling factor:

    • diffusion_pytorch_model.safetensors from the alibaba-pai/CogVideoX-Fun-V1.5-5b-InP repo's vae/ subfolder - this is the exact VAE the VOID fine-tune was built around, so it's the safest pick.
    • cogvideo5bvae.safetensors from THUDM/CogVideoX-5b - also works fine, per the README.

    Either goes in models/vae/ and shows up in the dropdown. The scaling factor (0.7) is correct for both.

    The gotchas here are mostly about not using the wrong thing. Do not grab an SD/SDXL/Flux VAE - the shapes won't match and you'll get garbage or a hard error. And don't expect the regular "VAE Loader" node to work as a substitute: it emits type VAE, while VoidSampler's vae input is typed VOID_VAE, so the graph will refuse the connection. That's the pack's type system doing you a favor. If your decode comes out looking structurally wrong - warped, temporally smeared, or colors wildly off - the first suspect is that the wrong VAE file got loaded, and the second is a dtype mismatch between the VAE and the model.

    Install is the pack's shared routine: ComfyUI Manager → search "AP Netflix VOID", or git clone https://github.com/adampolczynski/AP_Netflix_VOID into ComfyUI/custom_nodes, restart, no pip packages needed. Downloads are the real work: the VAE file, void_pass1.safetensors into models/diffusion_models/, and a T5-XXL text encoder into models/clip/. Then you're ready to actually delete something. One honest note: this is a community beta around a research model, so treat a clean load as the start of the debugging journey, not the end - most of the iterating happens in the masks and prompt, not in here.

    CategoryAP/VOID

    Inputs (2)

    NameTypeDefaultDescription
    vae_nameCOMBO0 options:
    dtypeCOMBObfloat163 options: bfloat16, float16, float32

    Outputs (1)

    NameTypeDescription
    void_vaeVOID_VAE