Datawhale X 魔搭 AI夏令营
关于文生图的一次实践。
从零入门AI生图原理&实践 是 Datawhale 2024 年 AI 夏令营第四期的学习活动(“AIGC”方向),基于魔搭社区“可图Kolors-LoRA风格故事挑战赛”开展的实践学习。
Datawhale官方的速通教程链接:Task 1 从零入门AI生图原理&实践
下面是我自己根据教程实践的记录
一、赛事解读
此次夏令营有相关的赛事,感兴趣的小伙伴可以报名,下方也有报名的方式
→可图Kolors-LoRA风格故事挑战赛
二、文生图基本知识:
①最早出现于计算机视觉和自然语言处理研究
②生成模型的含义:
生成模型是指根据已知的数据分布和先验分布,通过一个传输函数f来生成符合数据分布的数据。传输方程要求在使用传输函数f时,得到的数据分布接近于实际数据分布。另一种方法是通过传输积分核f(·,t)和状态空间序列来实现数据的生成。
(个人理解)要生成模型(就是根据数据分布及借助传输方程在高斯分布里采样达到先验分布的结果)
图像生成模型与LLM采样的主要区别是使用了传输方程进行近似。
③基本的流程:
提示词+参考图(可选)→借助训练得到的模型→生成图片
提示词写法:主体描述、细节描述、修饰词、艺术风格、艺术家
如果生成图片经常出现ai生图的问题(多余手指、扭曲手指),可以多多利用负向提示词!
Lora:一类通过特定微调技术应用于基础模型的扩展应用,针对性优化预训练好的大模型,实现精细化控制。
ComfyUI:用于简化、优化AI模型的配置和训练过程的工作流工具(方便用户进行模型微调,数据预处理,图像生成等任务)→基于节点/流程图的界面设计
参考图控制
ControlNet是附加到预训练扩散模型上的一个可训练神经网络模块,便于用户在扩散模型由随机噪声逐渐生成图像这一过程基础上更具体地指导图像生成的各个方面(姿势关键点、分割图、深度图、颜色等)
选择参考图控制类型+prompt即可ai生成控制下的图片
三、实践part!(30min一站式体验baseline)
①开通阿里云PAI-DSW试用
先注册登录,登录后选择有效期3个月5000算力时的试用产品→立即试用!
中间用支付宝验证身份即可,开通试用成功,关闭就好了
②在魔搭社区授权
*新用户需要先注册+绑定阿里云账号,目前注册可领取100hCPU及长期免费CPU计算资源
注册完毕后前往我的界面绑定阿里云账号
然后登录阿里云绑定平台
同意第三方应用是授权即可!
③报名赛事,选择立即报名,同意协议后报名即可,报名成功,即可关闭页面。
④前往魔搭社区创建PAI示例
前往我的notebook选择个人云账号授权示例——PAI-DSW,按照下面的流程走就可以了。
点击下一步后再点击创建实例
创建后会跳回我的notebook界面,点击打开即可
出现这样的界面就是成功打开了
⑤体验baseline!
下载baseline文件(把下面这两行命令复制粘贴到终端,回车运行即可)
git lfs install
git clone 魔搭社区
然后等待下载,大约1分钟
下载完毕后双击进入kolors文件夹
再双击进入baseline文件
再安装Data-Juicer和DiffSynth-Studio,
【Data-Juicer:数据处理和转换工具,旨在简化数据的提取、转换和加载过程
DiffSynth-Studio:高效微调训练大模型工具】
下面是安装操作(点击执行按钮)
安装后一定要记得重启kernel哦!
下面是两种重启的方法(①不成功的话就试试②吧)
①
②
然后就可以进行生图啦!
依次修改已有的8张图片的prompt,设置你想要输出的图片风格
改完prompt按这个按钮一键运行,大约等20分钟,第一次运行会久一点,耐心等等就有图片生成啦!
生成的图片是在页面最底部。(如果对图片生成不满意,运行后9个部分就好啦!)
⑥微调结果上传
下面是创建模型上传模型的过程
创建完terminal后粘贴如下命令,回车执行。
mkdir /mnt/workspace/kolors/output & cd cp /mnt/workspace/kolors/models/lightning_logs/version_0/checkpoints/epoch\=0-step\=500.ckpt /mnt/workspace/kolors/output/ cp /mnt/workspace/kolors/1.jpg /mnt/workspace/kolors/output/
然后会在左侧看见output文件,双击进去下载两个文件到本地,后面创建模型的时候要用,图片是作为封面。
创建模型要等一会,是正常现象,耐心等等就好啦!
四、个人感悟总结
这样就是我跟着Datawhale的教程走的实践记录啦!封面也是跟着教程走修改prompt生成的,然后关于故事挑战赛,我习惯在OneNote里面绘图画出8个大致的情节框(如下方所示),这样写prompt的时候思路清晰一些,然后写prompt多多利用负向prompt能规避很多ai生图出现的扭曲的问题。一些里面的代码还没好好研究,接下来好好检索一下是怎么个事,笔记到这就结束啦拜拜!
更多推荐
所有评论(0)