【stable diffusion部署】Stable Diffusion开源本地化的文生图图生图AI

news/2024/12/15 8:45:10/

前言

主要功能

文生图、图生图、图像修复、处理、合成

所有的AI设计工具,安装包、模型和插件,都已经整理好了,👇获取~

在这里插入图片描述

系统要求

windows 10、11系统,建议6G显存,NVIDIA显卡推荐12G显存,内存建议16G以上,建议N卡,磁盘空间要足,一个模型就好几G O(∩_∩)O 我用垃圾办公电脑win10+1231V3 CPU/8G DDR3内存跑一张512X512的图十几分钟,独显是AMD的用CPU跑的速度贼慢,8G内存文生图可以跑图生图直接崩溃,加内存到16G可以跌跌撞撞的图生图

安装步骤

需要的程序
  • • Python(3.10.6)

  • • git(克隆项目代码到本地和从网址安装插件)

  • • CUDA驱动(Nvidia 显卡)

  • • Stable Diffusion(SD项目本体)

python

SD WebUI 推荐使用的 Python 版本为 3.10.6,较新版本的 Python 不支持 torch 下载地址:https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe 安装时勾选添加环境变量可以不用再单独去系统设置里配置环境变量

git

官网:https://git-scm.com/

CUDA驱动

确定电脑能安装的 CUDA 版本,根据显卡驱动版本,可以确定可安装的 CUDA 版本。在显卡驱动被正确安装的前提下,通过在命令行输入nvidia-smi命令,查看输出信息中的驱动版本以及它所支持的CUDA Version。这个版本是当前驱动支持的CUDA最高版本 CUDA 官方归档:https://developer.nvidia.com/cuda-toolkit-archive 验证 CUDA 是否安装成功:nvcc --version

Stable Diffusion WebUI
下载
  • • 通过git克隆项目到本地,后期项目有更新可以方便的通过git pull拉取最新代码
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git   #AMD显卡用DirectML的分支   git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml.git   #Intel Arc显卡用DirectML的分支   git clone https://github.com/Aloereed/stable-diffusion-webui-arc-directml.git
  • • 也可以手动下载项目压缩包

安装

配置启动参数,使用记事本编辑 webui-user.bat 文件:

set COMMANDLINE_ARGS=--enable-insecure-extension-access #显存大于8G   set COMMANDLINE_ARGS=--medvram --opt-split-attention --enable-insecure-extension-access #显存小于等于8GB,--medvram的作用是限制VRAM占用   set COMMANDLINE_ARGS=--lowvram --opt-split-attention --enable-insecure-extension-access #内存小于等于8GB,--lowvram参数会让高端显卡算图变很慢   set COMMANDLINE_ARGS=--lowvram --opt-split-attention --enable-insecure-extension-access --xformers #进一步减少VRAM占用,仅限Nvidia显卡,可以加上--xformers参数   set COMMANDLINE_ARGS=--lowvram --opt-split-attention --enable-insecure-extension-access --no-half-vae #减少使用VAE导致黑图出现几率,加入--no-half-vae参数   set COMMANDLINE_ARGS=--lowvram --opt-split-attention --enable-insecure-extension-access --listen --port 7860 #允许局域网内其他设备通过浏览器访问WebUI,在防火墙中开放7860端口并添加--listen参数   set COMMANDLINE_ARGS=--precision full --no-half --skip-torch-cuda-test #运行提示:Torch is not able to use GPU;add --skip-torch-cuda-test to COMMANDLINE_ARGS variab,加此参数将使用CPU执行。Torch和CUDA版本兼容问题可以解决兼容问题使用GPU执行,搜索问题就有答案。

双击运行webui-user.bat

运行之后自动下载安装所需依赖包,时间比较久耐心等待,国内下载文件较大网络环境不好的话会比较慢,可以更换python源以及使用一些GitHub加速的服务提速,如果自动安装依赖失败,可以尝试手动安装所需的依赖包。在Stable Diffusion WebUI项目的根目录,使用命令行工具(如cmd、PowerShell或终端)运行pip install -r requirements.txt来安装所有列出的依赖

运行webui-user.bat命令行出现Running on local URL: http://127.0.0.1:7860, 表示已经跑起来了,使用浏览器访问这个地址就可以使用了

