Nodes/Comfyui-zhenzhen/zhenzhen-mai-image-2.5-fal
ComfyUI Node

zhenzhen-mai-image-2.5-fal

Xiaomi's Mai Image 2.5 text-to-image, no Mi phone required

By T8mars·Created about a year ago·Updated 2 days ago· 740
zhenzhen-mai-image-2.5-fal
    • images
    • response
    • image_urls
    prompt
    api_key
    aspect_ratioauto
    num_images1
    output_formatpng
    poll_interval6
    max_poll_attempts600
    skip_errorfalse
    seed0

    The fastest way to describe Comfly_mai_image_2_5_fal ("zhenzhen-mai-image-2.5-fal") is: Xiaomi's Mai Image 2.5, called as an API, with the result dropped back into your graph as a plain IMAGE. You type a prompt, pick an aspect ratio, and a few seconds later there's a generated image on the canvas that a local sampler might have made - except nothing on your machine did the work.

    Mai Image 2.5 has no open weights, so this is the "call it or don't use it" situation, and this node is one of two ways to call it from ComfyUI: this one for text-to-image, and Comfly_mai_image_2_5_edit_fal for editing with up to four reference images. Both live in the T8mars/Comfyui-zhenzhen pack, the sprawling collection of "Comfly" API-wrapper nodes that route through the author's paid reseller service - 贞贞的AI工坊 at ai.t8star.org for overseas, api.seedance.nz for the cheaper China site. Under the hood it's the standard FAL dance: submit to the /fal proxy with your key, poll until the job completes, download, decode.

    The inputs that matter

    Honestly a small surface, which is the appeal:

    • prompt - required, your text description. Mai is a competent follower of reasonably natural language; more specific beats more poetic.
    • aspect_ratio - auto or the standard set (1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3).
    • num_images - 1 to 4 per call. Each extra image costs, so don't treat this as a free batch button.
    • output_format - png (default), jpeg, or webp.
    • seed - mostly a ComfyUI cache-control knob here (fixed = reuse the cached result, randomize = new run) rather than a true model seed.
    • poll_interval / max_poll_attempts - default 6s × 600 = a one-hour timeout ceiling.
    • skip_error - on, a failed job returns a placeholder instead of halting the workflow.

    The api_key field takes your Zhenzhen key directly - that's all the FAL nodes need; the pack's "lowprice" nodes instead read a key from a shared settings node.

    Outputs

    • images - the generated IMAGE(s). Straight into a preview or save node.
    • image_urls - the hosted result URLs as a string.
    • response - raw API response, useful when something's off.

    Installing and getting a key

    Install the whole pack - there's no such thing as installing this node alone, and no model download.

    cd ComfyUI/custom_nodes
    git clone https://github.com/T8mars/Comfyui-zhenzhen
    # restart ComfyUI
    

    Or ComfyUI Manager → search "Comfyui-zhenzhen" → install. Then grab an API key from the author's site and paste it in. Remember this is a one-person reseller operation; registration has been paused at times, and if sign-up is closed the day you land, that's the service, not you.

    The honest part

    The "FAL" name is doing a lot of work - these jobs run on the author's proxy of FAL's queue, with pre-deducted credits that settle (refund the difference) after each run. And it's a third-party API node by design: your prompt leaves your machine and crosses a reseller's server, subject to whatever filtering Mai itself enforces. If you're making product shots or concept art and the per-call price works for you, it's a genuinely clean little node - prompt in, image out, nothing to babysit. If you can run an open model locally for the same job, that's still the cheaper long-term habit. This one's for the closed model you can't.

    Categoryzhenzhen/FAL

    Inputs (9)

    NameTypeDefaultDescription
    promptSTRING
    api_keyoptSTRING
    aspect_ratiooptCOMBOauto8 options: auto, 1:1, 4:3, 3:4, 16:9, 9:16, +2
    num_imagesoptINT11–4
    output_formatoptCOMBOpng3 options: png, jpeg, webp
    poll_intervaloptINT61–60
    max_poll_attemptsoptINT60010–3600Default 600*6s = 3600s timeout.
    skip_erroroptBOOLEANfalse
    seedoptINT00–18446744073709550000Execution seed for ComfyUI cache control. Fixed reuses the cached result; randomize/increment/decrement requests a new run. This compatibility seed is not sent to APIs that do not expose a native seed parameter.

    Outputs (3)

    NameTypeDescription
    imagesIMAGE
    responseSTRING
    image_urlsSTRING