AIGC初体验:部署Stable Diffusion玩转AI绘画(CPU版)

简介: 本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。

AIGC初体验:部署Stable Diffusion玩转AI绘画(CPU版)


1. 创建实验资源

开始实验之前,您需要先创建实验相关资源。

  1. 在实验室页面,单击创建资源
  2. (可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明:资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:子用户名称、子用户密码、AK ID、AK Secret、资源中的项目名称等。



2. 安装 Stable Diffusion WebUI

Stable Diffusion 是一个 Python 命令行程序,我们直接使用需要对它的命令和参数有详尽的了解,有一定学习成本。好在,有一个 Stable Diffusion WebUI 的开源项目,可以直接将 Stable Diffusion 的操作通过网页透出,让我们轻松通过 Web 页面就能使用 Stable Diffusion 生成图片。所以,我们选择安装和使用 Stable Diffusion WebUI 来完成实验。

  1. 安装基础工具。

Stable Diffusion WebUI的安装与运行需要使用到一些工具软件,我们需要先通过Yum安装它们。

执行如下命令,安装基础工具。

sudo yum install -y git conda mesa-libGL
  1. 初始化conda环境。

Conda是一个优秀的跨平台、跨语言包管理工具。同时,它的环境隔离功能也能很好的帮助我们屏蔽服务器间基础设施的不同,为我们提供一个干净、统一的程序运行环境。

依次执行如下命令,在Bash中初始化Conda,同时创建并激活名为aigc的虚拟环境。

sudo bash -c "conda init bash" && bash
conda create -y -n aigc python=3.10.6
conda activate aigc

💡注意:之后的操作都将基于aigc这个虚拟环境,如果你切换了Terminal或者不小心退出了环境,可以再次执行conda activate aigc命令回到aigc虚拟环境中。

  1. 拉取Stable Diffusion WebUI代码。

3.1 执行如下命令,从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

3.2 项目下载完成后,我们将Web Terminal的操作目录设置为项目所在目录。

cd stable-diffusion-webui
  1. 安装项目依赖。

Stable Diffusion的运行还需要许多依赖包,执行如下命令,把它们都安装到Conda提供的虚拟环境中。

conda install -y pytorch torchvision torchaudio cpuonly -c pytorch
pip3 install opencv-python-headless gfpgan open-clip-torch xformers pyngrok clip-anytorch
pip3 install -r requirements_versions.txt
  1. 启动Stable Diffusion WebUI。

当一切准备就绪,执行如下命令,启动Stable Diffusion WebUI。

python launch.py --listen --lowvram --no-half --skip-torch-cuda-test

💡说明:在启动时,Stable Diffusion WebUI会根据需要下载一些必要模型数据,另外,加载模型也需要花费一些时间,所以我们现在要做的就是耐心等待。当Terminal 中显示出Running on local URL: http://0.0.0.0:7860字样,就表示程序已经启动并对外提供服务了。


3. 使用 Stable Diffusion WebUI 生成图片

  1. 获得Stable Diffusion WebUI访问地址。

当Stable Diffusion WebUI启动后,会对外监听7860端口。我们需要使用http://(ECS公网地址):7860来访问程序。

说明:这里的ECS公网地址需要替换成实验室为大家分配的可以访问ECS的公网IP地址。我们可以在实验室页面左侧导航栏中,单击云产品资源列表查看本次实验资源所分配的ECS公网地址。

💡另外,你还可以使用Web Terminal右上角的+号新建一个Terminal标签页,并在其中执行以下命令直接获得Stable Diffusion WebUI的访问地址:

echo "http://"$(curl -s ifconfig.me)":7860/"

  1. 访问Stable Diffusion WebUI。

接着,让我们打开浏览器,输出刚刚获得的访问地址,就可以进入Stable Diffusion WebUI的操作界面了。

  1. 使用文字生成图片。

生成图片的操作方式非常简单,只需要在左侧的Prompt输出框中填入提示词,之后点击右侧的Generate按钮即可。提示词就是生成图片的依据,既可以是描述需要生成内容的词,如:girl, sunset, forest等;也可以是用于是描述图像属性的词,如:best quality, beautiful, masterpiece等。我们甚至可以通过提示词选择图片生成的视角、光线、画风;人物的姿势、着装、表情;背景的内容等。

图片生成的速度根据机器配置的不同有所差异。在图片生成的过程中,我们可以在页面上看到生成过程的中间图片逐渐变得清晰。同时,也可以通过进度条直观的了解图片生成的进度和预估剩余时间。


4. 学习使用 LoRA 模型

除了使用基础模型生成图片外,我们还可以使用 LoRA 模型(Low-Rank Adaptation of Large Language Models)进行图片的生成。LoRA 直译为大语言模型的低阶适应,这是微软的研究人员为了解决大语言模型微调而开发的一项技术。LoRA 能够冻结预训练好的模型权重参数,然后在每个 Transformer 块里注入可训练的层,由于不需要对模型的权重参数重新计算梯度,从而大大减少了需要训练的计算量。从实际效果来说,LoRA 模型可以帮助我们生成指定风格、面孔、动作等要求的图片。

  1. 使用LoRA模型。

1.1 打开WebUI界面,单击Generate按钮下方的扩展配置图标按钮,之后选择Lora标签,就能看到我们可以使用的LoRA模型了。

在实验场景中,已经准备了数个比较热门的LoRA模型,你可以尝试使用它们生成不同风格的图片。

1.2 当我们单击某个LoRA模型后,Prompt中会加入这些内容。最后的数字代表着LoRA模型的权重,默认为 1。接着,我们输入提示词,再单击 Generate,就可以使用LoRA模型将文字转化为图片了。

  1. 获得更多的LoRA模型。

如果觉得现有的LoRA模型还不符合自己的审美,我们可以从Civitai https://civitai.com/tag/lora等网站里找到许多其他爱好者预先训练好的LoRA模型,我们只需要将这些模型下载到stable-diffusion-webui/models/Lora目录内(在本实验中,需要放置在/root/models/Lora目录内),接着我们就可以在Stable Diffusion WebUI中使用它们。如果是新下载的模型没有出现在页面上,可以单击Refresh重新载入它们。


实验地址:https://developer.aliyun.com/adc/scenario/13c7c3f7e06042578862c25b6ce12a80

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9月前
|
人工智能 边缘计算 大数据
【C位面对面】被低估的“通用算力”:为什么 AI 时代CPU 的需求“不降反增”?
AI时代下,大数据、高频交易、AI预处理、边缘计算等核心负载持续推高CPU算力需求。阿里云联合AMD,基于Zen5架构Turin处理器,推出三款场景化云实例:普惠型u2a、高主频g9a及192核g9ae,满足多样算力需求。通过CIPU+Chiplet技术实现性能跃迁,释放CPU真正潜力,助力企业把握通用计算的“第二增长曲线”。
|
人工智能 自然语言处理 搜索推荐
创作者会被AI取代吗?AIGC为电影行业带来新变革
在AI技术飞速发展的今天,AIGC(AI生成内容)正深刻改变电影行业的内容生成、制作流程与商业模式。创作者角色从执行者向策划者转变,需与AI协作挖掘创意与情感价值。生成式人工智能认证(GAI认证)成为新时代创作者必备资质,助力其在人机共生的新生态中保持竞争力,共同推动创作领域迈向更高层次。拥抱变革,共创未来,是每个创作者在AI时代的必由之路。
创作者会被AI取代吗?AIGC为电影行业带来新变革
|
人工智能 自然语言处理 搜索推荐
JeecgBoot AI 应用开发平台,AIGC 功能介绍
JeecgBoot推出AIGC功能模块,包含AI应用开发平台与知识库问答系统,支持AI流程编排、模型管理、知识库训练及向量库对接。基于LLM大语言模型,提供智能对话、RAG检索增强生成等功能,兼容多种大模型(如DeepSeek、Qwen等)。平台结合低代码与AIGC,适用于复杂业务场景,支持快速原型到生产部署,助力用户打造个性化智能体,如“诗词达人”或“翻译助手”,并可嵌入第三方系统提升交互能力。项目开源,欢迎体验与交流。
567 0
JeecgBoot AI 应用开发平台,AIGC 功能介绍
|
存储 人工智能 vr&ar
转载:【AI系统】CPU 基础
CPU,即中央处理器,是计算机的核心部件,负责执行指令和控制所有组件。本文从CPU的发展史入手,介绍了从ENIAC到现代CPU的演变,重点讲述了冯·诺依曼架构的形成及其对CPU设计的影响。文章还详细解析了CPU的基本构成,包括算术逻辑单元(ALU)、存储单元(MU)和控制单元(CU),以及它们如何协同工作完成指令的取指、解码、执行和写回过程。此外,文章探讨了CPU的局限性及并行处理架构的引入。
转载:【AI系统】CPU 基础
|
人工智能 缓存 并行计算
转载:【AI系统】CPU 计算本质
本文深入探讨了CPU计算性能,分析了算力敏感度及技术趋势对CPU性能的影响。文章通过具体数据和实例,讲解了CPU算力的计算方法、算力与数据加载之间的平衡,以及如何通过算力敏感度分析优化计算系统性能。同时,文章还考察了服务器、GPU和超级计算机等平台的性能发展,揭示了这些变化如何塑造我们对CPU性能的理解和期待。
转载:【AI系统】CPU 计算本质
|
机器学习/深度学习 人工智能 自然语言处理
技术创新领域,AI(AIGC)是否会让TRIZ“下岗”?
法思诺创新直播间探讨了AI(AIGC)是否将取代TRIZ的问题。专家赵敏认为,AI与TRIZ在技术创新领域具有互补性,结合两者更务实。TRIZ提供结构化分析框架,AI加速数据处理和方案生成。DeepSeek、Gemini等AI也指出,二者各有优劣,应在复杂创新中协同使用。企业应建立双轨知识库,重构人机混合创新流程,实现全面升级。结论显示,AI与TRIZ互补远超竞争,结合二者是未来技术创新的关键。
582 0
|
人工智能 物联网
AI电影从这个LoRA开始:魔搭AIGC1月赛题公布&12月赛题获奖作品新鲜出炉
魔搭社区LoRA创意挑战赛月度赛第三期来啦! 1月赛题揭晓:电影风格模型训练大赛
443 15
|
存储 人工智能 编译器
【AI系统】CPU 指令集架构
本文介绍了指令集架构(ISA)的基本概念,探讨了CISC与RISC两种主要的指令集架构设计思路,分析了它们的优缺点及应用场景。文章还简述了ISA的历史发展,包括x86、ARM、MIPS、Alpha和RISC-V等常见架构的特点。最后,文章讨论了CPU的并行处理架构,如SISD、SIMD、MISD、MIMD和SIMT,并概述了这些架构在服务器、PC及嵌入式领域的应用情况。
1899 5
|
人工智能 缓存 并行计算
【AI系统】CPU 计算本质
本文深入探讨了CPU计算性能,分析了算力敏感度及技术趋势对CPU性能的影响。文章通过具体数据和实例,解释了算力计算方法、数据加载与计算的平衡点,以及如何通过算力敏感度分析优化性能瓶颈。同时,文章还讨论了服务器、GPU和超级计算机等不同计算平台的性能发展趋势,强调了优化数据传输速率和加载策略的重要性。
1008 4

热门文章

最新文章