diffusion-pipe

多卡流水线并行,低显存也能训大扩散模型

开源 free 模型训练
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2029
维护状态 较活跃
是否开源 是
定价模式 free

项目预览

项目数据

分类模型训练
开发团队tdrussell
所属国家
官网地址
定价模式free
价格说明开源免费,无在线服务
访问状态
是否开源是
开源协议GPL-3.0
主要语言Python
技术栈/模型
GitHub 星标★ 2029
30天Star增速
HF 下载量
上线时间2024-08-03 00:00:00
代码更新—
仓库体积—
本站数据更新—
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-10-12
浏览次数0

项目介绍

diffusion-pipe 是一个面向扩散模型(如 Stable Diffusion、Flux 等)的流水线并行训练脚本,核心目标是让普通用户也能在有限显存的多卡环境下训练大模型。它通过将模型的不同层切分到多张 GPU 上,实现流水线并行,从而显著降低单卡显存占用,支持训练 SDXL、Flux 等较大模型。项目提供完整的训练流程,包括数据准备、模型加载、训练循环和检查点保存,并支持 LoRA、全量微调等多种训练模式。相比其他训练框架,diffusion-pipe 更注重易用性和开箱即用,配置相对简单,适合个人开发者或小团队在消费级多卡设备上开展扩散模型训练实验。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

正在加载星标数据…

技术标签

使用教程

—

难度:进阶 约 30 分钟 部署方式:本地安装 7 步

环境要求

  • Linux 环境,需有 NVIDIA GPU 与可用的 CUDA 驱动
  • 已安装 Miniconda(或 Anaconda)
  • Git,用于克隆含子模块的仓库
  • Python 3.12(通过 conda 创建的环境)
  • 与显卡匹配的 PyTorch 与 CUDA 版本,例如 PyTorch 2.9.0 + CUDA 12.8

安装与启动步骤

  1. 1克隆仓库

    必须带 --recurse-submodules,否则子模块缺失;仓库地址为 GitHub 上的 tdrussell/diffusion-pipe。

    git clone --recurse-submodules https://github.com/tdrussell/diffusion-pipe
  2. 2补装子模块

    仅当你克隆时忘了加 --recurse-submodules 才需要执行,用于初始化并拉取子模块。

    git submodule init
    git submodule update
  3. 3创建 conda 环境

    先按官方文档安装 Miniconda(https://docs.anaconda.com/miniconda/),再创建并激活 Python 3.12 环境。

    conda create -n diffusion-pipe python=3.12
    conda activate diffusion-pipe
  4. 4安装 PyTorch

    PyTorch 不在 requirements 里,因为不同显卡需要不同 PyTorch/CUDA 组合,需自行选可用版本。

    pip install torch torchvision
  5. 5安装 nvcc

    按 https://anaconda.org/nvidia/cuda-nvcc 安装,版本尽量与 PyTorch 所用 CUDA 版本保持一致。

  6. 6安装项目依赖

    在已激活 diffusion-pipe 环境的前提下,安装仓库 requirements.txt 中列出的全部依赖。

    pip install -r requirements.txt
  7. 7安装 Flash Attention

    可选步骤,flash-attn 不在 requirements 中,但部分模型需要它才能运行。

    pip install flash-attn

如何确认成功

conda activate diffusion-pipe 后依次导入 torch 与 requirements 中的依赖无报错,即表示环境安装成功。

常见问题

Q:克隆时忘记加 --recurse-submodules 怎么办?

A:进入仓库目录执行 git submodule init 与 git submodule update 补拉子模块即可。

Q:为什么 requirements.txt 里没有 PyTorch?

A:不同 GPU 需要不同 PyTorch/CUDA 组合,README 要求先自行安装可用的 torch 和 torchvision,再装其余依赖。

Q:Flash Attention 是必须安装的吗?

A:不是必装项,它不在 requirements 文件中,但部分模型需要它,所以 README 将其列为可选安装。

Q:CUDA 与 nvcc 版本怎么选?

A:nvcc 尽量与 PyTorch 的 CUDA 版本匹配;README 提到 PyTorch 2.9.0 + CUDA 12.8 在 4090 上可用。

注意事项

  • README 写于 2025-10-26 的参考组合:PyTorch 2.9.0 + CUDA 12.8,兼容 flash-attn 2.8.3
  • 本项目为流水线并行训练脚本,需要多卡环境才能发挥降低单卡显存占用的效果
  • 支持 SDXL、Flux、LTX-Video、HunyuanVideo、Wan2.2、Qwen-Image 等多种模型
  • 训练配置需参考仓库中的示例 TOML 文件,README 节选中未给出具体路径与参数

核心亮点

  • 通过流水线并行将模型切分到多卡,显著降低单卡显存需求
  • 支持 SDXL、Flux 等主流扩散模型,兼容 LoRA 和全量微调
  • 配置和启动流程相对简单,适合个人开发者快速上手

不足之处

  • 流水线并行会引入气泡开销,训练速度可能不如数据并行
  • 文档和社区生态相比成熟框架仍待完善

适用场景

  • 多张消费级显卡训练 Flux 或 SDXL 模型
  • 个人开发者用有限显存微调扩散模型
  • 小团队快速搭建扩散模型训练流水线

替代项目

kohya-ss/sd-scripts、huggingface/diffusers

同类项目推荐

Long-RL 开源

让强化学习轻松驾驭超长序列,训练更稳更快

Long-RL: Scaling RL to Long Sequences (NeurIPS 2025)

★ 729 2026-08-09
TPA 开源

把注意力复杂度从平方降到线性,长序列不再卡顿

[NeurIPS 2025 Spotlight] TPA: Tensor ProducT ATTenTion Transformer (https://arxiv.or···

★ 463 2026-08-09
minimind 开源

两小时造出你的小模型,练手入门不求人

Train a 64M-parameter LLM from scratch in just 2h!

★ 63550 2026-08-09
pruna 开源

一键优化 AI 模型,推理提速又省资源。

Pruna is a model optimization framework built for developers, enabling you to delive···

★ 1314 2026-08-13