精读代码,实战进阶&实践Task2

背景

从零入门AI生图原理&实践 是 Datawhale 2024 年 AI 夏令营第四期的学习活动("AIGC"方向),基于魔搭社区"可图Kolors-LoRA风格故事挑战赛"开展的实践学习------

  • 适合想 入门并实践 AIGC文生图、工作流搭建、LoRA微调 的学习者参与

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

学习笔记

通义千问

通义千问的介绍:通义千问是具有信息查询、语言理解、文本创作等多能力的AI助手。编程与技术支持能力是它的强项之一。

精读baseline

复制代码
这段代码主要完成以下几个工作流程:

1. **环境准备**:
   - 安装所需的Python包,例如`simple-aesthetics-predictor`, `data-juicer`, `peft`, `lightning`, `pandas`, `torchvision`等。
   - 卸载并重新安装某些特定版本的包,例如卸载`pytorch-lightning`再安装其他依赖。

2. **数据集加载与预处理**:
   - 加载名为`AI-ModelScope/lowres_anime`的数据集,并提取其中的图像数据。
   - 将图像数据保存至磁盘,并创建一个包含图像路径和对应的文本标签(这里是统一标记为"二次元")的元数据文件`metadata.jsonl`。

3. **数据清洗与过滤**:
   - 创建一个配置文件`data_juicer_config.yaml`,定义数据清洗的规则,包括图像尺寸过滤和宽高比过滤。
   - 使用`data-juicer`工具对数据集进行处理,输出过滤后的结果到`result.jsonl`文件。

4. **数据集整理与特征提取**:
   - 读取经过清洗的数据集,将其整理成DataFrame格式,并保存为CSV文件`result.csv`。
   - 使用CLIP模型提取图像和文本的嵌入向量,并计算它们之间的相似度分数。

5. **构建PyTorch数据集**:
   - 创建一个自定义的PyTorch数据集类`CustomDataset`,用于加载图像和文本数据。
   - 使用该数据集类创建一个数据加载器`DataLoader`,以便于后续训练使用。

6. **图像生成**:
   - 使用`StableDiffusionPipeline`模型根据不同的提示(prompt)生成一系列二次元风格的图像,并保存至磁盘。
   - 将生成的图像拼接在一起形成一个大的图像,并调整其尺寸。

下面是每个部分更详细的解释:

### 环境准备
这部分负责确保所有必要的Python包都已正确安装。

### 数据集加载与预处理
这部分从`MsDataset`加载数据集,并对图像进行基本处理,如转换颜色模式和保存至磁盘。同时,为每个图像创建一个包含路径和标签的元数据条目。

### 数据清洗与过滤
这部分定义了一个配置文件来指定数据清洗的标准,并调用`data-juicer`工具来执行这些操作。

### 数据集整理与特征提取
这部分将处理后的数据集整理成易于使用的格式,并利用CLIP模型计算图像和文本的相似度。

### 构建PyTorch数据集
这部分创建了一个PyTorch数据集类,用于方便地加载和预处理数据,以及创建数据加载器。

### 图像生成
这部分使用`StableDiffusionPipeline`根据给定的提示生成图像,并将多个图像拼接起来形成最终的输出。

整个脚本的工作流程是从数据集的加载和预处理开始,然后进行数据清洗,接着是特征提取和数据集构建,最后使用生成模型根据提示生成新的图像。

通义千问返回Prompt

