Datawhale X 魔搭 AI夏令营第四期魔搭-AIGC文生图方向Task2笔记

Task2:精读代码,实战进阶

利用AI解读baseline

通过向通义千问进行提问,一步步引导AI向我们解释代码的具体逻辑,AI的回答如下:

安装依赖

首先,您安装了一系列的Python包,包括 simple-aesthetics-predictor, data-juicer, pytorch-lightning, peft, lightning, pandas, 和 torchvision,以及 DiffSynth-Studio。其中 data-juicer 是用来进行数据预处理的工具,而 DiffSynth-Studio 则是用来训练 LoRA 模型的框架。

数据集准备

接下来,您从 ModelScope 下载了一个名为 AI-ModelScope/lowres_anime 的低分辨率动漫数据集,并将其保存到了 /mnt/workspace/kolors/data 目录下。

生成数据集

您创建了一个名为 ./data/lora_dataset/train 的文件夹,并将数据集中的每一张图片保存到该文件夹下。同时,您还创建了一个 metadata.jsonl 文件,用于记录每张图片的路径和对应的描述信息。

数据筛选过滤

使用 data-juicer 对原始数据集进行了筛选和过滤,确保所有图片的宽度和高度都至少为 1024 像素,并且长宽比介于 0.5 和 2.0 之间。经过筛选后的数据被保存到了 ./data/data-juicer/output/result.jsonl 文件中。

生成处理过的数据集

您基于 data-juicer 筛选出的图片生成了一个新的数据集,并保存到了 ./data/lora_dataset_processed/train 文件夹中。此外,还创建了一个 metadata.csv 文件,记录了每张图片的文件名和对应的描述信息。

下载预训练模型

您下载了 KolorsSDXL-vae-fp16-fix 模型,这些模型将用于后续的 LoRA 训练。

训练 LoRA 模型

使用 DiffSynth-Studio 提供的训练脚本 train_kolors_lora.py 来训练 LoRA 模型。训练过程中指定了预训练模型路径、LoRA 参数、数据集路径、输出路径等,并设置了一些训练选项如精度、最大训练轮数等。

加载微调后的模型

您加载了经过 LoRA 微调的模型,并将其注入到 SDXLImagePipeline 中,以便生成图像。

生成图像

最后,您使用了定义好的提示词(prompt)来生成一幅二次元风格的图像,并保存为 1.jpg

图像拼接

您尝试将八张图像拼接成一张大图,但是代码中只生成了一张图像 1.jpg,所以实际上无法完成拼接操作。

请注意,上述代码中有一些可能的问题点:

  1. LoRA 训练脚本: 脚本执行的命令 os.system(cmd) 只能输出命令执行的结果,不会显示实际的训练进度或输出。为了更好地监控训练过程,建议直接运行 Python 脚本而不是通过 os.system

  2. LoRA 模型加载: 在加载 LoRA 模型时,您使用了一个特定的路径 "models/lightning_logs/version_0/checkpoints/epoch=0-step=500.ckpt",这意味着您需要确保这个路径是正确的,并且确实存在训练好的 LoRA 模型。

  3. 图像拼接: 您的代码试图拼接八张图像,但实际上只有一张图像被生成。因此,这部分代码没有实际作用。

这个回答介绍的代码的总体逻辑,从安装的必要库开始,逐步介绍了如何准备数据集、筛选数据、训练LoRA模型,以及如何生成和处理图像。除此之外,他还指出了代码在运行过程中可能会出现的一些问题点,并且提出合理的修改建议,有利于学习者更好的了解这份代码的具体逻辑。

基于话剧的连环画制作

利用AI,向其提问以获得一个文生图话剧

你是一个文生图专家,我们现在要做一个实战项目,就是要编排一个文生图话剧
话剧由8张场景图片生成,你需要输出每张图片的生图提示词

具体的场景图片
1、女主正在上课
2、开始睡着了
3、进入梦乡,梦到自己站在路旁
4、王子骑马而来
5、两人相谈甚欢
6、一起坐在马背上
7、下课了,梦醒了
8、又回到了学习生活中

生图提示词要求
1、风格为古风
2、根据场景确定是使用全身还是上半身
3、人物描述
4、场景描述
5、做啥事情

例子:
古风,水墨画,一个黑色长发少女,坐在教室里,盯着黑板,深思,上半身,红色长裙

通过一些自定义的修改(如中国风、现代风等),不断像AI提问改进,获得一个自己满意的文生图话剧,最终的话剧文案如下:

  1. 现代风,清新校园,一个文静的中国女学生,坐在明亮的教室里,专注地看着黑板,上半身,穿着整齐的白色校服,手中拿着笔记本,沉浸在学习的氛围中。

  2. 现代风,温馨午后,这位中国女学生头轻轻靠在书桌上,上半身,穿着舒适的校服,周围是轻轻翻书的声音,她已经悄然入睡。

  3. 现代风,梦幻旅途,这位中国女学生站在繁忙的街道旁,全身,穿着休闲的牛仔裤和T恤,手中拿着一杯咖啡,眼神中透露出对未来的憧憬。

  4. 现代风,豪车邂逅,一位风度翩翩的中国绅士驾驶着豪车而来,全身,穿着精致的西装,与女学生的目光相遇,两人似乎有着不言而喻的默契。

  5. 现代风,咖啡馆对话,这位中国女学生和绅士坐在咖啡馆的窗边,上半身,她手中拿着一本书,绅士则专注地听着她讲述,两人的交流充满了愉悦和轻松。

  6. 现代风,城市漫游,这位中国女学生与绅士一同在豪车中穿梭于城市的街道,全身,她穿着优雅的连衣裙,两人享受着城市的繁华与宁静。

  7. 现代风,梦醒时分,这位中国女学生从梦中醒来,上半身,穿着简单的T恤,脸上带着微笑,似乎对刚才的梦境感到满足。

  8. 现代风,回归日常,这位中国女学生回到书桌前,全身,穿着休闲的家居服,手中拿着笔,继续她的学习生活,眼中闪烁着对知识的渴望。

利用baseline的代码生成相对应的图片,展示成果:

这八张图片都是较为符合描述的,接下来我们看一下这组图片的美学评分。

运行代码可知,这组图片的美学评分为6.37,是大于比赛官方要求的分数(6分)的。这样的结果表明,我们的模型在生成符合描述的图片方面表现良好,可以说是相当成功的。这表明模型能够理解并准确地将文本描述转化为视觉图像,且生成的图片在审美上得到了认可。

浅尝scepter webui

以话剧图片一的描述为例,尝试利用scepter webui生成图片,图片如下:

图片显示的是一个穿着白色上衣、长发披肩的女性,背景模糊,给人一种宁静的感觉。然而,图片内容并不完全符合所给的文字描述。文字描述中提到的是一个“文静的中国女学生”,坐在明亮的教室里,专注地看着黑板,上半身穿着整齐的校服,手中拿着笔记本。图片中的女性虽然符合“文静”的特征,但她并没有坐在教室里,也没有看着黑板,也没有拿着笔记本。因此,可以说这张图片并不符合文字描述的内容。

  • 12
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值