无需翻墙|Stable Diffusion WebUI 安装|AI绘画

前言

最近终于有机会从围墙里往外看,了解到外面的世界已经有了天翻地覆的变化,感叹万千,笔者在本地mac,windows,linux,docker部署了不下20遍后,整理出来的linux极简避坑安装方案,供大家参考学习。

系统:linux

用户:py

python:3.10

涉及工具:wget、miniconda、git

Stable Diffusion WebUI简称:webui

安装目录:/data/

github地址

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

安装

miniconda

由于stable-diffusion-webui的安装需要特定的python版本,所以使用工具管理python库,且由于Anaconda过于臃肿,所以选择miniconda

# 安装wget工具,确保可以使用下载功能
yum install -y wget

# 安装miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

# 执行权限
chmod +x Miniconda3-latest-Linux-x86_64.sh

# 新建用户 py   ## 由于webui默认不允许root用户执行,且新建用户更好的管理python
useradd py

# 新建目录
/data

# 将安装脚本移动到/data,方便管理
mv Miniconda3-latest-Linux-x86_64.sh /data/

#将data目录授权给py
chown -R py:py /data

# 安装miniconda
# 切换用户
su - py    
cd /data
./Miniconda3-latest-Linux-x86_64.sh

##遇到输入写yes,其他按回车,安装完成

#安装完成后,默认没有(base)前缀,是环境还未生效,需要手动source
source /home/py/.bashrc

# 就会发现控制台由
[py@localhost ~]$
#变成了
(base) [py@localhost ~]$
# miniconda 安装完成

python 环境

# 使用conda 安装webui需要使用的环境
conda create --name sd python=3.10

# 使用sd环境,后续操作都在sd环境执行
conda activate sd 
#控制台变为
(sd) [py@localhost ~]$

# 设置pip的阿里镜像源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com

git

# 安装 git ,由于conda 可以安装工具,所以直接使用conda
conda install -y git

stable-diffusion-webui

# 下载github源码
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

# 启动
cd stable-diffusion-webui
./webui.sh

############该操作会执行较久的时间,来下载依赖,如遇到github依赖下载失败,多执行几遍,github网站在国内不算限制访问####


# 启动以后,如果程序没有发现已存在的模型,则会自动下载模型,该操作访问的是外网,所以需要手动下载模型,放到
# 模型所在的位置 
/data/stable-diffusion-webui/models/Stable-diffusion/

# 这里上传了一个`dreamshaper_8`的模型,供大家在内网使用,见文章最后


# 内网启动会遇到如下报错,由于 https://huggingface.co/ 国内访问不了,所以有个依赖下载失败,该资源也提供下载,见文章最后
`OSError: Can't load tokenizer for 'openai/clip-vit-large-patch14'. If you were trying to load it from 'https://huggingface.co/models', make sure you don't have a local directory with the same name. Otherwise, make sure 'openai/clip-vit-large-patch14' is the correct path to a directory containing all relevant files for a CLIPTokenizer tokenizer.`

#下载该资源放到任意路径,本文放置/data/stable-diffusion-webui/下,/huggingface/transformers为资源内部目录
#调整报错的脚本
# /data/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/modules/encoders/modules.py
openai/clip-vit-large-patch14
替换为
/data/stable-diffusion-webui/huggingface/transformers


################################
#最终启动
./webui.sh --skip-torch-cuda-test --no-half --use-cpu interrogate --listen --port 1111

#--skip-torch-cuda-test 没有显卡,跳过检查,不然起不来
#--no-half 降低精度,减少资源使用,不然起不来
#--use-cpu interrogate cpu的使用策略,可选 all
#--listen 该参数不加的话,只能本地访问,添加该参数,可以在其他客户端访问
#--port 指定端口,默认7860


web页面

默认是英文,本页面是安装了中文插件
https://github.com/VinsonLaro/stable-diffusion-webui-chinese.git

在这里插入图片描述
在这里插入图片描述

