从零入门AI生图原理与实践 零基础速通指南—第四期Datawhale X 魔搭 AI夏令营

 

文章目录

    • 概要
    • 整体架构流程
    • 细节与问题解决
    • 文生图术语介绍
    • 说在最后

6c7406f3022c470c859b60d89fc8168a.jpeg

 

概要

从零入门AI生图原理&实践 是 Datawhale 2024 年 AI 夏令营第四期的学习活动(“AIGC”方向),基于魔搭社区“可图Kolors-LoRA风格故事挑战赛”开展的实践学习——
- 适合想 入门并实践 AIGC文生图、工作流搭建、LoRA微调 的学习者参与

学习内容提要:从通过代码实现AI文生图逐渐进阶,教程偏重图像工作流、微调、图像优化等思路,最后会简单介绍AIGC应用方向、数字人技术(选学)

赛题解读

可图Kolors-LoRA风格故事挑战赛
赛事链接
https://tianchi.aliyun.com/s/ce4dc8bf800db1e58d51263ff357d28f

1. 参赛者需在可图Kolors 模型的基础上训练LoRA 模型,生成无限风格,如水墨画风格、水彩风格、赛博朋克风格、日漫风格......
2. 基于LoRA模型生成 8 张图片组成连贯故事,故事内容可自定义;基于8图故事,评估LoRA风格的美感度及连贯性
样例:偶像少女养成日记

整体架构流程

Step0:开通阿里云PAI-DSW试用

链接:https://free.aliyun.com/?productCode=learn

开通PAI-DSW 试用 ,可获得 5000算力时!有效期3个月!
如果已经开通试用或试用已过期,可以跳过此步骤,使用魔搭免费GPU额度或寻找其他的算力方案
- 注意多模态数据合成方向无法通过魔搭免费GPU执行

33230edeccb04f98b487cd38b7ebc6be.png
508151226e27415794ee12426f7eedd2.png

64b8085e490741df94da89780dfd581c.png

- 在魔搭社区进行授权
链接:https://www.modelscope.cn/my/mynotebook/authorization
如果这一步授权失败,可跳过此步骤,继续往下进行

51598c22e5654a409c4def718f3d78d7.png
a0414aecae6248aba46f735d62336b33.png

ab58cbf90b7847beb5529f59aa4540cf.png
ed418bd0eb1544fca1968e13aaf0870b.png

- 新用户需要先注册 & 绑定阿里云账号

8b2719ce0ad54035b260532dddffbdab.png
25d0d837d35f4457876ba269a53164ac.png

5bfc04eb708643f3b5c98f5a8e593c1c.png

0051444f4c0549d6b67bc46cafa4e480.png

 

Step1:报名赛事!
赛事链接:https://tianchi.aliyun.com/competition/entrance/532254
点击报名比赛,即可报名成功

be195c4121f84116849fc3e1c5206c7e.png
34ab5ba44efc45a181cb44deb3e16d74.png

 

Step2:   创建实例

链接:https://www.modelscope.cn/my/mynotebook/authorization
创建实例,启动!
如果在上一步授权失败,可到阿里云控制台创建 & 打开实例,具体步骤详见下方子步骤

3ac84189845242b8bb82a0102ece70d6.png
508a6e14d52c4761b21f9c18c234a96a.png

ddcfb16e2ba349408de988861ffb2450.png
87af7a8cec7444f1a3dcc84d67b1e3f1.png

2bf1c7ed64374f5d8c7d2897024cafdc.png

288362dae8584ca5b1d50d610e858862.png

 

Step3:30 分钟体验一站式 baseline!
1. 下载baseline文件(大约需要2分钟)

复制这段代码
git lfs install
git clone https://www.modelscope.cn/datasets/maochase/kolors.git

81ee3c2894a1413b96ba73f2b352fab2.png
8b53042d8cb04ce39bb31e1a2bf2118b.png

1e05194accdb42aa94183543265e169d.png

2. 进入文件夹,打开baseline文件

1c1718f3b47b455f9ad68510046afc4a.png
ae6467e1298645dfab6fbc07aa9ba2ec.png

 

3. 安装环境,然后重启kernel
安装 Data-Juicer 和 DiffSynth-Studio
Data-Juicer:数据处理和转换工具,旨在简化数据的提取、转换和加载过程
DiffSynth-Studio:高效微调训练大模型工具

9a37bec251da44ffb6f6d81a34161db0.png
5d1b226fe284402dbc9aab1c3d97fe14.png

 

4. 调整prompt,设置你想要的图片风格,依次修改8张图片的描述(可选)
正向描述词:你想要生成的图片应该包含的内容
反向提示词:你不希望生成的图片的内容

54033ac962714385b850de311ec96ca5.png

 

5. 依次顺序运行剩余的代码块,点击代码框左上角执行按钮,最终获得图片(大约需要20分钟)
下面的代码块按照功能主要分成这几类
        1. 使用Data-Juicer处理数据,整理训练数据文件
        2. 使用DiffSynth-Studio在基础模型上,使用前面整理好的数据文件进行训练微调
        3. 加载训练微调后的模型
        4. 使用微调后的模型,生成用户指定的prompt提示词的图片

