Nodes/Quality of Life Nodes for ComfyUI/TensorScale Cosmos3 Nano Text To Video (Soze)
ComfyUI Node

TensorScale Cosmos3 Nano Text To Video (Soze)

NVIDIA's world model, hosted, with step and guidance exposed

By SozeInc·Created 2 years ago·Updated a day ago· 10
TensorScale Cosmos3 Nano Text To Video (Soze)
    • video
    • video_path
    • request_id
    • config
    • status
    prompt
    seconds8.0
    fps24
    resolution720
    aspect_ratio16,9
    seed0
    num_steps35
    guidance6.0
    api_key_envTENSORSCALE_API_KEY_COSMOS3_NANO
    timeout1800

    Cosmos is NVIDIA's world-model family - the "predict what happens next in a scene" kind of model rather than the "make a nice clip" kind. The Nano tier is the small, cheap member of the family, and this node serves the text-to-video variant through TensorScale. It's also the most openly tunable video node in the pack: instead of hiding the sampling, it hands you num_steps and guidance with the native defaults called out. If you've ever wanted to see how a hosted video model behaves when you actually turn its knobs, start here.

    The inputs

    The required set is prompt, seconds, fps, resolution, aspect_ratio, and seed. Two quirks to know before you wire anything:

    • resolution is a height profile, not a WxH pair. It's 256, 480, 704, 720, or 768 - the width is derived from the aspect ratio. That's how Cosmos encodes it, and the node doesn't pretend otherwise.
    • aspect_ratio uses a comma, not a colon: "16,9", "9,16", "1,1", "4,3", "3,4". Copying 16:9 from another node will break the request.

    seconds (1–60, half-second steps) is converted server-side into a valid Cosmos frame count, so the exact length comes back aligned to the model's grid. fps defaults to 24, which matches the native generation profile.

    Then the tuning dials, both optional: num_steps (default 35 - the native default, and the floor for quality) and guidance (default 6.0 - the native value). These are real diffusion controls, and 35/6.0 are where the model is meant to run; lower steps trade quality for speed, higher guidance pushes prompt adherence at the cost of naturalness. Experiment, but know the defaults are the vendor's own tuning.

    How it works

    TensorScale's /v2/cosmos3-nano/t2v runs synchronously with a model-scoped key (TENSORSCALE_API_KEY_COSMOS3_NANO, falling back to TENSORSCALE_API_KEY). No polling - the socket stays open for the whole generation (the timeout widget, default 1800s, is a read timeout). Text-to-video means no media in the request, so the 10 MiB body cap isn't a concern here - this is the most trouble-free node in the TensorScale family from that angle.

    Outputs: video, video_path, request_id, config (run summary), status.

    Install and key

    From the Soze pack ("Quality of Life Nodes for ComfyUI"), via ComfyUI Manager or:

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

    Restart, then set TENSORSCALE_API_KEY or TENSORSCALE_API_KEY_COSMOS3_NANO (environment variable or .env in the repo root). Keep keys out of git.

    Common issues

    • "Invalid aspect ratio" style errors. You used a colon. Cosmos wants 16,9, comma-separated.
    • Resolution feels wrong. It's a height profile - 720 means 720-tall, with width derived from the ratio. There's no free-form WxH here.
    • Slow at high steps. num_steps over ~50 on a long clip is a long synchronous wait. That's expected; drop to 35 for drafts.
    CategoryTensorScale/VideoGeneration

    Inputs (10)

    NameTypeDefaultDescription
    promptSTRING
    secondsFLOAT8.01–60Converted server-side to a valid Cosmos frame count.
    fpsINT241–6024 matches the native generation profile.
    resolutionCOMBO720Output height profile.
    aspect_ratioCOMBO16,9Comma-separated W,H — Cosmos does not use the colon form.
    seedINT00–4294967295
    num_stepsoptINT351–100Diffusion steps. The native default is 35.
    guidanceoptFLOAT6.00–30Prompt guidance strength. The native default is 6.0.
    api_key_envoptSTRINGTENSORSCALE_API_KEY_COSMOS3_NANOEnvironment variable holding the model-scoped key. Falls back to TENSORSCALE_API_KEY when unset.
    timeoutoptINT180060–7200Read timeout in seconds. These endpoints are synchronous — the socket stays open for the whole generation.

    Outputs (5)

    NameTypeDescription
    videoVIDEO
    video_pathSTRING
    request_idSTRING
    configSTRING
    statusSTRING