HCP-Diffusion 开源项目使用教程
1. 项目介绍
HCP-Diffusion 是一个基于 🤗 Diffusers 的 Stable Diffusion 模型工具箱。它提供了灵活的配置和组件支持,用于训练,相较于 webui 和 sd-scripts 有更好的性能。此工具箱支持 Colossal-AI,可以显著减少 GPU 内存使用。HCP-Diffusion 能够统一现有的文本到图像生成训练方法(例如 Prompt-tuning、Textual Inversion、DreamArtist、Fine-tuning、DreamBooth、LoRA、ControlNet 等)和模型结构,通过单个 YAML 配置文件进行管理。
2. 项目快速启动
安装
通过 pip 安装:
pip install hcpdiff
或者从源代码安装:
git clone https://github.com/7eu7d7/HCP-Diffusion.git
cd HCP-Diffusion
pip install -e .
初始化项目
hcpinit
训练
根据是否使用 Colossal-AI,可以使用以下命令启动训练:
使用 🤗 Accelerate:
accelerate launch -m hcpdiff.train_ac --cfg cfgs/train/cfg_file.yaml
使用 🤗 Accelerate 并仅使用一个 GPU:
accelerate launch -m hcpdiff.train_ac_single --cfg cfgs/train/cfg_file.yaml
使用 Colossal-AI:
pip install colossalai
torchrun --nproc_per_node 1 -m hcpdiff.train_colo --cfg cfgs/train/cfg_file.yaml
推断
使用以下命令进行模型推断:
python -m hcpdiff.visualizer --cfg cfgs/infer/cfg.yaml pretrained_model=pretrained_model_path \
prompt='正面的提示语' \
neg_prompt='负面的提示语' \
seed=42
3. 应用案例和最佳实践
- 案例 1: 使用 DreamArtist++ 进行一次性的文本到图像生成。
- 案例 2: 通过 Prompt-tuning 进行细粒度的文本到图像生成控制。
- 案例 3: 利用 ControlNet 进行条件生成。
4. 典型生态项目
- Colossal-AI: 用于优化内存使用和加速训练。
- 🤗 Diffusers: 用于转换和加载 Stable Diffusion 模型。
- xFormers: 用于进一步减少 VRAM 使用和加速训练。
请根据实际需求选择适合的生态项目进行集成和使用。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考