背景介绍
** AIGC技术**
AIGC(AI-Generated Content)是指基于生成对抗网络、大型预训练模型等人工智能的技术方法,通过已有数据的学习和识别,以适当的泛化能力生成相关内容的技术。例如,通过输入关键词、描述或样本,AIGC可以生成与之相匹配的文章、图像、音频等。
** Deepfake技术**
Deepfake是一种使用人工智能技术生成的伪造媒体,特别是视频和音频,它们看起来或听起来非常真实,但实际上是由计算机生成的。这种技术通常涉及到深度学习算法,特别是生成对抗网络(GANs),它们能够学习真实数据的特征,并生成新的、逼真的数据。
工具箱合集
此次比赛内容是,参赛者需在可图Kolors 模型的基础上,基于LoRA模型生成 8 张图片组成连贯故事,故事内容可自定义,风格不限,同时要保证美感度及连贯性。 与之前活动不同的是,第二期CV图像方向任务是检测图像是否为Deepfake图像,而此次第四期AIGC方向的任务是基于模型生成AI图像。
将教程中的常用链接如下,正常使用的前提是已经按要求完成相应的注册与申请算力资源。
Datawhale速通教程:Datawhale (linklearner.com)
AI云开发平台(PAI-DSW):我的Notebook · 魔搭社区 (modelscope.cn)https://modelscope.cn/my/mynotebook/authorization
AI助教(通义千问):
通义tongyi.ai_你的全能AI助手 (aliyun.com)https://tongyi.aliyun.com/qianwen/魔搭模型库:
Task2:baseline精读
** 1、安装依赖包**
!pip install命令来安装Python 包,!pip uninstall命令用来卸载Python 包,
相关依赖包有:Data-Juicer 和 DiffSynth-Studio。
** 2、数据集下载与预处理**
从ModelScope加载一个名为lowres_anime的数据集,并保存图像到指定目录“/mnt/workspace/kolors/data/lora_dataset/train/”。
将数据集中的图像转换为 RGB 模式,并保存到指定目录。
创建包含图像路径和文本描述的元数据文件 metadata.jsonl。
编写并保存 data_juicer_config.yaml 配置文件,用于后续的数据过滤和处理。
** 3、用Data-Juicer进行数据处理**
使用 dj-process 命令根据配置文件对数据进行过滤和处理,生成 result.jsonl 文件。
读取 result.jsonl 文件中的数据,并将其转换为 Pandas DataFrame,然后保存为 CSV 文件,并且将图片保存到指定文件夹下。
4、模型训练与图像生成
下载可图模型download_models(["Kolors", "SDXL-vae-fp16-fix"])。
在前面模型的基础上,执行可图Lora微调训练。
加载Lora微调后的模型。
设置正向提示词,反向提示词,执行次数,图片尺寸。
设置随机种子,控制图片是否可以重复生成,并将图像保存为 .jpg 文件。
5、合并图像并保存
将生成的多个图像合并成一个大图像,并调整图片的大小。
ps:在terminal终端,复制epoch=0-step=500.ckpt模型文件,以及所有的jpg图像到指定位置output文件夹中:
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/*.jpg /mnt/workspace/kolors/output/
另外一个快速保存多张图片的方法,点击光标之后按住Shift键,再点击光标,全部选中,再右键Download即可下载指定的文件。
baseline改进
利用通义小助手,修改了自己的提示词,根据生成的图像进行改进,并输出为2行列4图像。
初遇
青年男子笑容可掬,手捧布匹,前来与女子交易,实则为了接近她,商讨婚事。
相恋
女子翘首以盼,等待男子归来,见到他时喜极而泣,两人重逢后欢声笑语不断。
婚姻
占卜显示吉祥,没有不利的预兆,男子驾车迎接,女子带着嫁妆,两人步入婚姻殿堂。
辛劳
女子三年来辛勤操持家务,从早忙到晚,没有一刻停歇,展现了她的勤劳和牺牲。
变化
男子性格反复无常,对待女子的态度时好时坏,不再如从前般专一和温柔。
哀怨
女子静下心来反思这段关系,内心充满悲痛和自我怜悯,意识到自己的处境。
决绝
女子下定决心,不再回头,面对男子的背叛,她选择了放弃和决裂。
新生
女子告诫后来者不要沉溺于爱情,因为男子可以轻易抽身,而女子一旦深陷其中,便难以自拔,暗示了她正迈向新的生活阶段,学会了独立和自我保护。
Task3:实战优化
Part1.安装**ComfyUI **插件
**ComfyUI **是ComfyUI是一个功能强大、模块化程度高的AIGC图形和视频生成的用户界面和后台。在ComfyUI平台的前端页面上,用户可以基于节点/流程图的界面设计并执行AIGC文生图或者文生视频的pipeline。
他的核心模块由模型加载器、提示词管理器、采样器、解码器。
Part2:Lora微调
import os
cmd = """
python DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py \ # 选择使用可图的Lora训练脚本DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py
--pretrained_unet_path models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors \ # 选择unet模型
--pretrained_text_encoder_path models/kolors/Kolors/text_encoder \ # 选择text_encoder
--pretrained_fp16_vae_path models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors \ # 选择vae模型
--lora_rank 16 \ # lora_rank 16 表示在权衡模型表达能力和训练效率时,选择了使用 16 作为秩,适合在不显著降低模型性能的前提下,通过 LoRA 减少计算和内存的需求
--lora_alpha 4.0 \ # 设置 LoRA 的 alpha 值,影响调整的强度
--dataset_path data/lora_dataset_processed \ # 指定数据集路径,用于训练模型
--output_path ./models \ # 指定输出路径,用于保存模型
--max_epochs 1 \ # 设置最大训练轮数为 1
--center_crop \ # 启用中心裁剪,这通常用于图像预处理
--use_gradient_checkpointing \ # 启用梯度检查点技术,以节省内存
--precision "16-mixed" # 指定训练时的精度为混合 16 位精度(half precision),这可以加速训练并减少显存使用
""".strip()
os.system(cmd) # 执行可图Lora训练
总结与心得
ComfyUI是一款功能强大的AIGC(AI生成内容)平台,它通过直观的节点/流程图界面让非专业人员也能轻松构建复杂的AI生成工作流程。ComfyUI的核心优势在于其模块化设计,用户可以自由组合模型和处理步骤,如模型加载器、提示词管理器、采样器和解码器,以适应各种应用场景。此外,它的可视化界面简化了AI模型的理解和操作,多模型支持增强了应用范围,开放性和可扩展性则促进了社区创新。
在实际应用中,ComfyUI可以用来微调模型,如使用LoRA技术对特定任务进行优化。例如,上述命令行展示了如何使用ComfyUI训练LoRA模型,通过指定预训练的UNet、文本编码器和VAE组件以及设置训练参数来实现。具体来说,UNet根据输入的噪声和文本条件生成图像;VAE将输入数据映射到潜在空间并从中采样生成新图像;文本编码器将文本转换为向量表示,与VAE生成的噪声一起输入到UNet中,指导图像生成过程。
通过ComfyUI的学习和使用,我深刻体会到其在简化复杂AI生成任务方面的价值。即使是初学者,也能通过其直观的设计和丰富的文档快速上手,创造出高质量的内容。
版权归原作者 Yixu Anxia 所有, 如有侵权,请联系我们删除。