关闭:在终端工具按Ctrl+c,输入Y回车即可退出

扩展插件

通过官方插件库(有网络要求)或者通过网址安装

安装中文插件

从网址安装:https://github.com/VinsonLaro/stable-diffusion-webui-chinese 安装后点击installed选项卡点击apply and restart UI重启webui,重新进入页面后点击ssttings-userinterface-Localization设置为中文,设置应用并重启webui就可以看到中文界面了。可以通过sd-webui-bilingual-localization插件中英双语显示。

sd-webui-controlnet插件

sd-webui-controlnet插件是一个功能强大的基础扩展,它允许用户通过各种方式对生成的图像进行精确控制。

大模型文件

Stable Diffusion推荐的模型下载源:

  • • Hugging Face:一个流行的AI模型分享平台,Stable Diffusion背后的许多工具如Transformer、Tokenizers、Datasets都是由Hugging Face开发的。用户可以通过Hugging Face下载Stable Diffusion的官方模型和其他衍生模型。

  • • Civitai:一个专门用于分享Stable Diffusion相关资源的网站,它以模型示范缩略图和用户分享的提示词为特色。请注意,Civitai可能包含未成年不宜的图像,因此需要用户自行判断内容的适宜性。

  • • LiblibAI:国内的网站,提供了一些Stable Diffusion模型的下载,但要注意版权和合规性问题。

  • • 哩布哩布 (liblib.ai):国内可下载Stable Diffusion模型的站点,提供了多种类型的模型。

  • • GitHub:有时开发者会在GitHub上分享他们的Stable Diffusion模型,例如Stability-AI/stablediffusion和CompVis/stable-diffusion。

模型文件存放路径

Stable Diffusion的模型文件通常需要放置在特定的文件夹中,以便程序能够正确加载和使用它们。根据不同的模型类型,放置的路径可能会有所不同。

模型名称介绍路径
Checkpoint这是Stable Diffusion绘图的基础模型,常见文件大小:2G-7G。文件扩展名通常为.ckpt或.safetensors放在程序主目录下models/Stable-diffusion目录中。
LoRA微调模型,用于固定某一类型的人物或事物的风格,在数据相似度非常高的情形下,lora模型更加轻巧,训练效率也更高,可以节省大量的训练时间和训练资源。文件扩展名一般为 .ckpt、.safetensors 或 .pt放在程序主目录下models/Lora 目录中。
VAE中文叫变分自编码器,全名Variational autoenconder,VAE一般用于美化图片的色彩和细节微调,主要功能是滤镜和微调;滤镜就像是剪映、美图秀秀、PS等软件用到的滤镜一样,让图片的画面看上整体色彩饱和清晰度更高;微调就是对出图的部分细节进行细微调整。文件扩展名通常为.ckpt、.pt或.safetensors,常见文件大小:100MB-800MB放在程序主目录下models/VAE目录中
Embedding一种嵌入式模型,属于微调模型,Embedding模型的主要作用是文本反转,调教文本理解能力、用于个性化图像生成。文件扩展名通常为.pt,常见文件大小:几十KB放在程序主目录下embeddings目录中
Hypernetwork一个超网络模型。Hypernetwork模型的主要功能是定制生成图片的画风和风格。通过使用Hypernetwork模型,可以对生成的图片进行更加细致的风格调整和定制化处理。文件扩展名通常为.pt放在程序主目录下models/hypernetworks目录中
Controlnet用于控制Stable Diffusion图像生成过程的神经网络结构。它通过添加额外的条件来控制扩散模型,使用户能够根据特定的输入(如动作、线条、景深等)更精准地生成图片。ControlNet可以与各种Stable Diffusion模型结合使用,以实现更精细的图像控制和生成效果放在程序主目录下extensions/sd-webui-controlnet/models目录中
LyCORIS微调模型,它们基于LoRA(Low-Rank Adaptation)技术但进行了扩展和优化。LoRA是一种参数高效的微调方法,它通过在模型的特定层中引入低秩矩阵来调整模型的行为,而不需要改变模型的大部分权重。LyCORIS模型继承了LoRA的核心思想,并引入了不同的算法来进一步提升微调的效果和效率放在程序主目录下models/LyCORIS目录中
Aesthetic Gradients美学嵌入,是一种在文本到图像生成任务中用于增强模型个性化和风格化的技术。通过美学嵌入,可以对生成模型进行微调,使其生成的图像具有特定的美学风格特征。作用主要体现在风格定制、特征空间映射、提高生成质量、泛化性放在程序主目录下aesthetic_embeddings目录中
Motion Module实现动画生成。具体来说,Motion Module通过训练学习到的动态特性,可以生成一系列连贯的图像,这些图像可以组合成动画。配合sd-webui-animatediff插件。关键作用:生成连贯动画、个性化动画制作放在程序主目录下extensions/sd-webui-animatediff/model/目录中

