ComfyUI-FLUX-BFL-API icon indicating copy to clipboard operation
ComfyUI-FLUX-BFL-API copied to clipboard

Feature Request: Add Fine-Tuned Depth Node (`FluxFineTunedDepth_BFL`)

Open pleberer opened this issue 7 months ago • 2 comments

Hi @gelasdev,

Thanks for maintaining this project—it's been hugely helpful!
I’m not an expert, but I needed to call the flux-pro-1.0-depth-finetuned endpoint, so I added a small fine-tuned depth node locally. It works for me, and I thought it might be useful for others as well.


1 New class

# ─────────── FluxFineTunedDepth node ───────────
class FluxFineTunedDepth(BaseFlux):
    @classmethod
    def INPUT_TYPES(cls):
        return {
            "required": {
                "prompt": ("STRING", {"default": "", "multiline": True}),
                "control_image": ("STRING", {"default": None}),
                "finetune_id": ("STRING", {"default": ""}),
                "strength": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 1.0}),
                "prompt_upsampling": ("BOOLEAN", {"default": False}),
                "steps": ("INT", {"default": 28, "min": 15, "max": 50}),
                "guidance": ("FLOAT", {"default": 60.0, "min": 1.5, "max": 100.0}),
                "safety_tolerance": ("INT", {"default": 2, "min": 0, "max": 6}),
                "output_format": (["jpeg", "png"], {"default": "jpeg"})
            },
            "optional": {
                "seed": ("INT", {"default": -1})
            }
        }

    def generate_image(
        self, prompt, control_image, finetune_id, strength,
        prompt_upsampling, steps, guidance, safety_tolerance,
        output_format, seed
    ):
        arguments = {
            "prompt": prompt,
            "control_image": control_image,
            "finetune_id": finetune_id,
            "strength": strength,
            "prompt_upsampling": prompt_upsampling,
            "steps": steps,
            "guidance": guidance,
            "safety_tolerance": safety_tolerance,
            "output_format": output_format
        }
        if seed != -1:
            arguments["seed"] = seed
        return super().generate_image("flux-pro-1.0-depth-finetuned", arguments)

2 Node registration

# Added to NODE_CLASS_MAPPINGS
"FluxFineTunedDepth_BFL": FluxFineTunedDepth
# Added to NODE_DISPLAY_NAME_MAPPINGS
"FluxFineTunedDepth_BFL": "Flux Fine-Tuned Depth (BFL)"

Why it matters

  • Lets users pass finetune_id and strength parameters to a dedicated endpoint
  • Mirrors the existing pattern used for FluxProDepth_BFL, so the change is minimal and consistent

If this looks reasonable, I’d love to see it upstream. Happy to tweak the code or help test—just let me know.

Thanks again for all the hard work! 🙏

Best,
Pascal

pleberer avatar Jun 07 '25 09:06 pleberer

Hi @pleberer,

Thanks for your comment and contribution.

I’ve released a version that includes support for the flux-pro-1.0-depth-finetuned endpoint. A sample workflow has been added. I’d really appreciate it if you could give it a try and share any feedback.

I’ll add examples for the other fine-tuned nodes soon.

Thanks again!

gelasdev avatar Jun 08 '25 01:06 gelasdev

Hi @gelasdev unfortunatly I only run a production enviroment right now, so testing any changes isn't possible for me. Thanks a lot for your implementation an mention :)

Greetings from Vienna Pascal

pleberer avatar Jun 12 '25 08:06 pleberer