Nodes/comfyui_text_to_pose/T2P Model Loader
ComfyUI Node

T2P Model Loader

The loader that downloads the T2P model so the pose nodes have something to think with

By logicalor·Created 9 months ago·Updated 8 months ago· 7
T2P Model Loader
    • t2p_model
    model_namet2p-transformer-v0
    deviceauto
    force_cpufalse

    T2P Model Loader is the boring but mandatory first node in this pack. Every other node in comfyui_text_to_pose - Text to Pose, Text to Pose (Batch) - demands its t2p_model output on the input socket, and nothing works until this thing has done its job. It's a loader, full stop: it pulls the T2P Transformer model from HuggingFace, caches it locally, and hands a handle to the generation nodes. If you've used a checkpoint loader, you already know the rhythm.

    On first use it downloads clement-bonnet/t2p-transformer-v0 (~150 MB) and saves it into ComfyUI/models/t2p/, so subsequent runs load from disk. That model is the one trained for the "From Text to Pose to Image" paper (arXiv 2411.12872), and it's the only entry in the model_name dropdown - there's exactly one model to choose, so that field is effectively cosmetic. Leave it alone.

    The inputs you might actually change:

    • device - auto, cuda, or cpu. auto picks CUDA if it's available, which is right for almost everyone.
    • force_cpu - the tooltip says it plainly: "Force CPU mode (slower but more compatible)." Flip this only if the model is crashing on your GPU. One thing to know: the model always runs in float32, because its sampling uses a MultivariateNormal distribution that doesn't support half precision. So don't expect fp16 speedups - this one just runs at full precision.

    The output is a T2P_MODEL handle that plugs into the pose generation nodes. That's it.

    The gotcha that trips everyone

    The loader does from t2p.model import T2PTransformer - and that t2p module does not ship in this repository. It's cloned from a separate text-to-pose repo and linked into place by the pack's install.py script. ComfyUI Manager runs that script automatically during install, which is why the Manager route usually just works. But if you cloned the repo by hand and skipped the script, you'll get a ModuleNotFoundError: t2p the moment the loader runs.

    If you see that, it's not a GPU problem and not a broken model:

    cd ComfyUI/custom_nodes/comfyui_text_to_pose
    python install.py    # clones logicalor/text-to-pose and links the t2p module
    

    then restart ComfyUI. On Windows, where symlinks are finicky, the script falls back to copying the module instead - same end result.

    Two more things to expect. First, the first load looks hung: it downloads the T2P model and the CLIP text encoder the generator tokenizes with (openai/clip-vit-large-patch14), and neither is small. Watch the console for [T2P] lines - it's fetching, not frozen. Second, the real dependencies are transformers and huggingface_hub (plus torch, numpy, Pillow), which a stock ComfyUI install almost certainly already has - so a missing-dependency error here usually points back at the missing t2p module, not pip.

    Honest verdict: there's nothing clever to tune and nothing to optimize. Get it installed, let it do its one slow first download, and it becomes invisible - which is exactly what you want from a loader.

    Categorytext-to-pose

    Inputs (3)

    NameTypeDefaultDescription
    model_nameCOMBOt2p-transformer-v01 options: t2p-transformer-v0
    deviceoptCOMBOauto3 options: auto, cuda, cpu
    force_cpuoptBOOLEANfalseForce CPU mode (slower but more compatible)

    Outputs (1)

    NameTypeDescription
    t2p_modelT2P_MODEL