Nodes/☁️BizyAir Nodes/☁️BizyAir TrainDatasetAdd
ComfyUI Node

☁️BizyAir TrainDatasetAdd

ComfyUI Node Guide

By siliconflow·Created 2 years ago·Updated 11 months ago· 855
☁️BizyAir TrainDatasetAdd
  • dataset_config
  • dataset
width1024
height1024
batch_size2
dataset_path
dataset_version_id
class_tokenstrigger_word
enable_buckettrue
bucket_no_upscalefalse
num_repeats1
min_bucket_reso256
max_bucket_reso1024

If you've ever trained a LoRA with Kohya's scripts, this node's fields will look immediately familiar - bucketing, num_repeats, a trigger word slotted in as class_tokens. That's not a coincidence: this is BizyAir's dataset-configuration node for its cloud Flux LoRA trainer, and it speaks the same vocabulary Kohya's sd-scripts made the de facto standard across the whole LoRA-training ecosystem. If you already know what a "bucket" is from training locally, you already know most of what this node does.

Its job is narrow and specific: take a dataset you've pointed BizyAir at, describe how it should be bucketed and repeated for training, and package that into a config the rest of BizyAir's FluxTrainer pipeline consumes. It doesn't train anything itself - it prepares the dataset side of the job.

Inputs and outputs

Nearly every field here carries the author's own tooltip, so trust those over guessing:

  • dataset_config - a JSON blob, the base config this node builds on top of.
  • width / height - integers defaulting to 1024, described as "base resolution width" / "base resolution height."
  • batch_size - default 2, with the tooltip warning "Higher batch size uses more memory and generalizes the training more" - the standard tradeoff: bigger batches average gradients over more images per step, which can smooth out training but costs proportionally more memory.
  • dataset_path - an enum populated from datasets you've made available to BizyAir (shown as "to choose" until you've set one up).
  • dataset_version_id - a string, defaulting empty, presumably for pinning to a specific uploaded version of a dataset if BizyAir versions them.
  • class_tokens - defaults to "trigger_word", and the tooltip spells out exactly how it's used: "aka trigger word, if specified, will be added to the start of each caption, if no captions exist, will be used on it's own." This is the word you'll actually type in your prompt later to invoke whatever the LoRA learned.
  • enable_bucket - on by default, tooltip: "enable buckets for multi aspect ratio training." Bucketing groups training images of similar aspect ratios together instead of forcing every image to one fixed shape, which matters a lot if your dataset isn't all square crops.
  • bucket_no_upscale - off by default, tooltip: "don't allow upscaling when bucketing." Turn this on if you'd rather a smaller image get placed in a smaller bucket than stretched up to fit a larger one.
  • num_repeats - default 1, tooltip: "number of times to repeat dataset for an epoch." Raise this for a small dataset you want the trainer to see more often per epoch.
  • min_bucket_reso / max_bucket_reso - default 256 and 1024, the resolution floor and ceiling bucketing is allowed to use.

The output is dataset - a JSON config, ready to hand to the rest of BizyAir's FluxTrainer node chain.

Installing BizyAir

Through ComfyUI Manager: search "BizyAir," install. Or clone it manually:

cd ComfyUI/custom_nodes && git clone https://github.com/siliconflow/BizyAir.git

Restart ComfyUI, or run comfy node install bizyair on Comfy-CLI. Set an API key on first use via the README's "click to login" link - training runs entirely on BizyAir's cloud infrastructure, not your local GPU, which is the whole point if you don't own hardware capable of training a Flux LoRA yourself.

Common issues

An empty dataset_path dropdown means you haven't uploaded or registered a dataset with BizyAir yet - that has to happen before this node has anything to point at, and it's a separate step from installing the node pack.

If your trained LoRA doesn't respond to the trigger word you expected, double-check class_tokens actually got set to something memorable before training ran - the default value is literally the placeholder string "trigger_word", and it's an easy field to skip past without noticing it's still a placeholder.

Bucketing issues (odd cropping, stretched images) usually trace back to min_bucket_reso/max_bucket_reso being too narrow a range for your dataset's actual image sizes - widen them if your source images vary a lot in aspect ratio or resolution.

Category☁️BizyAir/FluxTrainer

Inputs (12)

NameTypeDefaultDescription
dataset_configJSON
widthINT1024base resolution width
heightINT1024base resolution height
batch_sizeINT2Higher batch size uses more memory and generalizes the training more
dataset_pathCOMBO1 options: to choose
dataset_version_idSTRING
class_tokensSTRINGtrigger_wordaka trigger word, if specified, will be added to the start of each caption, if no captions exist, will be used on it's own
enable_bucketBOOLEANtrueenable buckets for multi aspect ratio training
bucket_no_upscaleBOOLEANfalsedon't allow upscaling when bucketing
num_repeatsINT1number of times to repeat dataset for an epoch
min_bucket_resoINT25664–4096min bucket resolution
max_bucket_resoINT102464–4096max bucket resolution

Outputs (1)

NameTypeDescription
datasetJSON