简单使用

输入提示词 1girl
在这里插入图片描述
在这里插入图片描述

模型下载地址:https://civitai.com/

dreamshaper_8模型下载|openai/clip-vit-large-patch14资源下载:
由于文件最大只能上传1000M,所以拆分成了多个文件:
dreamshaper_8:
Stable Diffusion WebUI -模型&依赖-001
Stable Diffusion WebUI -模型&依赖-002
Stable Diffusion WebUI -模型&依赖-003
huggingface|clip-vit-large-patch14:
Stable Diffusion WebUI -模型&依赖-004
Stable Diffusion WebUI -模型&依赖-005
Stable Diffusion WebUI -模型&依赖-006
每个小块挂了1个积分,来抵消上传的流量费-_-,没有积分的同学可以私我

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[Angular] 笔记 19:路由参数

油管视频 Route Parameters 路由参数是跟在 url 后面的数字,字符串,或者 数字字符串,例如如下 url 中的 123,此类参数会传给后端: www.facebook.com/profile/123 首先将 pokemon-template-form 组件移到 pokeman-ba…

Unity Meta Quest 一体机开发(十二):【手势追踪】Poke 交互 - 用手指点击由 3D 物体制作的 UI 按钮

文章目录 📕教程说明📕给玩家配置 HandPokeInteractor📕用 3D 物体制作可以被点击的 UI 按钮⭐搭建物体层级⭐给物体添加脚本⭐为脚本变量赋值 📕模仿官方样例按钮的样式📕在按钮上添加文字📕修改按钮图片 …

计算机网络 VLAN

路由器将多个局域网连接起来,而交换机将一个局域网里的设备连接起来。 路由器的端口分配局域网的网段(子网网段),局域网的内部设备的ip都在这个网段里,再由交换机将数据派发到目的设备,交换机是按照MAC地址…

【Spark精讲】一文讲透SparkSQL物理执行计划

SparkSQL整体计划生成流程 大体分三步: (1)由 SparkSqlParser 中的 AstBuilder执行节点访问,将语法树的各种Context节点转换成对应的 LogicalPlan 节点,从而成为一棵未解析的逻辑算子树(Unresolved LogicalPlan),此时的逻辑算子树…

k8s之kudeadm

kubeadm来快速的搭建一个k8s的集群: 二进制搭建适合大集群,50台以上主机 kubeadm更适合中小企业的业务集群 master:192.168.233.91 docker kubelet lubeadm kubectl flannel node1:192.168.233.92 docker kubelet lubeadm kubectl flannel…

vscode连接linux服务器

目录 下载vscode,这是微软开源软件,打开后到下载扩展页面 在下载扩展页面下载中文和ssh远程连接扩展 安装后会在左边新生成一个图标点击齿轮 选择第一个 配置连接信息 远程隧道右边刷新,等刷出来hostname的主机后 连接ip出来后&#x…

EasyNTS端口穿透服务新版本发布 0.8.7 增加隧道流量总数记录,可以知晓设备哪个端口耗费流量了

EasyNTS上云平台可通过远程访问内网应用,包含网络桥接、云端运维、视频直播等功能,极大地解决了现场无固定IP、端口不开放、系统权限不开放等问题。平台可提供一站式上云服务,提供直播上云、设备上云、业务上云、运维上云服务,承上…

云计算:OpenStack 配置云主机实例的存储挂载并实现外网互通

目录 一、实验 1. 环境 2.配置存储挂载 3.云主机实例连接外部网络(SNAT) 4.外部网络连接云主机实例(DNAT) 二、问题 1.云主机 ping 不通外部网络 2.nova list 查看云主机列表报错 3.nova list 与 virsh list --all有何区…

jvm实战之-常用jvm命令的使用

各命令的使用 JMAP 1、查看内存信息,对象实例数、对象占有大小 jmap -histo 进程号>./log.txt2、查看堆的配置信息和使用情况 jmap - heap 进程号3、将堆的快照信息dump下来,使用java自带的jvisualvm.exe打开分析 jmap -dump:formatb,filedump.h…

