Flux局部重绘1——学习路线
目录一、前言二、Flux局部重绘学习路线一、基础理论层必须先掌握1.1 扩散模型基础1.2 Flow Matching / Rectified FlowFLUX 核心训练范式1.3 DiT (Diffusion Transformer) 架构二、FLUX 基础模型层模型 A2.1 FLUX.1 原始论文2.2 FLUX 架构深度解析强烈推荐2.3 关键架构特点2.4 官方代码三、LoRA 训练层模型 A-LoRA3.1 LoRA 基础3.2 Diffusers 官方 FLUX LoRA 训练代码四、ControlNet 层模型 B / 模型 B-trained4.1 ControlNet 原始论文必读4.2 FLUX 时代的 ControlNet 架构演变4.3 Diffusers 官方 FLUX ControlNet 训练代码模型 B-trained 的直接来源4.4 FLUX ControlNet 模型结构代码4.5 第三方训练实现五、Inpainting ControlNet 层模型 C5.1 FLUX.1-dev-Controlnet-Inpainting-Beta5.2 Inpainting 基础理论5.3 训练数据构建要点六、Fill 模型层模型 D6.1 FLUX.1-Fill-dev6.2 架构特点6.3 与 ControlNet Inpainting模型 C的核心区别七、推荐学习路线图八、关键资源速查表一、前言仅供参考未经实验验证。二、Flux局部重绘学习路线比如说我用diffusers官方的flux.1-dev简称为模型A的lora训练代码训练出来的lora简称为模型A-lora这时候我可以叠加controlnet简称为模型B对吧那diffusers官方应该也有一个训练controlnet的代码训练出来的模型简称为模型B-trained那现在我有一个FLUX.1-dev-Controlnet-Inpainting-Beta简称为模型C有一个FLUX.1-Fill-dev简称为模型 D。 我想从零学习上面的模型是如何构建的给出学习路线和学习资料尤其是涉及的论文地址和Github地址我来为你梳理一条从零学习这些 FLUX 生态模型的完整路线涵盖你提到的模型 AFLUX.1-dev、A-LoRA、BControlNet、B-trained、CInpainting ControlNet和 DFill-dev的构建原理。一、基础理论层必须先掌握1.1 扩散模型基础论文地址为什么重要DDPM - Ho et al., 2020arXiv:2006.11239扩散模型的奠基之作理解前向加噪/反向去噪LDM (Stable Diffusion) - Rombach et al., 2022arXiv:2112.10752latent 空间扩散FLUX 也工作在 latent 空间1.2 Flow Matching / Rectified FlowFLUX 核心训练范式这是理解 FLUX 的最关键理论FLUX 不是传统扩散模型而是 Rectified Flow。论文地址核心贡献Flow Matching for Generative Modeling- Lipman et al., 2022arXiv:2210.02747Flow Matching 的奠基论文Flow Straight and Fast- Liu et al., 2022arXiv:2209.03003Rectified Flow学习数据到噪声的直线路径Rectified Flow- Qiang Liu, 2022arXiv:2209.14577从最优运输角度理解 rectified flowFlow Matching Guide and Code- Lipman et al., 2024arXiv:2412.06264最全面的 Flow Matching 教程和代码1.3 DiT (Diffusion Transformer) 架构论文地址说明Scalable Diffusion Models with Transformers - Peebles Xie, 2023arXiv:2212.09748Transformer 替代 U-Net 做扩散骨干二、FLUX 基础模型层模型 A2.1 FLUX.1 原始论文论文地址说明Scaling Rectified Flow Transformers for High-Resolution Image Synthesis- Esser et al. (Black Forest Labs), 2024arXiv:2403.03206FLUX.1-dev/pro/schnell 的官方技术报告2.2 FLUX 架构深度解析强烈推荐报告地址说明Demystifying Flux Architecture, 2025arXiv:2507.09595详细拆解了 FLUX 的 19 个 Dual-Stream Blocks 38 个 Single-Stream Blocks 结构是理解 FLUX 内部机制的最佳资料2.3 关键架构特点12B 参数Rectified Flow Transformer无显式 Cross-Attention将 text 和 image feature 拼接后一起过 attentiontoken 级别的语义会以heatmap形式自然涌现Frozen 文本编码器CLIP-L/14coarse T5-XXLfine-grained19 个 Dual-Stream Blocks38 个 Single-Stream Blocks2.4 官方代码GitHub: black-forest-labs/fluxHuggingFace: black-forest-labs/FLUX.1-dev三、LoRA 训练层模型 A-LoRA3.1 LoRA 基础论文地址LoRA: Low-Rank Adaptation - Hu et al., 2021arXiv:2106.096853.2 Diffusers 官方 FLUX LoRA 训练代码路径文件说明diffusers/examples/dreamboothtrain_dreambooth_lora_flux.py基础 LoRA 训练diffusers/examples/advanced_diffusion_training-更高级的 FLUX 训练脚本四、ControlNet 层模型 B / 模型 B-trained4.1 ControlNet 原始论文必读论文地址说明Adding Conditional Control to Text-to-Image Diffusion Models- Zhang et al., 2023arXiv:2302.05543ICCV 2023 OralControlNet 的奠基论文。核心思想锁定预训练模型参数复制其编码层作为可训练副本用Zero Convolution零初始化卷积连接确保训练初期不破坏预训练权重4.2 FLUX 时代的 ControlNet 架构演变论文地址关键洞察Moving Things Around in Pictures, 2026arXiv:2506.20703清晰对比了旧 ControlNet 与新 FLUX ControlNet 的实现差异旧版在 U-Net decoder 层添加辅助 encoder 信息新版 FLUX ControlNet 直接将latent 和 condition 在输入端 concatenate控制更紧密4.3 Diffusers 官方 FLUX ControlNet 训练代码模型 B-trained 的直接来源链接说明diffusers/examples/controlnet官方训练目录README_flux.mdFLUX ControlNet 训练说明train_controlnet_flux.py核心训练脚本关键训练参数accelerate launch train_controlnet_flux.py \ --pretrained_model_name_or_pathblack-forest-labs/FLUX.1-dev \ --num_double_layers4 \ --num_single_layers0 \ ...默认配置4 个 MM-DiT (DoubleStream) blocks 10 个 Single-DiT blocks内存需求单卡 A100 80GB训练时约 58GB4.4 FLUX ControlNet 模型结构代码链接说明diffusers/src/diffusers/models/controlnet_flux.pyFluxControlNetModel类定义必读源码4.5 第三方训练实现链接说明christopher-beckham/flux-controlnet单卡 A100 40GB 训练 FLUX ControlNet含量化支持五、Inpainting ControlNet 层模型 C5.1 FLUX.1-dev-Controlnet-Inpainting-BetaHuggingFace: XLabs-AI/flux-controlnet-inpainting由 XLabs-AI 社区训练架构基于 FLUX.1-dev 的 ControlNet 架构输入包含noisy latent mask masked_image text condition5.2 Inpainting 基础理论论文地址说明Palette - Saharia et al., 2022arXiv:2111.05826经典扩散模型 inpainting 框架5.3 训练数据构建要点Inpainting ControlNet 的训练数据需要特殊构建原始图像 随机 mask如不规则 mask、方块 mask、笔划 maskmask 区域外像素保留区域内用噪声/ masked 图像填充配合文本描述训练模型理解在 mask 区域内生成符合文本描述的内容六、Fill 模型层模型 D6.1 FLUX.1-Fill-devHuggingFace: black-forest-labs/FLUX.1-Fill-dev官方技术报告: Demystifying Flux Architecture, Section 3.26.2 架构特点专门用于 inpainting 和 outpainting的端到端模型基于 FLUX.1-dev 架构修改接受text description binary mask作为输入12B 参数与 FLUX.1-dev 相同规模支持full denoising strength下的无缝融合6.3 与 ControlNet Inpainting模型 C的核心区别维度模型 C (ControlNet Inpainting)模型 D (FLUX.1-Fill-dev)本质在 FLUX.1-dev 上附加 ControlNet 控制模块端到端训练的专用 inpainting 模型基础模型冻结 FLUX.1-dev训练 ControlNet 侧网络基于 FLUX.1-dev 架构重新训练完整模型灵活性可与不同 LoRA 叠加使用独立模型需单独加载训练数据需要 (image, mask, text) 三元组同样需要但训练的是完整 transformer参数规模ControlNet 部分约几 B 参数完整 12B 参数七、推荐学习路线图Phase 1: 理论基础2-3周 ├─ DDPM → LDM → DiT理解扩散模型演进 ├─ Flow Matching / Rectified Flow理解 FLUX 训练范式 └─ LoRA 原理 Phase 2: FLUX 基础2周 ├─ 精读 FLUX 论文 (Esser et al., 2024) ├─ 精读 Demystifying Flux Architecture架构拆解 ├─ 跑通 FLUX.1-dev 推理代码 └─ 理解 Dual-Stream / Single-Stream Block 的代码实现 Phase 3: LoRA 训练实践1-2周 ├─ 使用 diffusers 官方 LoRA 脚本训练 └─ 理解 LoRA 在 FLUX 上的叠加机制 Phase 4: ControlNet 理论与训练2-3周 ├─ 精读 ControlNet 原始论文 (Zhang et al., 2023) ├─ 理解 FLUX ControlNet 的架构差异concatenate vs. auxiliary encoder ├─ 研读 diffusers 官方 train_controlnet_flux.py 源码 ├─ 对比 SD-ControlNet vs FLUX-ControlNet 实现差异 └─ 尝试训练自己的 ControlNet Phase 5: Inpainting 专题2周 ├─ 理解 inpainting 训练数据构建mask 策略 ├─ 研究 XLabs-AI flux-controlnet-inpainting-beta 的推理代码 ├─ 研究 FLUX.1-Fill-dev 官方实现 └─ 对比 ControlNet-Inpainting vs Fill-dev 的生成差异 Phase 6: 进阶研究 ├─ 阅读 Moving Things Around in Pictures深度条件 inpainting ├─ 研究 FLUX-Kontext / FLUX-Redux 等多模态扩展 └─ 尝试从零训练 Inpainting ControlNet 或 Fill 风格模型八、关键资源速查表类型名称链接论文FLUX.1 技术报告arXiv:2403.03206论文Demystifying Flux ArchitecturearXiv:2507.09595论文ControlNet 原始论文arXiv:2302.05543论文Flow MatchingarXiv:2210.02747论文Rectified FlowarXiv:2209.03003GitHubFLUX 官方black-forest-labs/fluxGitHubDiffusers 官方huggingface/diffusersGitHubFLUX ControlNet 训练examples/controlnetGitHubFLUX LoRA 训练examples/dreamboothGitHub第三方 ControlNet 训练christopher-beckham/flux-controlnetHuggingFaceFLUX.1-dev模型页HuggingFaceFLUX.1-Fill-dev模型页HuggingFaceXLabs ControlNet InpaintingXLabs-AI/flux-controlnet-inpainting建议优先级先精读Flow Matching和ControlNet 原始论文然后对照Demystifying Flux Architecture理解 FLUX 内部结构最后直接阅读diffusers 的train_controlnet_flux.py和controlnet_flux.py源码——这是理解模型 B-trained 如何构建的最直接方式。