Nodes/NanoBananaComfyUI/Nano Banana Load Image (Ace Data Cloud)
ComfyUI Node

Nano Banana Load Image (Ace Data Cloud)

Your Nano Banana Image Isn't in ComfyUI Until This Node Touches It

By AceDataCloud·Created 3 days ago·Updated 2 days ago· 0
Nano Banana Load Image (Ace Data Cloud)
    • image
    ◄image_url►

    A finished Nano Banana task gives you a URL. ComfyUI speaks in IMAGE tensors. Between those two facts sits this node, and it's the smallest one in the pack - one input, one output, no parameters to tune.

    Don't skip it. Everything downstream of a cloud generation - your upscaler, your preview, a local image-to-video model, Save Image - needs a real tensor, and a string containing https://cdn.acedata.cloud/... is not one.

    What it does

    Give it the URL, it downloads the bytes, decodes them with Pillow, converts to RGB, scales to float32 in the 0–1 range, and adds the leading batch dimension. The result is a [1, H, W, 3] IMAGE - the exact shape a core LoadImage would hand you, so it plugs into anything that accepts an image.

    Three guardrails are baked into the download, and each one is a beginner's afternoon:

    • The URL must be HTTPS and the host must be cdn.acedata.cloud or cdn.acedata2.cloud. This is not a general-purpose URL loader. You cannot point it at imgur, at a HuggingFace file, or at your own server.
    • 32 MiB cap, checked against both the Content-Length header and the running total as it streams.
    • Downloads retry three times, and redirects aren't followed.

    Inputs and outputs

    • image_url - a single string, default empty. In practice you don't type this. You wire first_image_url from Retrieve Task into it, which is precisely why that redundant-looking output exists.
    • Output: image (IMAGE). Wire it to Preview Image, to an upscale chain, or into whatever local model you're feeding. It's a single-image batch, so batch-aware nodes handle it without complaint.

    Empty input doesn't quietly return nothing - it raises "Task is still pending. Query the same task ID again." That's the node correctly telling you that your retrieve step hasn't produced anything yet, rather than handing a black square downstream.

    Install

    ComfyUI Manager → Custom Nodes → search Nano Banana, confirm publisher acedatacloud, install, restart. From source:

    cd ComfyUI/custom_nodes
    git clone https://github.com/AceDataCloud/NanoBananaComfyUI.git
    cd NanoBananaComfyUI
    python -m pip install -r requirements.txt
    

    Requirements is a single line - requests>=2.31,<3. Image decoding leans on the NumPy, Pillow and PyTorch ComfyUI already has, so there's no second copy of torch to reconcile and nothing to download.

    Set the key in the ComfyUI process environment and restart:

    export ACEDATACLOUD_API_KEY='paste-your-key-here'
    python main.py
    

    Strictly speaking you can read the environment variable once and it's set for the whole pack - the key is read at call time, not stored in the graph.

    Where people get burned

    "Image URL must be an Ace Data Cloud HTTPS media link." You pasted something else. If you're trying to load a file you already saved to disk, use the core LoadImage node instead - that one reads ComfyUI/input/, and this one never will.

    "The media link does not contain a valid image." The download succeeded but the bytes aren't a decodable image. Usually a task that "succeeded" without real output, or a URL from a different service that happened to look similar.

    HTTP 403 or a timeout on the download. The link expired or the task hasn't actually completed. Re-run Retrieve, get a fresh URL, then load.

    One URL per run. This node takes exactly one, so it's the wrong tool for a count-4 generation - that's what the Load Images node is for.

    CategoryAce Data Cloud/Nano Banana

    Inputs (1)

    NameTypeDefaultDescription
    image_urlSTRING—

    Outputs (1)

    NameTypeDescription
    imageIMAGE—