基于CPU的云部署Stable-diffusion-webui的详细过程

tongVSYOUHUO 2024-07-24 17:03:01 阅读 70

最近看到很多很精美的AI图片,也想体验下,正好我有台2vCPU和2G内存轻量云服务器,但是不想再额外买GPU,就想着用CPU模式自己部署,部署经过摸索能顺利完成,但是加载模型已经很吃力,老是提示没有足够内存。本过程主要是用来记录部署的详细过程,仅针对于CPU跑Stable-diffusion-webui。

1、机器配置要求

机器的配置要求主要是针对CPU模式云部署Stable-diffusion-webui。CPU:任何现代AMD或Intel CPU。内存:至少8G内存。存储:这个其实影响不大。显卡: 不影响。系统: centos。

2、配置Python环境
2.1 Miniconda3安装

Miniconda是一款小巧的python环境管理工具,安装包大约只有100M多点,安装程序中包含conda软件包管理器和Python。

下载:

<code>wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

安装:

sh ./Miniconda3-2022.10-Linux-x86_64.sh

配置环境变量:

vim /root/.bashrc

export PATH="/root/miniconda3/bin:$PATH"code>

source /root/.bashrc

环境验证

conda

输入conda回车返回,展示如下图,表示Miniconda3安装。

2.2 环境创建

创建名称为sd的环境,其中python版本为3.10.6

<code>conda create -n sd python=3.10.6

查看Miniconda3所有环境,sd环境已经创建成功。

conda env list

2.3 环境激活

 Miniconda3默认是base环境,激活成功后base变成sd。        

<code>conda activate sd

3、 stable-diffusion-webui安装
3.1 文件下载

使用git拉取文件,进入stable-diffusion-webui目录

<code>git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

cd stable-diffusion-webui

为顺利下载各个依赖文件,在进行部署之前我们先设置下镜像源和github下载设置。如您已经通过特殊途径解决此问题,可不进行配置。

 *镜像源设置 

在部署之前需提前设置镜像源,不然会一直下载失败。 

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

pip config set install.trusted-host mirrors.aliyun.com

提供其他国内可用的镜像源。 

阿里云 http://mirrors.aliyun.com/pypi/simple/

中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

豆瓣(douban) http://pypi.douban.com/simple/

清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/

中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/

*加速github下载

git config --global url."https://ghproxy.com/".insteadOf https://

3.2 参数设置

由于我的云服务器没有GPU,所以需要在执行部署文件前提前设置下参数。进入webui-user.sh文件,在文件开始添加use_venv、can_run_as_root、CUDA_VISIBLE_DEVICES、COMMANDLINE_ARGS参数。

vim webui-user.sh

CUDA_VISIBLE_DEVICES:选择要用于具有多个 GPU 的系统上的实例的 GPU。 例如,如果您想使用辅助 GPU,请输入“1”。我们是基于CPU,设置为-1。

COMMANDLINE_ARGS:主程序的附加命令行参数。

listen 开启监听
enable-insecure-extension-access 开启扩展模块
use-cpu CPU模式
no-half --precision 非半精度
skip-torch-cuda-test 不检查CUDA是否能够正常工作
share 公开

3.3 执行部署

执行webui.sh文件,会进行依赖的文件下载,下载完成就会启动浏览器页面,当看到具体URL时,代表启动成功,可以直接点击进入

<code>./webui.sh

4、模型下载

启动起来的页面中checkpoint中没有模型可以加载,可以通过https://huggingface.co/下载模型文件,不过目前该网站需要特殊渠道,我下载的是v1-5-pruned-emaonly.ckpt文件。模型文件放到Stable-diffusion-webui/models/Stable-diffusion目录中。

5、系统运行
5.1 汉化设置



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。