FLUX 1 将像 Stable Diffusion 一样完整支持ControlNet组件

之前 InstantX 团队做的多合一的 Flux ControlNet 现在开始和 ShakkerAI 合作并推出了:Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro

该模型支持 7 种控制模式,包括 canny (0), tile (1), depth (2), blur (3), pose (4), gray (5) 和 low quality (6),并且还能和其他 ControlNet 一起使用。

模型卡片

  • 该 checkpoint 是 FLUX.1-dev-Controlnet-Union 的专业版,经过更多步骤和数据集的训练。
  • 该模型支持 7 种控制模式,包括 canny (0)、tile (1)、depth (2)、blur (3)、pose (4)、gray (5)、low quality (6)。
  • 建议 controlnet_conditioning_scale 为 0.3-0.8。
  • 该模型可与其他 ControlNets 共同使用。

效果



Multi-Controls 推理

python 复制代码
import torch
from diffusers.utils import load_image

from diffusers import FluxControlNetPipeline, FluxControlNetModel, FluxMultiControlNetModel

base_model = 'black-forest-labs/FLUX.1-dev'
controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro'

controlnet_union = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.bfloat16)
controlnet = FluxMultiControlNetModel([controlnet_union]) # we always recommend loading via FluxMultiControlNetModel

pipe = FluxControlNetPipeline.from_pretrained(base_model, controlnet=controlnet, torch_dtype=torch.bfloat16)
pipe.to("cuda")

prompt = 'A bohemian-style female travel blogger with sun-kissed skin and messy beach waves.'
control_image_depth = load_image("https://huggingface.co/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro/resolve/main/assets/depth.jpg")
control_mode_depth = 2

control_image_canny = load_image("https://huggingface.co/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro/resolve/main/assets/canny.jpg")
control_mode_canny = 0

width, height = control_image.size

image = pipe(
    prompt, 
    control_image=[control_image_depth, control_image_canny],
    control_mode=[control_mode_depth, control_mode_canny],
    width=width,
    height=height,
    controlnet_conditioning_scale=[0.2, 0.4],
    num_inference_steps=24, 
    guidance_scale=3.5,
    generator=torch.manual_seed(42),
).images[0]

我们还支持像以前一样加载多个控制网。

python 复制代码
from diffusers import FluxControlNetModel, FluxMultiControlNetModel

controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro'
controlnet_union = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.bfloat16)

controlnet_model_depth = 'Shakker-Labs/FLUX.1-dev-Controlnet-Depth'
controlnet_depth = FluxControlNetModel.from_pretrained(controlnet_model_depth, torch_dtype=torch.bfloat16)

controlnet = FluxMultiControlNetModel([controlnet_union, controlnet_depth])

# set mode to None for other ControlNets
control_mode=[2, None]

资料

  • InstantX/FLUX.1-dev-Controlnet-Canny
  • Shakker-Labs/FLUX.1-dev-ControlNet-Depth
  • Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro
相关推荐
灵感素材坊18 分钟前
解锁音乐创作新技能:AI音乐网站的正确使用方式
人工智能·经验分享·音视频
xinxiyinhe1 小时前
如何设置Cursor中.cursorrules文件
人工智能·python
AI服务老曹1 小时前
运用先进的智能算法和优化模型,进行科学合理调度的智慧园区开源了
运维·人工智能·安全·开源·音视频
alphaAIstack1 小时前
大语言模型推理能力从何而来?
人工智能·语言模型·自然语言处理
zenRRan2 小时前
Qwen2.5-VL Technical Report!!! 操作手机电脑、解析化学公式和乐谱、剪辑电影等,妥妥六边形战士 !...
人工智能
农夫山泉2号2 小时前
【个人开源】——从零开始在高通手机上部署sd(二)
stable diffusion·智能手机·sd·高通·qnn
冒泡的肥皂2 小时前
DeepSeek+Dify打造数据库查询专家
人工智能
让我安静会2 小时前
Obsidian·Copilot 插件配置(让AI根据Obsidian笔记内容进行对话)
人工智能·笔记·copilot
Allen_LVyingbo2 小时前
Scrum方法论指导下的Deepseek R1医疗AI部署开发
人工智能·健康医疗·scrum
Watermelo6172 小时前
从DeepSeek大爆发看AI革命困局:大模型如何突破算力囚笼与信任危机?
人工智能·深度学习·神经网络·机器学习·ai·语言模型·自然语言处理