安装Windows版本沐神的autocut

参考 下载完autocut以后 1 下载ffmpeg

楼宇智慧能源消耗监测管理系统,楼宇中的能源“管家”

随着人口的增加,楼宇数据呈上涨趋势,但是楼宇智能建设在我国普及性远远不足,相比传统楼宇控制,智能楼宇控制系统对于楼宇内部的用电设备控制,能够更加的节约能源,降低成本。对于现代化楼宇而言,…

SVM(支持向量机)-机器学习

支持向量机(Support Vector Machine,SVM)是一种用于分类和回归分析的监督学习算法。它属于机器学习中的一类强大而灵活的模型,广泛应用于模式识别、图像分类、自然语言处理等领域。 基本原理: SVM的基本原理是通过找到能够有效分…

o2o生活通全开源尊享版+多城市切换+企业付款+交友IM+平台快报

搭建教程 1.把 pigo2ov282.sql 文件里面的网址 test.souho.net 全部批量替换为你的自己的 2.使用 phpmyadmin 导入 pigo2ov282.sql 到你的数据库(直接访问/phpmyadmin 即可) 3.修改数据库文件/conf/db.php 里的数据库连接信息(请勿使用记事本…

数据结构入门到入土——ArrayList与顺序表

目录 一,线性表 二,顺序表 1.接口实现 三,ArrayList简介 四,ArrayList使用 1.ArrayList的构造 2.ArrayList常见操作 3.ArrayList的遍历 4.ArrayList的扩容机制 五,ArrayLisit的具体使用 杨辉三角 一&#x…

如何使用ArcGIS Pro自动矢量化建筑

相信你在使用ArcGIS Pro的时候已经发现了一个问题,那就是ArcGIS Pro没有ArcScan,在ArcGIS Pro中,Esri确实已经移除了ArcScan,没有了ArcScan我们如何自动矢量化地图,从地图中提取建筑等要素呢,这里为大家介绍…

SparkStreaming_window_sparksql_reids

1.5 window 滚动窗口滑动窗口 window操作就是窗口函数。Spark Streaming提供了滑动窗口操作的支持,从而让我们可以对一个滑动窗口内的数据执行计算操作。每次掉落在窗口内的RDD的数据,会被聚合起来执行计算操作,然后生成的RDD,会…

【Redis交响乐】Redis中的通用命令

文章目录 1. 基本命令 get set2. 全局命令(1)keys(2)exists(3)del(4)expire && ttl面试题: redis中key的过期策略是怎么实现的?定时器的实现原理(1)基于优先级队列/堆(2)基于时间轮实现的定时器 (5) type 我们知道,redis是按照键值对的方式存储数据的. Redis中基本的命…

pytest pytest-emoji通过表情包展示执行状态

pytest-emoji 是一个用于在 Pytest 测试运行期间显示 emoji 表情的插件。它可以为测试结果添加一些有趣的表情符号,以增加测试报告的可读性和趣味性。 使用 pytest-emoji 插件非常简单,只需按照以下步骤进行操作: 首先,确保已经安…

python实现图像的二维傅里叶变换——冈萨雷斯数字图像处理

原理 二维傅里叶变换是一种在图像处理中常用的数学工具,它将图像从空间域(我们通常看到的像素排列)转换到频率域。这种变换揭示了图像的频率成分,有助于进行各种图像分析和处理,如滤波、图像增强、边缘检测等。 在数学…

Glary Utilities Pro - 电脑系统优化全面指南:详尽使用教程

软件简介: Glary Utilities Pro 是一款全面的电脑优化工具,它旨在帮助用户提升计算机的性能和稳定性。这款软件提供了多种功能,包括系统清理、优化、修复以及保护。通过一键扫描,它可以识别并清除无用文件、临时数据、注册表错误等…