一、引言
AIGC,即AI-Generated Content,是一种利用大型预训练模型如生成对抗网络(GAN)、扩散网络(Diffusion)和语言大模型(Transformer)等人工智能技术,通过对大量数据进行学习和模式识别,最终创造出各种类型内容的技术。例如,AIGC可以根据输入的“提示词”(如关键词或描述)或参考图片,生成相应的文章、图像、音频、视频等内容。
对于AIGC而言,目前比较火热的应用场景有文本生成(ChatGPT、文心一言、通义千问等) 以及生图场景(妙鸭相机、文心一格等等)。
当前的AIGC生图已经被广泛应用于各种商业落地场景,例如广告宣传图、个人形象生成甚至是一些灰色产业。
得益于最近在做项目有所涉猎AIGC相关内容,进行一次简单的总结分享。
目前主流的生图选型有StableDiffusion、Midjourney、DALL-E等,由于StableDiffusion开源的属性以及丰富的生态,下文主要介绍均基于StableDiffusion,以及基于StableDiffusion的WebUI、ComfyUI。
二、Stable Diffusion基础
简介
Stable Diffusion是一种基于概率的机器学习模型,用于生成具有特定结构和特征的数据。
该模型通过逐步引入结构和模式,从无到有地生成数据。在Stable Diffusion中,这个过程被用来从随机噪声中生成图像。
Stable Diffusion生图过程
基本流程就是将图片进行扩散,扩散成一些随机的像素点之后,再通过预先训练好的模型,对扩散后的图片,进行一定秩序的生成,从而实现生成指定效果照片的作用。
生图过程中的一些核心概念
-
对于SD模型,其autoencoder模型参数大小为84M,CLIP text encoder模型大小为123M,而UNet参数大小为860M,所以SD模型的总参数量约为1B。
autoencoder:encoder将图像压缩到latent空间,而decoder将latent解码为图像;
CLIP text encoder:提取输入text的text embeddings,通过cross attention方式送入扩散模型的UNet中作为condition;
UNet:扩散模型的主体,用来实现文本引导下的latent生成。
基于以上概念,生成图片的过程图:
Stable Diffusion与其他生成模型的对比
名称 |
作者 |
优点 |
缺点 |
价格 |
Stable Diffusion |
StabilityAI、CompVis与Runway合作开发 |
免费试用!价格便宜、开源、操作控制性强 |
对使用者要求高 |