StableDiffusion打包 项目迁移 项目分发 0

StableDiffusion项目迁移 0

先看了几个其他人的本地部署文章和视频,对别人的步骤做记录。(写的很潦草,只是注意一下有什么点需要注意)

虽然秋叶大佬有整合包,但是我是为了项目分发学习的,还是想自己配环境。

文章目录

下载

显卡驱动更新:https://www.nvidia.cn/geforce/drivers/

下载安装三个程序:

  1. python3.10.6: https://www.python.org/downloads/release/python-3106/
  2. git: https://git-scm.com/download/win
  3. stable-diffusion webui: https://github.com/AUTOMATIC1111/stable-diffusion-webui

经验1

创建一个单独的文件夹,在程序安装至该文件夹中,文件夹显示内容为:

--python
--git
--stable-diffusion-webui-版本号
这三个都是文件夹,里面的内容就是一堆小文件

然后进入文件夹stable-diffusion-webui,编辑webui.bat,添加set COMMANDLINE_ARGS=--no-gradio-queue内容。

科学上网,运行webui.bat,这是它会自动帮我们下载所需要的依赖包,例如torch等等。

如果下载的过程中出现紫色的notice需要更新pip,那么复制它的代码,在cmd中运行即可。

更新完成后,修改文件夹名称(将版本号去掉),再运行webui.bat。就能用了。

总结:

  1. 显卡驱动更新后,再下载三个东西

  2. 有了python环境后,之后的所有依赖包在第一次运行webui.bat时都已经帮我们配好了,自动下载到.\python\Lib\site-package中了,很方便。

  3. 适当修改bat,环境应该是可以直接迁移的,下次试试。

  4. 看了很多配环境和打包环境的视频,总的思路是,所有依赖包在python文件夹下,这个python文件夹就是一个环境。然后安装完后检测版本,也就是看依赖包是否可用。然后写脚本文件用来声明一些依赖包的环境变量,都是用的相对路径。

    把配好的python文件夹移动到某个项目的根目录下;或者在根目录下创建python文件夹,在cmd中运行该文件夹下的python.exe,并用项目给出的requestment配环境。例如.\env_name\python.exe -m pip install -r requestment.txt

    python用的应该是相对路径。

bilibili地址

经验2

官方的快速启动:

视频思路:

# 先安装一个python环境
conda create-n python311_cuda118 python=3.11
# 安装cuda
conda install nvidia/label/cuda-11.8.0::cuda-toolkit
# 安装cudnn
conda install cudnn
# 下载webui并解压
# 将整个环境文件拷贝到项目根目录下
# 用该环境中的python安装依赖
.\runtime\python.exe -m pip install -r requirements.txt
# 安装torch三件套
.\runtime\python.exe -m pip install torch torchvision torchaudio -index-url https://download.pytorch.org/whl/cu118
# 安装onnxruntime-gpu
.\runtime\python.exe -m pip install onnxruntime-gpu

# 编写脚本,检测软件脚本
torch
import torch
print("cudnn版本:",torch.backends.cudnn.version())
print("torch版木:",torch.__version__)
print("cuda版本:",torch.version.cuda)
print("gpu是否可用",torch.cuda.is_available())
# 运行脚本,检测是否可用
.\runtime\python.exe check_env.py

# 编写脚本,检测onnxruntime
import onnxruntime as ort
def gpu_diagnostics():
	print(ort.get_available_providers())
if__name__ == "__main__"
	gpu_diagnostics()
# 检测onnxruntime
.\runtime\python.exe check_back.py

声明入口:

经验3

1

# conda创建环境,并下载python310环境
conda create -n envname python=3.10
# 激活环境
conda activate envname
# 下载pytorch,自带cuda。最后的-c是指定渠道
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
# 安装完后,进行检验,命令行输入:
python
torch.__version__
touch.cuda.is_available()
exit()
# 安装相关依赖
pip install -r requirements_versions.txt
# 标红的包需要独立安装(ipython)
pip install ipython
# 安装xformer,加速绘图的一个包,注意版本匹配
pip install -U xformers --index-url https://download.py ytorch.org/whl/cu121

(在pytorch官网选择安装命令后,pytorch自动先帮我们安装cuda。所以不需要再麻烦的先安装cuda)

2 配置webui-user.bat文件,复制对应的文件地址即可,用的是绝对路径。

@echo off
set PYTHON=D:\sd-webui\python\python.exe %python可执行文件地址%
set GIT=D:\sd-webui\Git\bin\git.exe
set VENV DIR=\sd-webui\python %python目录地址%
set COMMANDLINE ARGS=--xformers
call webui.bat

3 配置webui.bat文件:

打开文件,查找Scripts,然后删掉前面的路径。其他地方也是一样的。(因为我们的python.exe不在这个目录里,所以需要删掉)

删除这一行:(call 命令用于调用另一个批处理文件,并在被调用的批处理文件执行完毕后返回到当前脚本继续执行后续命令。)

4 安装clip标签生成器(插件):

pip install ftfy regex tqdm
pip install git+https://github.com/openai/CLIP.git

5 运行webui-user.bat脚本文件。首次运行会下次其他小东西,并且会下载一个底模。

(底模没下载成功不要紧,不影响ui界面启动。后续自己下就可以,这就涉及到SD的学习了,能启动就不要紧。)

经验4

安装完依赖包之后,要先将python的环境变量设置到webui-user.bat

需要配置启动参数

set COMMANDLINE ARGS=--xformers --no-gradio-queue --lowvram --precision full --no-half

xformers是加速生图的

--no-gradio-queue,可以连接上网络了

-lowvram --precision full --no-half:gpu生图,不然就是cpu

经验5

秋叶大佬启动器中的webui-user.txt和webui.bat没动。

相关推荐
LittleNyima1 天前
【代码解读】阿里最新开源视频生成模型 Wan 2.1 实现解析
人工智能·stable diffusion·aigc·音视频
AIGC安琪1 天前
AI绘画(Stable Diffusion)喂饭级教程
人工智能·ai作画·stable diffusion·aigc·美女
乱世刀疤1 天前
AI绘画软件Stable Diffusion详解教程(2):Windows系统本地化部署操作方法(专业版)
ai作画·stable diffusion
Donvink2 天前
【AIGC系列】3:Stable Diffusion模型介绍
人工智能·深度学习·语言模型·stable diffusion·aigc·transformer
PeterClerk3 天前
AIGC-Stable Diffusion模型介绍
图像处理·人工智能·python·自然语言处理·stable diffusion·aigc
农夫山泉2号5 天前
【个人开源】——从零开始在高通手机上部署sd(二)
stable diffusion·智能手机·sd·高通·qnn
后知后觉5 天前
windows 安装 stable diffusion
stable diffusion
农夫山泉2号6 天前
【个人开源】——从零开始在高通手机上部署sd(一)
stable diffusion·智能手机·sd·高通·qnn
AIGC安琪7 天前
【Stable Diffusion】SD迎来动画革命,AnimateDiff快速出图
人工智能·网络协议·tcp/ip·stable diffusion·aigc