Nodes/ComfyUI_Fill-Nodes/FL HF Character
ComfyUI Node

FL HF Character

Publish a character's LoRA and dataset to Hugging Face, organized

By filliptm·Created 3 years ago·Updated a day ago· 628
FL HF Character
  • dataset_zip
  • caption_layout
  • caption_PDF_layout
  • csv_file
  • STRING
api_key
owner
repo_namemy-awesome-model
studio_name
project_name
character_name
create_new_repo
repo_type
lora_file

If you're building out a library of trained characters - a LoRA per character, plus the dataset and captions that made it - dumping everything into one flat Hugging Face repo gets messy fast. FL_HF_Character exists specifically for that workflow: it uploads a character's assets to the Hub under a fixed, predictable folder structure - studio/project/character - so twenty characters across five projects stay organized instead of turning into a junk drawer of files with similar names.

How it works

You point it at a repo (creating one if needed), tell it which studio, project, and character the assets belong to, and it uploads whatever you've wired in - LoRA file, a zipped dataset, a caption-layout image, a caption PDF, a CSV - into that repo path. Hugging Face repos are git under the hood, so every upload is a real commit with revision history, not an overwrite that erases what was there before.

The inputs and outputs that matter

Required: api_key (your HF write token), owner, repo_name, studio_name, project_name, character_name - these five build the folder path assets land in - plus create_new_repo (True/False) and repo_type (model / dataset / space).

Optional, wire in whichever apply: lora_file (a path), dataset_zip (ZIP), caption_layout (IMAGE - pairs nicely with FL_ImageCaptionLayout's contact-sheet output), caption_PDF_layout (PDF), and csv_file (CSV).

Output: a single STRING - the upload result/status, worth printing or logging rather than ignoring.

How to install it

Ships in the ComfyUI_Fill-Nodes pack. Easiest route is ComfyUI Manager: search ComfyUI_Fill-Nodes, install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI_Fill-Nodes
pip install -r ComfyUI_Fill-Nodes/requirements.txt

then restart. The Hugging Face integration needs the huggingface_hub Python package - it's a common transitive dependency so it's often already present, but if imports fail on first use, running the pack's requirements file is the fix.

Common issues & troubleshooting

You need a write-scoped token, not a read token. HF API keys are scoped, and a read-only token will fail on the upload step with a permissions error. Generate one with write access from your Hugging Face account settings.

Repo doesn't exist yet. Set create_new_repo to True the first time you upload to a given owner/repo_name combination. Leave it False on subsequent uploads to the same repo - it's a flag for repo creation, not a general "overwrite" toggle.

Public by default. Like most Hub upload flows, a newly created repo is public unless you make it private afterward on huggingface.co - don't assume a character's training data is private just because you uploaded it from a local ComfyUI workflow.

This is a durable publish, not a scratch backup. The KB's read on Hugging Face itself is worth knowing here: official repos can disappear (the SD 1.5 repo did), and gated or license-flagged content has been removed on report. That mostly matters for content you're redistributing under someone else's license - your own character LoRAs and datasets are yours to host, but it's still worth keeping a local copy of anything you can't afford to lose, rather than treating the Hub as your only archive.

Category🏵️Fill Nodes/Hugging Face

Inputs (13)

NameTypeDefaultDescription
api_keySTRING
ownerSTRING
repo_nameSTRINGmy-awesome-model
studio_nameSTRING
project_nameSTRING
character_nameSTRING
create_new_repoCOMBO2 options: True, False
repo_typeCOMBO3 options: model, dataset, space
lora_fileoptSTRING
dataset_zipoptZIP
caption_layoutoptIMAGE
caption_PDF_layoutoptPDF
csv_fileoptCSV

Outputs (1)

NameTypeDescription
STRINGSTRING