赞
踩
原文链接:https://github.com/lllyasviel/ControlNet/blob/main/docs/train.md
模型下载:https://huggingface.co/runwayml/stable-diffusion-v1-5/blob/main/v1-5-pruned.ckpt
数据集下载:https://huggingface.co/lllyasviel/ControlNet/blob/main/training/fill50k.zip
如果你的电脑没有开启代理模式,那无法访问外网,下面是我下载好放在百度云上的数据(包含模型、数据集加上transformers离线依赖)
这里压缩时分成三个文件
https://pan.baidu.com/s/1Zzm-Ya0Bz7rFI79Zw-rIng?pwd=e51v
https://pan.baidu.com/s/1Zczh8mZWJ5RBsEq_Q4zZTA?pwd=1crz
https://pan.baidu.com/s/10FlFnAiQahOFhJcd6EdlaA?pwd=19vu
通过Git克隆项目: git clone https://github.com/lllyasviel/ControlNet.git
或者直接下载:https://pan.baidu.com/s/19n8u9TL9E6t30pL8rQXOfw?pwd=xkjs
使用conda命令安装依赖:conda env create -f environment.yaml
数据集放在根目录里
模型放在models里面
运行:python tool_add_control.py ./models/v1-5-pruned.ckpt ./models/control_sd15_ini.ckpt
正确返回结果并生成 control_sd15_ini.ckpt模型
如果出现以下报错信息或者Connect连接失败,则是代码内部进行模型下载访问不了外网导致,开启全局代理可以解决
或者使用transformers离线依赖
解压后包的位置存放在项目根目录
之后修改transformers的hub源码(Anaconda3\envs\controlnet\Lib\site-packages\transformers\utils\hub.py)改为当前文件夹
由于transformers依赖的文件名没有使用sha256随机生成,再把下列代码修改
再运行程序即可
模型生成后直接运行 tutorial_train.py文件
如果出现内存不足问题可降低batch_size
也可以设置达到多少次数自动停止,这里设置50次,如果不指定默认1000次
程序运行结束后会在lightning_logs里生成一个epoch=49-step=25049.ckp文件
直接放在SD的controlnet模型库中使用
这里推荐飞桨:https://ai.baidu.com/bml/
新用户能免费使用50小时
选择新人专享里的V100服务器
选择通用
点击启动
启动完成后点击打开
由于百度的云服务器不支持代理模式,所有需要下载的模型都需要手动上传
上传文件不支持超过150M文件仅能上传项目
大文件在导入数据集中操作
选择文件上传
上传完成后会生成下载链接,复制后在终端里运行
等待完成
上传的文件会在data中保存
修改上传文件的名字,例如
rc-upload-1690421869601-2-0000.Controlnet%E6%95%B0%E6%8D%AE%E5%8C%85.zip.003
等文件名修改为,要求名称能够统一匹配到
xxx.zip.001
xxx.zip.002
xxx.zip.003
使用liunx合并压缩包命令 cat xxx.zip.* > xxx.zip
再进行解压
在云服务器上transformers必须手动下载
配置大致和上面一样,其中有几点需要修改的地方
在路径设置时不用加点 , / 指根目录
运行tool_add_control.py
再运行tutorial_train.py
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。