好的,根据您的要求,我为您编写了一套适用于每个场景的生图提示词。以下是每个场景的详细描述:

  1. 女主正在上课

    • 古风,淡墨勾勒,一位身穿青色长裙、束着高髻的少女,坐在书案前,专注地听着先生讲解,上半身特写,桌上散落着竹简和毛笔。
  2. 开始睡着了

    • 古风,轻柔笔触,那位少女头轻轻侧向一边,手肘支在书案上,手中还握着毛笔,似乎是在听课时不知不觉进入了梦乡,上半身特写,背景是安静的学堂。
  3. 进入梦乡,梦到自己站在路旁

    • 古风,细腻水彩,少女穿着蓝色衣裙,站在一条幽静的石板小径旁,周围是葱郁的竹林与盛开的桃花,她眺望着远方,全身特写。
  4. 王子骑马而来

    • 古风,线条流畅,一位英俊少年骑着一匹骏马缓缓而来,他身穿金色铠甲,头戴玉冠,目光温柔地看着少女,背景是宽阔的平原和远处的山峦,全身特写。
  5. 两人相谈甚欢

    • 古风,温暖色调,少女与少年并肩站立,彼此交谈,眼神中流露出笑意,背景是一片花海,花瓣随风飘落,上半身特写。
  6. 一起坐在马背上

    • 古风,动感画面,少女与少年共乘一骑,马儿正穿过一片森林,少女依偎在少年身后,双手环抱着他的腰,全身特写。
  7. 下课了,梦醒了

    • 古风,细腻笔触,少女从梦中醒来,手按住额头,似乎还在回味梦境,周围的同学都已离开,上半身特写,背景是空荡荡的学堂。
  8. 又回到了学习生活中

    • 古风,淡雅色彩,少女重新坐回书案前,手持毛笔认真书写,旁边放着几本古籍,上半身特写,学堂内还有其他学子的身影忙碌着。

这些描述可以作为生成图像的基础。如果您需要进一步调整或者有其他具体要求,请随时告诉我!
这是第一张场景的图像:"女主正在上课"。

接下来我会继续生成其余的场景图像。请确认这张是否符合预期,如果没有问题,我们将继续下一个场景。
这是第二张场景的图像:"开始睡着了"。

现在让我们继续生成下一个场景。
这是第三张场景的图像:"进入梦乡,梦到自己站在路旁"。

接下来我们生成第四张场景的图像。
这是第四张场景的图像:"王子骑马而来"。

现在让我们继续生成第五张场景的图像。

遇到问题&解决方案

1、阿里云PAI实例莫名被关闭移除,导致要重新创建实例和运行Baseline;

2、尝试本地部署训练模型和了解scepter webui相关知识。

相关推荐
爱吃的小肥羊6 分钟前
【最全】Kiro 注册安装使用全教程|同样用 Opus 4.6,比 Claude Code 便宜 3 倍
aigc·ai编程
程序员阿伦24 分钟前
璋㈤鏈虹殑Java澶у巶闈㈣瘯璁帮細浠嶴pring Boot鍒癒ubernetes锛�3杞湡棰樺叏瑙f瀽锛�
spring boot·redis·kubernetes·aigc·java闈㈣瘯·寰湇鍔�·鐢靛晢绉掓潃
DigitalOcean2 小时前
如何使用DigitalOcean Gradient 平台上的无服务器推理
aigc·agent
鲲志2 小时前
别等 Sora 了!一代神话陨落?OpenAI 这一手“弃车保帅”我看懂了...
aigc·agent·sora
imbackneverdie5 小时前
如何从海量文献中跨界汲取创新灵感?
论文阅读·人工智能·ai·自然语言处理·aigc·ai写作·ai工具
饼干哥哥5 小时前
用AI 48小时速通梅花易数之后,我想通了「学习」的最终解
aigc
用户5191495848456 小时前
SEO LAT Auto Post 插件远程代码执行漏洞利用工具 (CVE-2024-12252)
人工智能·aigc
树獭叔叔6 小时前
向量数据库的双索引架构:HNSW与Payload的协同机制
后端·aigc·openai
DO_Community7 小时前
使用 DigitalOcean 实现 Claude Code “低配订阅 + 外部 Token”
人工智能·aigc·ai编程·ai推理
学不完的9 小时前
ZrLog 博客系统部署指南(无 War 包版,Maven 构建 + 阿里云镜像优化)
java·linux·nginx·阿里云·maven