From d39d98f87894fd46fc6f8f649a2e0fd6be1f56d1 Mon Sep 17 00:00:00 2001 From: bymyself Date: Fri, 6 Feb 2026 00:59:27 -0800 Subject: [PATCH] fix: address review - un-mark model merge, video, image, and training node widgets as advanced Per comfyanonymous review: - Model merge arguments should not be advanced (all 14 model-specific merge classes) - SaveAnimatedWEBP lossless/quality/method should not be advanced - SaveWEBM/SaveVideo codec/crf/format should not be advanced - TrainLoraNode options should not be advanced (7 inputs) Amp-Thread-ID: https://ampcode.com/threads/T-019c322b-a3a8-71b7-9962-d44573ca6352 --- comfy_extras/nodes_images.py | 6 ++-- .../nodes_model_merging_model_specific.py | 28 +++++++++---------- comfy_extras/nodes_train.py | 7 ----- comfy_extras/nodes_video.py | 8 +++--- 4 files changed, 21 insertions(+), 28 deletions(-) diff --git a/comfy_extras/nodes_images.py b/comfy_extras/nodes_images.py index 87c035441..d27f49ece 100644 --- a/comfy_extras/nodes_images.py +++ b/comfy_extras/nodes_images.py @@ -138,9 +138,9 @@ class SaveAnimatedWEBP(IO.ComfyNode): IO.Image.Input("images"), IO.String.Input("filename_prefix", default="ComfyUI"), IO.Float.Input("fps", default=6.0, min=0.01, max=1000.0, step=0.01), - IO.Boolean.Input("lossless", default=True, advanced=True), - IO.Int.Input("quality", default=80, min=0, max=100, advanced=True), - IO.Combo.Input("method", options=list(cls.COMPRESS_METHODS.keys()), advanced=True), + IO.Boolean.Input("lossless", default=True), + IO.Int.Input("quality", default=80, min=0, max=100), + IO.Combo.Input("method", options=list(cls.COMPRESS_METHODS.keys())), # "num_frames": ("INT", {"default": 0, "min": 0, "max": 8192}), ], hidden=[IO.Hidden.prompt, IO.Hidden.extra_pnginfo], diff --git a/comfy_extras/nodes_model_merging_model_specific.py b/comfy_extras/nodes_model_merging_model_specific.py index 8092e38cd..55eb3ccfe 100644 --- a/comfy_extras/nodes_model_merging_model_specific.py +++ b/comfy_extras/nodes_model_merging_model_specific.py @@ -7,7 +7,7 @@ class ModelMergeSD1(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["time_embed."] = argument arg_dict["label_emb."] = argument @@ -34,7 +34,7 @@ class ModelMergeSDXL(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["time_embed."] = argument arg_dict["label_emb."] = argument @@ -60,7 +60,7 @@ class ModelMergeSD3_2B(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embed."] = argument arg_dict["x_embedder."] = argument @@ -84,7 +84,7 @@ class ModelMergeAuraflow(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["init_x_linear."] = argument arg_dict["positional_encoding"] = argument @@ -111,7 +111,7 @@ class ModelMergeFlux1(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["img_in."] = argument arg_dict["time_in."] = argument @@ -137,7 +137,7 @@ class ModelMergeSD35_Large(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embed."] = argument arg_dict["x_embedder."] = argument @@ -160,7 +160,7 @@ class ModelMergeMochiPreview(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_frequencies."] = argument arg_dict["t_embedder."] = argument @@ -182,7 +182,7 @@ class ModelMergeLTXV(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["patchify_proj."] = argument arg_dict["adaln_single."] = argument @@ -204,7 +204,7 @@ class ModelMergeCosmos7B(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embedder."] = argument arg_dict["extra_pos_embedder."] = argument @@ -228,7 +228,7 @@ class ModelMergeCosmos14B(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embedder."] = argument arg_dict["extra_pos_embedder."] = argument @@ -253,7 +253,7 @@ class ModelMergeWAN2_1(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["patch_embedding."] = argument arg_dict["time_embedding."] = argument @@ -276,7 +276,7 @@ class ModelMergeCosmosPredict2_2B(comfy_extras.nodes_model_merging.ModelMergeBlo arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embedder."] = argument arg_dict["x_embedder."] = argument @@ -299,7 +299,7 @@ class ModelMergeCosmosPredict2_14B(comfy_extras.nodes_model_merging.ModelMergeBl arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embedder."] = argument arg_dict["x_embedder."] = argument @@ -322,7 +322,7 @@ class ModelMergeQwenImage(comfy_extras.nodes_model_merging.ModelMergeBlocks): arg_dict = { "model1": ("MODEL",), "model2": ("MODEL",)} - argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "advanced": True}) + argument = ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}) arg_dict["pos_embeds."] = argument arg_dict["img_in."] = argument diff --git a/comfy_extras/nodes_train.py b/comfy_extras/nodes_train.py index 555c96f11..024a89391 100644 --- a/comfy_extras/nodes_train.py +++ b/comfy_extras/nodes_train.py @@ -871,7 +871,6 @@ class TrainLoraNode(io.ComfyNode): min=1, max=1024, tooltip="The number of gradient accumulation steps to use for training.", - advanced=True, ), io.Int.Input( "steps", @@ -900,7 +899,6 @@ class TrainLoraNode(io.ComfyNode): options=["AdamW", "Adam", "SGD", "RMSprop"], default="AdamW", tooltip="The optimizer to use for training.", - advanced=True, ), io.Combo.Input( "loss_function", @@ -920,27 +918,23 @@ class TrainLoraNode(io.ComfyNode): options=["bf16", "fp32"], default="bf16", tooltip="The dtype to use for training.", - advanced=True, ), io.Combo.Input( "lora_dtype", options=["bf16", "fp32"], default="bf16", tooltip="The dtype to use for lora.", - advanced=True, ), io.Combo.Input( "algorithm", options=list(adapter_maps.keys()), default=list(adapter_maps.keys())[0], tooltip="The algorithm to use for training.", - advanced=True, ), io.Boolean.Input( "gradient_checkpointing", default=True, tooltip="Use gradient checkpointing for training.", - advanced=True, ), io.Combo.Input( "existing_lora", @@ -957,7 +951,6 @@ class TrainLoraNode(io.ComfyNode): "bypass_mode", default=False, tooltip="Enable bypass mode for training. When enabled, adapters are applied via forward hooks instead of weight modification. Useful for quantized models where weights cannot be directly modified.", - advanced=True, ), ], outputs=[ diff --git a/comfy_extras/nodes_video.py b/comfy_extras/nodes_video.py index 17e107f70..ccf7b63d3 100644 --- a/comfy_extras/nodes_video.py +++ b/comfy_extras/nodes_video.py @@ -22,9 +22,9 @@ class SaveWEBM(io.ComfyNode): inputs=[ io.Image.Input("images"), io.String.Input("filename_prefix", default="ComfyUI"), - io.Combo.Input("codec", options=["vp9", "av1"], advanced=True), + io.Combo.Input("codec", options=["vp9", "av1"]), io.Float.Input("fps", default=24.0, min=0.01, max=1000.0, step=0.01), - io.Float.Input("crf", default=32.0, min=0, max=63.0, step=1, tooltip="Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize.", advanced=True), + io.Float.Input("crf", default=32.0, min=0, max=63.0, step=1, tooltip="Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize."), ], hidden=[io.Hidden.prompt, io.Hidden.extra_pnginfo], is_output_node=True, @@ -77,8 +77,8 @@ class SaveVideo(io.ComfyNode): inputs=[ io.Video.Input("video", tooltip="The video to save."), io.String.Input("filename_prefix", default="video/ComfyUI", tooltip="The prefix for the file to save. This may include formatting information such as %date:yyyy-MM-dd% or %Empty Latent Image.width% to include values from nodes."), - io.Combo.Input("format", options=Types.VideoContainer.as_input(), default="auto", tooltip="The format to save the video as.", advanced=True), - io.Combo.Input("codec", options=Types.VideoCodec.as_input(), default="auto", tooltip="The codec to use for the video.", advanced=True), + io.Combo.Input("format", options=Types.VideoContainer.as_input(), default="auto", tooltip="The format to save the video as."), + io.Combo.Input("codec", options=Types.VideoCodec.as_input(), default="auto", tooltip="The codec to use for the video."), ], hidden=[io.Hidden.prompt, io.Hidden.extra_pnginfo], is_output_node=True,