Stable Diffusion超详细教程!本地部署 Stable Diffusion

前言

目前市面上比较权威,并能用于工作中的AI绘画软件其实就两款:

  • Midjourney(MJ)
  • Stable-Diffusion(SD

MJ需要付费使用,而SD开源免费,但是上手难度和学习成本略大,并且非常吃电脑配置(显卡、内存)。

Stable Diffusion 开源免费收获了大量活跃用户,开发者社群提供了大量免费高质量的外接预训练模型(fine-tune)和插件,使得SD拥有更加丰富的个性化功能,在经过使用者调教后可以生成更贴近需求的图片,甚至在 AI 视频特效、AI音乐生成等领域,Stable Diffusion 也占据了一席之地。

Stable Diffusion是一种潜在扩散模型(Latent Diffusion Model):

  • 能够从文本描述中生成详细的图像
  • 可以用于图像修复、图像绘制、文本到图像和图像到图像等任务

只要给出想要的图片的文字描述在提Stable Diffusion就能生成符合你要求的逼真的图像!

电脑配置

关键点:显卡、内存、硬盘、CPU:

  • 显卡:N卡(英伟达Nvida独立显卡)首选,效率远超集显/AMD/Intel显卡和CPU渲染,最低10系起步,体验感佳用40系,显存最低4G,6G及格,上不封顶;
  • 内存最低8G,16G及格,上不封顶;
  • 硬盘可用空间最好有个500G朝上,固态最佳。

系统要求:支持 Win10/Win11/macOS(仅限Apple Silicon,Intel 版本的 Mac 无法调用 Radeon 显卡)和 Linux 系统,苹果版 SD 兼容的插件数量较少,功能性不及 Windows 与 Linux 电脑。

如果身边没有合适的电脑可以考虑购买云主机,比如腾讯GPU云服务器。若无法使用独立显卡和云服务,亦可修改启动配置,使用CPU渲染(兼容性强,出图速度慢,需要16G以上内存)。

从图中可看出,与AMD或英特尔的任何产品相比,Nvidia的GPU提供了卓越的性能--有时是以巨大的优势。随着Torch的DLL修复到位,RTX 4090的性能比带有xformers的RTX 3090 Ti高出50%,而没有xformers的性能则高出43%。生成每张图片只需要三秒多。


官方安装步骤

在 Windows 上自动安装

  1. 安装 Python 3.10.6(较新版本的 Python 不支持torch),选中“将 Python 添加到 PATH”
  2. 安装 git。
  3. 以普通用户、非管理员用户身份从 Windows 资源管理器运行。webui-user.bat

CUDA 环境

默认stable-diffusion-webui运行使用的是 GPU 算力

检查自己的电脑配置是否符合要求

在Windows【开始】点鼠标右键,选择【任务管理器(T)】,在【性能】一栏选择【GPU】查看“专用GPU内存

我测试用电脑

我测试用的电脑是集成显卡,用 CPU算力,可以运行,但速度慢,建议采用N卡。

Nvidia 显卡(配置越高,绘图越快)A卡不行,A卡不行,A卡不行(CPU 算力跟 GPU 算力相比简直天差地别,虽然可以通过改参来实现,但有条件直接上N卡吧

注:如果没有 Nvidia 显卡,可以通过给stable-diffusion-webui指定运行参数--use-cpu sd,让其使用 CPU 算力运行,但是非常不建议你这么做,CPU 算力跟 GPU 算力相比简直天差地别,可能 GPU 只需要 10 秒就能绘制完成,而 CPU 却要 10 分钟,这不是开玩笑的。另外,如果你的显卡内存不多,建议 4G 的显卡加上--medvram启动参数,2G 的显卡加上--lowvram启动参数。

Windows用户编辑webui-user.bat文件,修改第六行:

set COMMANDLINE_ARGS=--lowvram --precision full --no-half --skip-torch-cuda-test

如果是16系列显卡,出的图是黑色的话,也是修改webui-user.bat文件的第六行:

set COMMANDLINE_ARGS=--lowvram --precision full --no-half

CUDA 官方归档

CUDA Toolkit Archive | NVIDIA Developer​developer.nvidia.com/cuda-toolkit-archive

需要安装 CUDA 驱动,先确定一下电脑能安装的 CUDA 版本,桌面右下角->右键 NVIDIA 设置图标->NVIDIA 控制面板

电脑的显示是NVIDIA CUDA 11.6.134 driver,所以CUDA 版本不能超过 11.6

直接选择 "精简" 安装就可以了,安装完成之后,可以使用如下命令查看 CUDA 版本,来验证 CUDA 是否安装成功:

nvcc --version


安装Git

Git​git-scm.com/​编辑

检查自己电脑有没有安装Git:【Win+R】唤出【运行】,输入“cmd”,回车,在命令行里输入

git --version

git clone 支持https和git( 即ssh)二种方式下载源码

当使用git 下载时,如果没有配置过ssh key,则会有如下错误提示:

.....
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.

git ssh key配置,以方便用git clone 方式下载 Stable diffusion源码。

【Win+R】唤出【运行】,输入“cmd”,回车,在命令行里输入

# 首先检查全局配置列表是否已经有配置
git config --global --list# 如果返回如下内容,则表示已配置好
user.name =****
user.email=***@***.**# 如果未配置,则执行如下命令
git config --global user.name "这里输入你的用户名"
git config --global user.email "这里输入你的邮箱"

git 生成SSH密钥

生成新的 SSH 密钥并将其添加到 ssh-agent - GitHub 文档​docs.github.com/zh/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

【Win+R】唤出【运行】,输入“cmd”,回车,在命令行里输入

ssh-keygen -t rsa -C "这里输入你的邮箱"

执行命令后需要进行3~4次确认:

  • 确认ssh key保存路径(如不需要改变路么可直接回车)
  • 确认是否需要覆盖保存路径下已有ssh key(可直接回车覆盖)
  • 创建密码(如不需要密码则直接回车)
  • 确认ssh key

在默认路径下会生成2 个文件:id_rsa、id_rsa.pub

添加 SSH 密钥到 GitHub 帐户

新增 SSH 密钥到 GitHub 帐户 - GitHub 文档​docs.github.com/zh/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account

在任何页面的右上角,单击个人资料照片,然后单击“设置”。

选择SSH and GPG keys项:

然后用文本工具打开之前的id_rsa.pub文件,把内容copy到下面输入框,并命名区分不同主机,然后保存:


安装Python

Python Release Python 3.10.6​www.python.org/downloads/release/python-3106/​编辑

注意要勾选此选项,将python添加到系统环境变量PATH中


SD安装


目前大家普遍采用的 Stable Diffusion Web UI

开源 Github:

Home · AUTOMATIC1111/stable-diffusion-webui Wiki (github.com)​github.com/AUTOMATIC1111/stable-diffusion-webui/wiki

Stable Diffusion Web UI 是一个基于 Gradio 库的Stable Diffusion浏览器界面。

  • 在 NVidia GPU 上安装和运行
  • 在 AMD GPU 上安装和运行
  • 在 Apple Silicon 上安装和运行
  • 在英特尔芯片上安装和运行(外部 wiki 页面)
  • 通过容器(即 Docker)安装和运行
  • 通过在线服务运行

下载stable-diffusion-webui仓库

AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI (github.com)​github.com/AUTOMATIC1111/stable-diffusion-webui

【Win+R】唤出【运行】,输入“cmd”,回车,在命令行里输入

# 选择一个空间较大的硬盘,建议固态硬盘。假设为D盘
cd d:
d:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

下载好了会在上述路径下找到:


启动SD

  • 进入SD安装文件夹

  • 双击 webui-user.bat

首次运行会创建python虚拟环境、Installing torch and torchvision等依赖

  • 待其加载完成方可使用浏览器(Chrome/Edge)登录默认的加载IP http://127.0.0.1:7860/


界面汉化

dtlnor/stable-diffusion-webui-localization-zh_CN: Simplified Chinese translation extension for AUTOMATIC1111's stable diffusion webui (github.com)​github.com/dtlnor/stable-diffusion-webui-localization-zh_CN

Extension选项卡里面通过加载官方插件列表直接安装

  • 点击 Extension 选项卡,点击 Avaliable 子选项卡
  • 取消勾选localization,再把其他勾上,然后点击 橙色按钮,如下图

  • zh_CN Localization这一项的右边点击install

  • 重启webUI以确保扩展已经加载了
  • 在 Settings 选项卡,点击 页面右上角的 橙色Reload UI按钮 刷新扩展列表

  • Extensions选项卡,确定已勾选本扩展☑️;如未勾选,勾选后点击橙色按钮启用本扩展。

  • Settings选项卡中,找到User interface子选项

  • 然后去页面最底部(1.5版本起为页面最顶部),找到Localization (requires restart)小项,找到在下拉选单中选中zh_CN(如果没有就按一下 按钮),如图

  • 然后按一下 页面顶部左边的橙色Apply settings按钮保存设置,再按 右边的橙色Reload UI按钮重启webUI


  • 生效了~~~

开始使用

stable-diffusion-webui 的功能很多,主要有如下 2 个:

  • 文生图(text2img):根据提示词(Prompt)的描述生成相应的图片。
  • 图生图(img2img):将一张图片根据提示词(Prompt)描述的特点生成另一张新的图片。

1.stable diffusion安装包

随着技术的迭代,目前 Stable Diffusion 已经能够生成非常艺术化的图片了,完全有赶超人类的架势,已经有不少工作被这类服务替代,比如制作一个 logo 图片,画一张虚拟老婆照片,画质堪比相机。

最新 Stable Diffusion 除了有win多个版本,就算说底端的显卡也能玩了哦!此外还带来了Mac版本,仅支持macOS 12.3或更高版本

在这里插入图片描述

2.stable diffusion视频合集

我们在学习的时候,往往书籍源码难以理解,阅读困难,这时候视频教程教程是就很适合了,生动形象加上案例实战,一步步带你入坑stable diffusion,科学有趣才能更方便的学习下去。

在这里插入图片描述

3.stable diffusion模型下载

stable diffusion往往一开始使用时图片等无法达到理想的生成效果,这时则需要通过使用大量训练数据,调整模型的超参数(如学习率、训练轮数、模型大小等),可以使得模型更好地适应数据集,并生成更加真实、准确、高质量的图像。

在这里插入图片描述

4.stable diffusion提示词

提示词是构建由文本到图像模型解释和理解的单词的过程。可以把它理解为你告诉 AI 模型要画什么而需要说的语言,整个SD学习过程中都离不开这本提示词手册。

在这里插入图片描述

5.SD从0到落地实战演练

在这里插入图片描述

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名SD大神的正确特征了。

这份完整版的stable diffusion资料我已经打包好,需要的点击下方插件,即可前往免费领取!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/13309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

变色龙还是树懒:揭示大型语言模型在知识冲突中的行为

你是知识变色龙还是树懒?我今天在ICLR学到一个很有趣的术语,叫做证据顺序(order of evidence)。 大模型RAG处理知识冲突的探讨: 在检索增强生成(Retrieval-Augmented Generation, RAG)的过程中,技术团队会将检索到的前几名文档作为证据,并提示(prompt)给大型语言模型(Large La…

电巢直播XR鉴赏|一块绿幕,闪现进入异星战争的现场!

XR场景赏析 在浩瀚的宇宙深处,一颗神秘莫测的异星球映入我们的眼帘,这里,龙卷风与炮火交织,似乎永不停歇。 星球表面散布着无数的飞船残骸,它们是某场宇宙大战残酷的遗存,无声地诉说着过往的激烈冲突。地面…

LeetCode 3题:无重复字符的最长子串(原创)

【题目描述】 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2: 输入: s "bbbbb" 输出…

Dalsa windows10下安装流程及部分问题分析

文章目录 安装及依赖库说明切换驱动模式流程问题:通过Dalsa SDK开发后找不到相机?问题:找不到采集卡? 安装及依赖库说明 官网(https://www.teledynedalsa.com/en/support/downloads-center/)下载的最新文件(20240515&…

Vue3 报v-bind is missing expression.vue(34)错误的解决方案

一、项目环境 node.js 版本&#xff1a;node-v20.11.1-x64 vscode版本&#xff1a;version 1.89 错误截图 二、可能原因解决方案 2.1 v-bind 与 :src之间存在空格 错误示例&#xff1a; <img v-bind :src"imgurl" /> 如果有在 :src 前面写了 v-bind&…

使用Pixi.js 图片切换特效(图片分段下滑以及复原)

1.效果: 2.实现原理: 将图片按宽高切分为x*y(具体可以自己调整)个矩形区域&#xff0c;对每个顶点分配一个随机值noiseValue(-1到1之间),在顶点着色器中根据这个随机值而做出不同的y轴位移效果从而实现出分段的下滑或者复原的效果。 3.代码实现: 首先是顶点着色器的代码,其中…

医院污水一体化处理设备有哪些

医院污水一体化处理设备通常包括以下几个主要组件&#xff1a; 预处理单元&#xff1a;用于去除污水中的固体悬浮物、颗粒物、油脂等&#xff0c;常见的预处理单元包括格栅、沉砂池、油水分离器等。生物处理单元&#xff1a;用于降解有机物质和去除氮、磷等营养物质。常见的生物…

Kubernetes进阶对象Deployment、DaemonSet、Service

Deployment Pod 在 YAML 里使用“containers”就可以任意编排容器&#xff0c;而且还有一个“restartPolicy”字段&#xff0c;默认值就是 Always&#xff0c;可以监控 Pod 里容器的状态&#xff0c;一旦发生异常&#xff0c;就会自动重启容器。 不过&#xff0c;“restartPo…

Java小游戏之汤姆猫

背景&#xff1a; 博主写过羊了个羊小游戏&#xff0c;客户觉得羊了个羊同学写过了&#xff0c;想换一个&#xff0c;于是笔者想到了汤姆猫。就是那个以前在苹果手机上的猫。 过程&#xff1a; 初始会有一个猫的图片展示&#xff0c;然后你点击按钮&#xff0c;猫会有不同动作…

C++进阶之路:何为默认构造函数与析构函数(类与对象_中篇)

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…

Web3与物联网:构建智能连接的数字世界

引言 随着互联网的不断发展&#xff0c;物联网&#xff08;Internet of Things, IoT&#xff09;作为一种新兴的信息技术&#xff0c;正在逐渐渗透到我们的生活和工作中。而随着Web3的兴起&#xff0c;物联网将迎来新的发展机遇。本文将探讨Web3与物联网的结合&#xff0c;如何…

如何在职场中构建稳固地位:持续学习、拓展人脉与职业规划

在日益激烈的职场竞争中&#xff0c;保持一种稳健且前瞻性的状态是至关重要的&#xff0c;它可以帮助我们在各种“裁员潮”中保持相对安全的位置。以下是一些建议&#xff0c;帮助我们判断和维持在职场中的安全位置&#xff1a; 首先&#xff0c;持续学习和提升技能是关键。职场…

2024年NOC大赛创客智慧(西瓜创客)图形化复赛编程真题模拟试卷包含答案

NOC 复赛图形化模拟题 【题目要求】 1、添加角色小猫和“Balloon1”角色气球(大小 70) 2、添加背景“Boardwalk” 3、点击绿旗,角色初始位置如图,小猫从舞台左侧出发,向舞台右 侧移动,移动过程中不断切换造型 4、当小猫碰到气球角色,小猫停止移动,气球逐渐向舞台上方…

Spring Boot集成Security快速入门Demo

1.什么是Security&#xff1f; Spring Security是一个Java框架&#xff0c;用于保护应用程序的安全性。它提供了一套全面的安全解决方案&#xff0c;包括身份验证、授权、防止攻击等功能。Spring Security基于过滤器链的概念&#xff0c;可以轻松地集成到任何基于Spring的应用…

月薪3万,沉迷“薅羊毛”

在网购江湖中&#xff0c;蟹老板是一位拥有十年经验的资深“羊毛党”。 他不仅是位精明的数学家&#xff0c;更是一位高效的“生产线”工人&#xff0c;专注于各大网购平台的优惠机制。每逢618大促&#xff0c;他总能凭借超凡的洞察力和手速&#xff0c;轻松斩获丰厚的“羊毛”…

17.高并发场景下CAS效率的优化

文章目录 高并发场景下CAS效率的优化1.空间换时间&#xff08;LongAdder&#xff09;2.对比LongAdder和AtomicLong执行效率2.1.AtmoictLong2.2.LongAdder2.3.比对 3.LongAdder原理3.1.基类Striped64内部的三个重要成员3.2.LongAdder.add()方法3.3.LongAdder中longAccumulate()方…

搜索二维矩阵 - LeetCode 热题 64

大家好&#xff01;我是曾续缘&#x1f9e1; 今天是《LeetCode 热题 100》系列 发车第 64 天 二分查找第 2 题 ❤️点赞 &#x1f44d; 收藏 ⭐再看&#xff0c;养成习惯 搜索二维矩阵 给你一个满足下述两条属性的 m x n 整数矩阵&#xff1a; 每行中的整数从左到右按非严格递增…

六西格玛绿带培训:解锁质量工程师的职场新篇章

在质量管理这条道路上&#xff0c;我们或许都曾有过这样的疑问&#xff1a;为何付出了同样的努力&#xff0c;却未能获得预期的回报&#xff1f;当我们看到身边的同行们逐渐步入高薪的行列&#xff0c;而自己却似乎陷入了职业的泥沼&#xff0c;这种对比无疑令人倍感焦虑。然而…

【STM32-MX_GPIO_Init分析】

MX_GPIO_Init分析源码如下&#xff1a; __HAL_RCC_GPIOE_CLK_ENABLE源码如下&#xff1a; #define RCC ((RCC_TypeDef *) RCC_BASE) #define RCC_BASE (AHB1PERIPH_BASE 0x3800UL) #define AHB1PERIPH_BASE (PERIPH_BASE 0x00020000U…

Android Studio kotlin 转 Java

一. 随笔记录 java代码可以转化成kotlin代码&#xff0c;当然 Kotlin 反过来也可以转java 在Android Studio中 可以很方便的操作 AS 环境&#xff1a;Android Studio Iguana | 2023.2.1 二. 操作步骤 1.步骤 顶部Tools ----->Kotlin ------>Show Kotlin Bytecode 步…