Nodes/ComfyUI_RH_ZImageI2L/RunningHub_ZImageI2L_Saver
ComfyUI Node

RunningHub_ZImageI2L_Saver

The output node that's really a file copier — with a name check that bites

By HM-RunningHub·Created 7 months ago·Updated 7 months ago· 65
RunningHub_ZImageI2L_Saver
  • lora_path
    filename_prefixzimage_lora

    The Saver is the terminal node of the Z-Image image-to-LoRA chain, and it has the most humble job in the pack: take the LoRA the generator just wrote into models/loras, copy it into ComfyUI's output folder with a tidy counter-based filename, and tell the RunningHub platform where it went. If you're running locally, that's honestly all it does - the generator already saved the file, so this node is mostly about giving it a proper name and a place you can find it.

    It has two inputs and no outputs:

    • lora_path - the LORA_PATH socket from the LoraGenerator. It's marked forceInput, so you wire it rather than type it.
    • filename_prefix (default zimage_lora) - the base name for the copied file. Run it twice and you get zimage_lora_00001_.safetensors, then ..._00002_, and so on, the same counter convention SaveImage uses.

    Under the hood the flow is: validate the source file exists, copy it via shutil.copy2 into the output directory with the counter filename, then return a UI dict flagged as type "output" so RunningHub's cloud backend can capture the file and hand it back to you in the browser. If you're on a local ComfyUI install, that UI dict is just metadata - the actual file lands in your output folder like any generated image would.

    Here's the gotcha that bites people: the Saver won't copy just any LoRA. The source checks that the path contains the string zimage_i2l_lora (the exact prefix this pack's generator stamps on its random filenames) and raises ValueError: illegal lora path otherwise. So you can't use this node as a generic "save any LoRA somewhere nice" utility - it only accepts files this pack made. That's by design, to keep the RunningHub platform's output capture from grabbing the wrong thing, but it's worth knowing before you try to point it at some other .safetensors you had lying around.

    So, is it necessary? On the RunningHub cloud platform, yes - that platform-compatible UI dict is how the site returns your generated LoRA to you, and the README positions this node as the intended end of the workflow. Locally, you can happily skip it and just grab the file from models/loras (though you'll be digging through zimage_i2l_lora_* random names instead of a clean zimage_lora_00001_). Either way, the one real troubleshooting note is that "illegal lora path" error - it means you didn't feed it the generator's own output.

    Install is the same as the rest of the pack: ComfyUI Manager (search "ComfyUI_RH_ZImageI2L") or git clone https://github.com/HM-RunningHub/ComfyUI_RH_ZImageI2L.git into custom_nodes, pip install -r requirements.txt, restart. Like the other nodes in the pack, expect the ModelScope model downloads on first run - the Saver itself doesn't trigger them, but the Loader upstream will.

    CategoryRunningHub/ZImageI2L

    Inputs (2)

    NameTypeDefaultDescription
    lora_pathLORA_PATH
    filename_prefixSTRINGzimage_lora

    Outputs (0)

    No outputs