论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
人工智能
›
人工智能
›
小白上手AIGC-基于PAI-DSW部署Stable Diffusion文生图Lo ...
小白上手AIGC-基于PAI-DSW部署Stable Diffusion文生图Lora模子 ...
曂沅仴駦
金牌会员
|
2024-8-13 13:45:46
|
显示全部楼层
|
阅读模式
楼主
主题
859
|
帖子
859
|
积分
2577
前言
在上一篇博文小白上手AIGC-基于FC部署stable-diffusion 中,说到基于函数计算应用模板部署AIGC文生图应用,部署后实验的参数比较局限,可选参数不多,因此不太能更好的深入体验AIGC,这一篇博文我们部署一款基于PAI-DSW部署Stable Diffusion文生图Lora模子,盼望可以达到我们想要的结果。拭目以待…
资源准备
开启体验服务
再开始实验之前,我们必要先开通交互式建模PAI-DSW 的服务,趁着阿里云推出的免费试用的机会,赶快来体验吧,试用中央地址:阿里云免费试用 找到呆板学习平台PAI的种别,点击【立即试用】
开通交互式建模PAI-DSW服务之后,必要创建默认工作空间,
创建工作空间
创建默认工作空间,官方文档地址:开通并创建默认工作空间,比如选择地域杭州
点击【开通PAI并创建默认工作空间】,完成授权及勾选利用
点击【确认开通并创建默认工作空间】完成默认工作空间的创建。
部署服务
回到PAI控制台首页,可以在工作空间列表中看到我们刚才创建的默认工作空间信息,
在控制台选择菜单【交互式建模(DSW)】
创建DSW实例
这里会默认选中我们刚才创建的工作空间,点击【进入DSW】
点击【创建实例】
输入实例名称,点击tab 【GPU规格】,选择规格【ecs.gn7i-c8g1.2xlarge】
继续选择镜像【stable-diffusion-webui-env:pytorch1.13-gpu-py310-cu117-ubuntu22.04】点击【下一步】
确认完信息之后点击【创建实例】
安装Diffusers
下载Diffusers开源库并安装,为后续下载stable-diffusion-webui开源库做准备。
点击【打开】
Notebook,选择【Python3】如图
输入命令下载Diffusers开源库
! git clone https://github.com/huggingface/diffusers
复制代码
下载开源库过程中,假如遇到超时的情况可以再次实行下载即可
验证一下是否安装成功
import diffusers
复制代码
设置accelerate,选择Terminal输入设置命令
accelerate config
复制代码
确认之后,通过键盘上下键选中This machine并确认
然后在选择multi-GPU
选中之后确认,后面的一次按截图的内容选择即可
最后选中fp16 点击确认
此时可以看到accelerate设置完成了。下面继续回到python3页面安装文生图算法相干依赖库
! cd diffusers/examples/text_to_image && pip install -r requirements.txt
复制代码
下面开始下载stable-diffusion-webui开源库,实行命令
! git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git && \
cd stable-diffusion-webui && \
git checkout a9fed7c364061ae6efb37f797b6b522cb3cf7aa2
! cd stable-diffusion-webui && mkdir -p repositories && cd repositories && \
git clone https://github.com/sczhou/CodeFormer.git
复制代码
下载过程中假如遇到这种情况,再次实行以下命令就可以了
最后下载完成。继续下载示例数据集,后续会使用该数据集举行模子训练。实行如下命令
! wget http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/cloth_train_example.tar.gz && tar -xvf cloth_train_example.tar.gz
! wget http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/train_text_to_image_lora.py
复制代码
数据集下载完成之后可以看到
查察一下示例服装,实行命令
from PIL import Image
display(Image.open("cloth_train_example/train/20230407174450.jpg"))
复制代码
实行结果可以看到
继续下载预训练模子并转化成diffusers格式,实行命令
! cd stable-diffusion-webui/models/Stable-diffusion && wget -c https://huggingface.co/naonovn/chilloutmix_NiPrunedFp32Fix/resolve/main/chilloutmix_NiPrunedFp32Fix.safetensors -O chilloutmix_NiPrunedFp32Fix.safetensors
! python diffusers/scripts/convert_original_stable_diffusion_to_diffusers.py \
--checkpoint_path=stable-diffusion-webui/models/Stable-diffusion/chilloutmix_NiPrunedFp32Fix.safetensors \
--dump_path=chilloutmix-ni --from_safetensors
复制代码
实行结果如图
实行命令,设置num_train_epochs为200,举行lora模子的训练
! export MODEL_NAME="chilloutmix-ni" && \
export DATASET_NAME="cloth_train_example" && \
accelerate launch --mixed_precision="fp16" train_text_to_image_lora.py \
--pretrained_model_name_or_path=$MODEL_NAME \
--dataset_name=$DATASET_NAME --caption_column="text" \
--width=640 --height=768 --random_flip \
--train_batch_size=1 \
--num_train_epochs=200 --checkpointing_steps=5000 \
--learning_rate=1e-04 --lr_scheduler="constant" --lr_warmup_steps=0 \
--seed=42 \
--output_dir="cloth-model-lora" \
--validation_prompt="cloth1" --validation_epochs=100
复制代码
训练完成之后可以看到
然后将lora模子转化成WebUI支持格式并拷贝到WebUI所在目录
! wget -c http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/convert-to-safetensors.py
! python convert-to-safetensors.py --file='cloth-model-lora/pytorch_lora_weights.bin'
! mkdir stable-diffusion-webui/models/Lora
! cp cloth-model-lora/pytorch_lora_weights_converted.safetensors stable-diffusion-webui/models/Lora/cloth_lora_weights.safetensors
复制代码
实行结果如图
准备其他模子文件
! mkdir stable-diffusion-webui/models/Codeformer
! cd stable-diffusion-webui/repositories/CodeFormer/weights/facelib/ && \
wget -c http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/detection_Resnet50_Final.pth && \
wget -c http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/parsing_parsenet.pth
! cd stable-diffusion-webui/models/Codeformer && wget -c http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/codeformer-v0.1.0.pth
! cd stable-diffusion-webui/embeddings && wget -c http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/EasyCV/datasets/try_on/ng_deepnegative_v1_75t.pt
! cd stable-diffusion-webui/models/Lora && wget -c https://huggingface.co/Kanbara/doll-likeness-series/resolve/main/koreanDollLikeness_v10.safetensors
复制代码
实行结果如图
启动WebUI
在Notebook中,实行如下命令,启动WebUI
! cd stable-diffusion-webui && python -m venv --system-site-packages --symlinks venv
! cd stable-diffusion-webui && \
sed -i 's/can_run_as_root=0/can_run_as_root=1/g' webui.sh && \
./webui.sh --no-download-sd-model --xformers
复制代码
这个命令实行过程中大概会遇到多种情况的错误,每次遇到错误情况时重新实行命令即可,错误情况比如
或者是
最后实行成功的界面如下
启动成功之后单机链接地址进入模子训练页面
输入待生成模子文本等待生成结果。
写在最后
整体来说,本次利用的时间会耗时比较久,两个小时左右,在部署过程中大概会遇到各种不成功的情况,不用担心,再次实行命令即可。
别的,对于AIGC文生图的利用,对于生成图像与文字描述是否匹配,这个主要还是取决于你当前使用的文生图模子的训练程度,模子训练的结果直接决定了AIGC文生图的准确度,由此及彼的来看,对于AIGC文生图、图生文、文生视频、文生音频等的利用,随着模子训练的不断丰富话,后续想要生成更加准确的切合文字内容的图片及视频都是很有大概的,目前不停盼望可以准确生成《少年闰土》中的一段情节
:深蓝的天空中挂着一轮金黄的圆月,下面是海边的沙地,都种着一望无际的碧绿的西瓜。其间有一个十一二岁的少年,项戴银圈,手捏一柄钢叉,向一匹猹用力地刺去。那猹却将身一扭,反从他的胯下逃走了。多方查找还没找到比较生成图比较接近的,后续会继续实验基于其他云产品的AIGC服务。
活动推广:https://developer.aliyun.com/huodong/dashiblogger?userCode=fkssw94w
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
曂沅仴駦
金牌会员
这个人很懒什么都没写!
楼主热帖
教你如何解决T+0的问题
ICA:1靶场
Excel文件校验
国内IT硬件如何铸就新辉煌? ...
JS中的Set与Map
架构设计基础设施保障IaaS之计算篇 ...
监控和可观测性的异同究竟是什么? ...
实时展示用户上传的头像
必知必会的设计原则——迪米特原则 ...
如何筑造数据安全边界
标签云
挺好的
服务器
快速回复
返回顶部
返回列表