Nodes/Hugging Face LoRA Uploader/ModelScope LoRA Uploader (HTTP)
ComfyUI Node

ModelScope LoRA Uploader (HTTP)

China's model hub, from inside your graph

By vioaki·Created about a year ago·Updated 10 months ago· 0
ModelScope LoRA Uploader (HTTP)
    • status_message
    lora_name
    modelscope_tokenYOUR_MODELSCOPE_TOKEN_HERE
    repo_idyour_username/your_model_name
    commit_messageUpload LoRA via ComfyUI
    visibility_strpublic
    chinese_name
    license_strApache License 2.0
    create_repo_if_not_existstrue
    revisionmaster
    path_in_repo

    ModelScope is Alibaba's answer to Hugging Face - the model hub that China's ecosystem actually uses, where a huge share of Qwen, Z-Image and other models actually ship from. If your LoRAs are trained for an audience there, or you just want a China-friendly mirror, this is the uploader for it. It's the sibling node to the Hugging Face LoRA Uploader in the same pack: same idea, different hub, one meaningful upgrade.

    Where the HF node just dumps a file, this one builds you a proper model repo. It copies the LoRA into a temp folder, writes a configuration.json (declaring model_type: lora, PyTorch framework, text-to-image task) and a README.md, uploads the whole package to a branch, then deletes the temp files. The result is a repo on ModelScope that's browsable and usable, not just a raw blob.

    How it works

    The "HTTP" in its display name is the whole story. Version 0.2.0 of the pack switched this node to ModelScope's HTTP API via the modelscope library's HubApi - no git configuration needed on your machine, which was the classic friction point for ModelScope uploads before. The flow: log in with your token, check if the repo exists, create it if it doesn't (with your chosen visibility and license), upload the folder to your target branch, clean up. The success output (status_message, a string) gives you the repo URL.

    Inputs to set

    The core four mirror the HF node: lora_name (dropdown of your ComfyUI LoRAs - same restart-to-refresh caveat), modelscope_token, repo_id (username/model_name), and commit_message. Then visibility_str, which is public or private - a required dropdown rather than a checkbox like HF's.

    The optional extras are where ModelScope's conventions show up:

    • chinese_name - a Chinese display name for the model. Skip it if you're not targeting Chinese-language users; it's optional and mostly cosmetic.
    • license_str - Apache 2.0 or MIT, or "Other (Set on ModelScope)" if you'll set it on the site afterward.
    • create_repo_if_not_exists (default true) and revision (default master - the branch to push to) - straight port of the HF behavior.
    • path_in_repo - subfolder inside the repo, same as the HF node.

    Installing and using it

    Same install as its sibling: search "ModelScope LoRA Uploader" in ComfyUI Manager, or clone https://github.com/violet0927/ComfyUI-HuggingFaceLoraUploader into custom_nodes, pip install -r requirements.txt, restart. Note the pack installs huggingface_hub and modelscope together, so you get both uploaders in one shot.

    Gotchas

    ModelScope is hosted in China, so uploads from elsewhere can be slow. A multi-hundred-MB LoRA taking a while is normal, not a hang. The repo-exists check is a bit fragile - it infers "not found" by matching keywords in the error text, so a weird network hiccup can surface as "Error checking ModelScope repository" even when your token is fine; retry before assuming auth failure. And the security warning from the HF node applies double here: your token is stored in plain text in the workflow JSON, so never share a workflow that has run this node without scrubbing it.

    It's a narrow utility - if you never publish to ModelScope, you'll never touch it. But for reaching that audience, it's the difference between "upload the file somewhere" and "ship a proper model card."

    CategoryUploaders/ModelScope

    Inputs (10)

    NameTypeDefaultDescription
    lora_nameCOMBO1 options: None (Ensure LoRA paths are set and files exist)
    modelscope_tokenSTRINGYOUR_MODELSCOPE_TOKEN_HERE
    repo_idSTRINGyour_username/your_model_name
    commit_messageSTRINGUpload LoRA via ComfyUI
    visibility_strCOMBOpublic2 options: public, private
    chinese_nameoptSTRING
    license_stroptCOMBOApache License 2.03 options: Apache License 2.0, MIT License, Other (Set on ModelScope)
    create_repo_if_not_existsoptBOOLEANtrue
    revisionoptSTRINGmaster
    path_in_repooptSTRING

    Outputs (1)

    NameTypeDescription
    status_messageSTRING