前言
人工智能生成内容(Artificial Intelligence Generated Content,简称 AIGC)是当下最火的概念之一。AIGC 被认为是继专业生成内容(Professional Generated Content, PGC)和用户生成内容(User Generated Content, UGC)之后,利用人工智能技术自动生成内容的新型生产方式。
AI 生成内容的形式相当丰富,除了文字外,还可以进行绘画、作曲、演唱、编剧、设计等。最近热度非常高的 Text to Image 就是 AI 加持下非常时髦的一种图片创造方式。看看下面这些图片,你一定很难想象它们都是 AI 生成的吧。
许多人可能觉得,使用 AIGC 有很高的门槛,普通人是很难入门的。其实不然,随着 AI 技术的快速发展以及众多开源项目的诞生,我们每个人都可以很轻松且廉价的使用到 AIGC。谁能想到,在 2018 年,人工智能生成的画作在佳士得拍卖价还高达 43.25 万美元,而时隔才数年,让 AI 为我们创作绘画已经成了人人触手可及的事情。
在这些开源项目中,Stable Diffusion 无疑是优秀生之一。Stable Diffusion 是一种扩散模型(Diffusion Model)的变体,称为“潜在扩散模型”(Latent Diffusion Model),由CompVis、Stability AI 和 LAION 的研究人员和工程师创建。它使用来自 LAION-5B 数据库子集的图像进行训练。使用这个模型,可以生成包括人脸在内的任何图像,因为有开源的预训练模型,所以我们也可以在自己的机器上运行它。Stable Diffusion 能够根据我们提供的一些提示词以及可以调整的部分参数,通过模型计算生成一张不错的图片。
我整理了一份 Stable Diffusion 的上手教程,分享给大家。这其中包括了 Stable Diffusion 的安装和基本使用方法,以及使用 Lora 模型调整图片生成的风格。这是一项接近零基础的教程,其中并不会包含复杂的概念或者深奥的算法。换句话说,只要你稍有计算机基础,了解如何敲入命令,知道怎么使用浏览器打开网页,你就能很轻松的学会。
搭建运行环境
操作系统:centos 7.9
安装基础工具
sudo yum install -y git conda mesa-libGL zlib-devel libjpeg-turbo-devel
确认 Python 版本
由于部分计算模块对 Python 版本有强依赖,我们需要先确保当前系统的 Python 为 3.7 及以上版本。我们可以通过python --version获得当前系统的 Python 版本。如果版本低于要求,可以通过 Yum 升级。这里我们以 Python 3.8 版本为例。
参考:
Centos7安装Python3.10
拉取 Stable Diffusion WebUI 代码
接着,我们从 Github 上获取最新的 Stable Diffusion WebUI 代码。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
说明:由于 Github 访问存在不稳定性,如果从上述地址 clone 失败,可以使用在 Gitee 上为大家准备的镜像项目git clone https://gitee.com/developer-aliyun-com/stable-diffusion-webui.git。
项目下载完成后,我们将 Web Terminal 的操作目录设置为项目所在目录。
cd stable-diffusion-webui
安装项目依赖
Stable Diffusion 的运行还需要许多依赖包,通过下面的命令可以把它们都安装到 Conda 提供的虚拟环境中。
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117
pip3 install cython opencv-python-headless gfpgan open-clip-torch xformers pyngrok clip-anytorch
pip3 install -r requirements_versions.txt
启动 Stable Diffusion WebUI
python3 launch.py --listen
在启动时,Stable Diffusion WebUI 会根据需要下载一些必要模型数据,另外,加载模型也需要花费一些时间,所以我们现在要做的就是耐心等待。当 Terminal 中显示出 Running on local URL: http://0.0.0.0:7860字样,就表示程序已经启动并对外提供服务了。
主页布局简介
主页面包含以下内容,我对关键部分已经做了标记处理,如下。
使用 Stable Diffusion WebUI 生成图片
在默认的txt2img
这个tab下的Prompt种输入cat
,然后点击右侧的Generate
按钮就开始生成了,等待一段时间(几秒到几分钟不等,取决于机器性能)后便能看到生成的画面。至此,便已经完成运行环境搭建的步骤了。