ATscore

  • 首页
  • 听音乐
  • 科普
  • 冒险岛
  • 声明
  • 关于
  1. 首页
  2. 信息技术
  3. 正文

从零开始部署AI项目,cuda环境到stable-diffusion

2023年5月7日 2157点热度 0人点赞 6条评论

file

部署深度学习AI项目

以stable-diffusion项目为例。
stable-diffusion是目前非常热门的,可本地部署的图片生成AI模型项目。
网上各种一键包满天飞。黑箱式的一键使用,只适合尝鲜,不利于学习。
本文将从零开始,以stable-diffusion项目为例(后称sd),介绍目前(2023年5月),一个深度学习的人工智能项目应该如何部署。

核心问题

对部署项目应该做什么没有概念
访问github缓慢

安装python

需要win10以上系统。
建议安装python-3.10后的版本

安装显卡驱动

nvidia的驱动分为GameReady驱动与Studio驱动。前者主要是针对游戏做了种种性能优化。跑cuda建议使用Studio驱动。

根据cuda版本安装cuda runtime

runtime用白话就是cuda的lib和so库。最好让驱动里的cuda版本与runtime版本相同。
请去寻找安装教程。并不难。下载cuda runtime很慢。毕竟越洋线路,NV也不肯多设服务器。
别忘了还要有cuDNN。

pip安装torch,使用pip清华源

许多人会推荐conda安装,我则不建议使用。anaconda是一个公司。最好不要形成对它的依赖。
pip安装并没有什么困难。同样是一键式的。安装的命令可以去pytorch的官方发布页上找到。
file
安装torch时会遇到官方仓库数据源比较慢的情况,使用清华源绕行。

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

然后再安装

pip install torch ...

安装git程序

下载安装 https://gitforwindows.org/
file

安装stable-diffusion-webui项目

其实现在许多程序,都是以项目的形式发布到了github (一个微软运营的开源代码发布站),如下图。
file
关于git项目结构,以及git常用命令的使用,更多内容请参阅介绍其他科普类文章,此处仅作按需介绍。
在项目主页中,显示了master分支中的文件,下方有项目介绍,建议好好阅读一下。右方红框处是git文件地址,用它就可以获取到项目。
在项目顶层主目录中,执行以下命令,结果如后图所示(图中以d:/test/为主目录示例)

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

file
git就会自动创建一个项目目录stable-diffusion-webui,并将各个文件置于其中。

问题1,怎么知道git clone哪个项目呢?

首先你要对该AI项目有了解。
AI项目分为模型和WEB界面。模型是从数据中训练出来的,使用模型进行生成的过程则叫做推理。
WEB界面是使用模型操作界面,通常使用gradio这个简易的python WEB框架开发的,它的主入口是webui.py。
所以在github中查询stable-diffusion时,会有有以下结果。
file
所以看项目名称,大概就能猜到,叫xxx webui的,大概就是这项目的ui界面。而第二个,大概就是模型相关的了(其实第二个那个模型才是项目的核心)
但是我们这里只选择下载web-ui,而不下载模型。因为现在模型大多发布在huggingface这个网站上。

问题2,我git clone非常慢,还会报错。

仔细看报错内容,是不是connection reset,或者443这类与网络连接有关的错误。
如果是,通常有以下办法。

  1. 反复重试
  2. 使用ghproxy.com等代理进行github加速
  3. 使用一些方法进行加速,但你要知道github本就是可以访问的
  4. 外部下载后同步到本地,我使用这个方法

预部署stable-diffusion-webui

git获取到项目后。经阅读项目介绍,了解了windows下只需要配置webui-user.bat,再运行即可。
其实阅读一下相应代码,了解到它调用webui.bat,安装一系列依赖包,并一键启动。可以说已经非常地“一键式”了。
执行以下命令。
这里我创建一个名为venv的运行环境。

cd d:\test\stable-diffusion-webui
python -m venv venv

右键编辑webui-user.bat,内容如下。保后运行。

@echo off

set PYTHON=python
set GIT=git
set VENV_DIR=D:\test\stable-diffusion-webui\venv
set COMMANDLINE_ARGS=

call webui.bat

启动项目,遇到卡安装包的问题

到这里,你已经离成功非常近了。
同样,你遇到了python安装依赖包,和git clone依赖项目时的网络连接问题。

卡安装gfpgan

例如首先是卡在了安装gfpgan上。
file
先查查gfpgan是什么,无非要么是python包,要么是github项目。
首先去项目的requirements.txt中查,一查就有了。再一步去./venv/Lib/site-packages/下看看,果然没有gfpgan这个目录。由于我们已经设置了清华源,没道理下载不动。不如试试手工下载。
请记的要在对应的python环境下操作。

.\venv\Scripts\activate
pip install gfpgan

然后再试webui-user.bat,果然过了。
file
现在是卡clip,该怎么做不用我说了吧。

.\venv\Scripts\activate
pip install clip

卡安装open_clip

file
按上面方法尝试,得到以下报错。
file
说找不到open_clip这个模块。怪了。搜一下。首先是github上有它,难道它是一个github项目吗。
可是在项目主页里看到它其实也是一个python模块,版本2.19。
file
猜测大概它的模块名不叫open_clip,去pypi上搜一搜,图中的标记就可以直达。
file
好么,叫open-clip-torch。安装,通过。

