前言
Textual Inversion(文本倒置),又称Embedding(嵌入),适合让AI学习一个新的概念/物体。画风相较于HyperNetwork学习能力较差。
Anything这类基于NovelAI制作的模型不适合拿来练Embedding,成品会很诡异。从头开始训练的Waifu Diffusion或Stable Diffusion比较适合训练Embedding,因此这里使用的基础模型为Waifu Diffusion 1.4。
一、开始训练
第一步:启动Stable Diffusion WebUI
第二步:进入Train页面
切换至Train页面,在Create embedding
输入名字。Number of vectors per token
设置7以上。点击Create embedding
。
第三步:设置训练数据路径
切换至Train页面,选择刚刚创建的embedding,于Dataset directory
输入训练数据的路径
Prompt template file选style_filewords.txt。Mx Step设置训练至10000步停止。当然你也可以调高一点,并看预览图决定品质差不多之后才按Interrupt中止训练,究竟要多少步数不得而知。
第四步:开始训练
点击Train Embedding
,开始训练。
Stable Diffusion WebUI应会显示剩余时间,通常是一小时起跳,每500步会在右边显示训练该步数的成果。
你也可以到Stable Diffusion WebUI根目录下的texual_inversions
查看训练成果。里面image_embeddings
目录会存放第几步所训练的成果。
待训练完成后,到Stable Diffusion WebUI根目录下的texual_inversions/embeddings,对照image_embeddings目录的图片挑选合适的成品。
例如觉得9500步的不错,那就将该pt档从里面挑出,将其放到SD WebUI程序目录下的embeddings。
二、使用Embedding模型
Stable Diffusion WebUI的生图界面,点击右上角Show Extra Networks
接着选取要使用的embedding,点击将其加入提示词字段。Embedding只能配合训练时使用的模型来算图。
然后按照Embedding训练时使用的提示词下提示词,这样算出来的图便会有该Embedding的人物了。