c28d1542abba432ba7fad28f269d5fea.png

Step4:微调结果上传魔搭
链接:https://www.modelscope.cn/models/create

1. 移动结果文件
创建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/

8a528694dfe5464a8b7096b9f674769d.png

2.下载结果文件

03a936ad19b04e92aa04d8e364cd95e8.png
24d75bef5ef0472baa85e168688e8cfc.png

3. 创建并上传模型所需内容
  点击魔搭链接,创建模型,中文名称建议格式:队伍名称-可图Kolors训练-xxxxxx

7676c262e45b4dffa1234bb013aaf089.png
b8b4e6c1ee2e41df81c2144fe11293ff.png

 

关闭PAI实例!!

链接:https://www.modelscope.cn/my/mynotebook/authorization
运行完成后,别忘了回到魔搭,【关闭】实例,否则会一直消耗你的试用额度!
每小时消耗大概7个试用额度!(总共5000个,有效期三个月)

faa6427a428b4783964535bb3b6fa52d.png

 

🎉 恭喜你生成了自己的第一个图片!

b6f4921078cd43d89a36e845a4249f78.jpeg

 

细节与问题解决

在训练模型板块,我经常遇到以下报错:

7fe7031131ae4bd8b5f4f8434fbc68a2.jpeg

无论是重新搭建环境,还是重新开启示例,或是重新运行,每次到这都会显示错误。

解决方法:

1.查看一下这个路径下是否有对应文件,有可能是训练完的模型没保存下来或者路径错了。

2.可以找找这个文件是在哪个环节获取的。找不到也可以重新建一个。

学友解答:

在上一步训练完之后version_0/checkpoints/epoch=0-step=500.ckpt会有这个文件,有可能是第一次训练出问题了,导致version_0/checkpoints/epoch=0-step=500.ckpt没有保存,可以看看models/lightning_logs目录下有没有version_1,version_2等其类名文件夹,看这些目录下有没有训练好的epoch=0-step=500.ckpt

最后:重开一个实例,重新下载运行,成功找到报错提醒的缺失文件,问题顺利解决啦!

 

文生图术语介绍

AIGC(Artificial Intelligence Generated Content,人工智能生成内容)涉及许多技术概念和术语,主要包括以下几个方面:

         1. **生成模型(Generative Models)**
   - **生成对抗网络(GANs, Generative Adversarial Networks)**:一种通过两个神经网络(生成器和判别器)对抗训练的模型,用于生成逼真的图像、音频或文本。
   - **变分自编码器(VAEs, Variational Autoencoders)**:一种生成模型,通过学习数据的潜在分布来生成新样本,通常用于图像生成和数据降维。
   - **扩散模型(Diffusion Models)**:一种通过逐步去噪的过程生成图像的方法,能够生成高质量的视觉内容。

        2. **自然语言处理(NLP, Natural Language Processing)**
   - **语言模型(Language Models)**:用于生成或理解文本的模型,例如GPT(Generative Pre-trained Transformer),通过训练大量文本数据来理解和生成自然语言。
   - **预训练和微调(Pre-training and Fine-tuning)**:预训练模型在大量通用数据上进行训练,微调模型则是在特定任务或数据集上进行进一步训练,以提高在特定任务上的表现。

         3. **文本到图像生成(Text-to-Image Generation)**
   - **文本描述(Text Descriptions)**:用自然语言描述生成图像的内容,模型根据这些描述生成相应的图像。
   - **条件生成(Conditional Generation)**:生成图像时,模型根据输入的条件(如文本描述或其他数据)来生成相关内容。

        4. **图像到图像转换(Image-to-Image Translation)**
   - **风格迁移(Style Transfer)**:将一种图像的风格应用到另一种图像上,如将一张照片转换为艺术风格的画作。
   - **图像修复(Image Inpainting)**:填补图像中的缺失部分或修复图像中的损坏区域。

        5. **自监督学习(Self-Supervised Learning)**
   - **对比学习(Contrastive Learning)**:通过比较相似和不相似的样本来学习特征,使得模型能够从无标签数据中获取有用的信息。
   - **掩码模型(Masked Models)**:例如在文本生成中,模型会掩盖一些输入词,并通过预测这些被掩盖的词来进行训练。

        6. **控制和调节(Control and Conditioning)**
   - **多模态生成(Multimodal Generation)**:生成模型能够结合多种输入模式(如文本和图像),实现更复杂的内容生成。
   - **用户控制(User Control)**:允许用户通过输入特定的指令或条件来控制生成内容的风格、内容或其他特征。

这些术语和技术共同推动了AIGC领域的发展,使得生成内容的质量和多样性不断提升。

 

说在最后

        在这个学习与试运行的过程中,发现问题,理解问题,解决问题,很有成就感,也真心感谢助教老师与学友的热心帮助,收获成长了很多!

        快来试试创建自己的第一个AIGC文生图吧!

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值