懒人一键安装整合包

手动安装虽然麻烦但是还是推荐手动安装,手动安装正统的Stable Diffusion WebUI程序,可以按需按需安装插件,一步步了解Stable Diffusion部署和插件安装过程,出现问题也好查找处理。下面是两个比较有名的已经按安装整合包安装教程

  • • 秋叶一键整合包:https://www.bilibili.com/video/BV17d4y1C73R

  • • 星空一键整合包:https://www.bilibili.com/video/BV1iM4y1y7oA

本文转自 https://mp.weixin.qq.com/s/0AsVGQazXV33jwzX1s2Kzw,如有侵权,请联系删除。


http://www.ppmy.cn/news/1555248.html

相关文章

Azure OpenAI 生成式人工智能白皮书

简介 生成式 AI 成为人工智能领域新的关键词。吸纳从机器智能到机器学习、深度学习的关键技术生成式 AI更进一步,能够根据提示或现有数据创建新的书面、视觉和听觉内容。在此基础上大模型和大模型应用一时涌现,并迅速确立AI落地新范式。据 data.ai inte…

AI绘画探索:通过Stable Diffusion实现角色稳定控制与线稿上色

在角色控制方面,我们都了解到midjourney的局限性,其无法稳定地实现目标控制。然而,Stable Diffusion 提供了出色的可控性,使我们能够有效地弥补这一缺陷。 今天就通过一个简单案例,给大分享如何使用 Stable Diffusion…

MySQL-逻辑架构篇

服务器处理客户端请求 首先MySQL是典型的C/S架构,即Clinet/Server 架构,服务端程序使用的mysqld。 不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果是:客户端进程向服务器进程发送一段文本(SQL语句…

【069】基于51单片机WIFI智能家居【Proteus仿真+Keil程序+报告+原理图】

☆、设计硬件组成:51单片机最小系统WIFI模块DHT11温湿度传感器AT24C02存储芯片LCD1602液晶显示继电器按键电路蜂鸣器LED灯。 1、本设计采用STC89C51/52、AT89C51/52、AT89S51/52单片机作为主控芯片,ESP8266实现WIFI远程数据传输,随时随地在外…

Linux shell的七大功能---输入输出重定向 << >> < >

1、输出定向符 >(覆盖) 命令>文件 以覆盖的形式,将命令正确的输出结果写入进文件 例:“who命令”将当前的Linux服务器系统使用者等信息显示出来 (使用“ Ctrl Alt F mun ”切换到命令行界面&#xff0…

[Oracle]拼接路径——LISTAGG和KEEP的用法

需求: 将以下路径明细 ROUTE_IDORIGINTARGETORDER1AB11BC21CD32AB12BE2 拼接成 ROUTE_IDROUTE1A->B->C->D2A->B->E 效果 分析: 每条路径明细中包含了起点和终点,我们拼接时只需要取每次的起点使用->连接在一起&…

libevent编译(cmake)及测试

前言 一个跨平台网络库 只所以写个,为了以后忘了,这里作为备份吧,都搭好多次了,换个机子搭一次 1:环境 分别在 ubuntu22 与 win10上编译下 libevent(2.1.12) download:https://libevent.org/ openssl(3.4.0) https://…

分支限界笔记

文章目录 概要整体架构流程基本概念分支限界法的定义核心思想 简单问题介绍问题:简单背包问题思考:暴力解法聪明的解法:分支限界法直观理解分支限界法的步骤0-1背包问题问题描述问题建模问题分析1. 定义问题的解空间,确定易于搜索…