卡sd-webui插件

继续安装
file
log上写着cloning,大概是一个github项目了。上面也写了项目名称,该项目应该放置的路径。
所以依前面的方法

  1. 在github上查到对应项目,进而查到项目git文件URL
  2. 根据log上的路径提示,去对应文件夹下,执行git clone
  3. 如果遇到卡慢,则参考前面提过的方法
    于是,全部完成!

完成sd-webui的安装

file
看到web ui的URL地址,过程中没有报错,应该就算完成了启动。
图中我使用了其他的文件路径地址,不是前述的test。

下载模型

去huggingface.co上下载模型文件,放置在以下目录

.\stable-diffusion-webui\models\Stable-diffusion\

安装control net插件

应该首先阅读sd-webui的使用大致说明,并探索一下主要功能。
其中注意到可以直接按git文件URL地址直接安装git项目作为插件。
file
但还是很慢。。试着安装,失败。
命令行窗口处会有错误提示,主要是从错误提示中找到插件的文件夹路径,其实我们前面安装时也已经处理过类似问题了。
自己找到插件的git项目地址,然后自己git clone,之后就刷新UI即可。
file

安装control net插件的模型

模型仍然是去huggingface上自己寻找
模型放在以下路径。

.\stable-diffusion-webui-1.1.0\extensions\sd-webui-controlnet\models

但我发现需要对模型做重命名,否则会找不到模型。 如下图。yaml文件是在插件项目中有的,pth文件是从huggingface下载后自己重命名的。
file

完成

通过以上,完成了sd-webui项目在本地的部署。

总结

本文介绍了sd-webui在本地从零开始的部署过程。主要是给出了一个部署AI项目要做哪些工作这么一个感性概念。大体来讲,包括以下环节

  1. 搭建系统级的python与cuda环境
  2. 获取主项目,并在主项目中构建项目python环境
  3. 展开主项目依赖包部署,主项目插件部署
  4. 下载模型
  5. 探索项目
Post Views: 2,184
标签: 暂无
最后更新:2023年5月7日

ATscore

用常识解读世界,用自己的大脑独立思考

点赞
< 上一篇
下一篇 >

文章评论

  • coaliadoswplay

    What stands out the most is how trustworthy the entire setup feels from the very first click. I have tested it across my laptop and phone and the consistency never drops. Promotions refresh regularly and the loyalty tracker keeps a perfect record without any weird glitches. A solid pick for anyone who wants a reliable daily gaming routine that does not compromise on safety or fun. <a href='https://coaliadoswplay.com'>coaliadoswplay</a&gt;

    2026年8月15日
    回复
  • phlviplink

    I am so glad I discovered this hidden gem right here in the Philippines. The VIP program actually rewards loyal players and the daily reloads keep my balance healthy. Mobile performance is flawless and I never have to wait long when I need to reach support. Join the community and start your winning journey at <a href='https://phlviplink.ph'>phlviplink</a&gt;

    2026年8月15日
    回复
  • vnalo789bet

    Hey fellow players, I just stumbled upon this place and the whole experience feels so refreshing. The interface is super clean, games load instantly, and the support team actually replies with a smile. If you want a stress free way to relax after a long day, I highly recommend giving it a shot. <a href='https://vnalo789bet.net'>vnalo789bet</a&gt;

    2026年8月15日
    回复
  • casinocolombiaonline

    Being based here in the region makes finding a reliable spot tricky but this one actually delivers every single time. Fast local banking methods and customer support that truly understands our gaming habits. I feel right at home every time I log in. <a href='https://casinocolombiaonline.co'>casinocolombiaonline</a&gt;

    2026年8月19日
    回复
  • tristanbulcasino

    Traveling never felt so rewarding when I discovered this gem. The VIP program tracks my loyalty perfectly and I get treated like a true guest every single visit. Slot tournaments are exciting and the cashback keeps me coming back. Join <a href='https://tristanbulcasino.com'>tristanbulcasino</a&gt;

    2026年8月19日
    回复
  • plataforma6bbbet

    I used to bounce between different gambling sites but this one finally kept me hooked for good. The live dealer tables look stunning and the croupiers are so friendly. Deposits go through instantly and I never wait long for my cash out requests. Just start playing today and you will see what all the hype is about. <a href='https://plataforma6bbbet.com'>plataforma6bbbet</a&gt;

    2026年8月19日
    回复
  • 取消回复

    文章目录Toggle Table of ContentToggle
    • 部署深度学习AI项目
      • 核心问题
      • 安装python
      • 安装显卡驱动
      • 根据cuda版本安装cuda runtime
      • pip安装torch,使用pip清华源
      • 安装git程序
      • 安装stable-diffusion-webui项目
        • 问题1,怎么知道git clone哪个项目呢?
        • 问题2,我git clone非常慢,还会报错。
      • 预部署stable-diffusion-webui
      • 启动项目,遇到卡安装包的问题
        • 卡安装gfpgan
        • 卡安装open_clip
        • 卡sd-webui插件
      • 完成sd-webui的安装
      • 下载模型
      • 安装control net插件
      • 安装control net插件的模型
      • 完成
      • 总结

    COPYRIGHT © 2022 atscore.cc. ALL RIGHTS RESERVED.

    THEME KRATOS MADE BY VTROIS