【AI绘画】免费GPU Tesla A100 32G算力部署Stable Diffusion
免责声明
在阅读和实践本文提供的内容之前,请注意以下免责声明:
-
侵权问题: 本文提供的信息仅供学习参考,不用做任何商业用途,如造成侵权,请私信我,我会立即删除,作者不对读者因使用本文所述方法而导致的任何损失或损害负责。
-
信息准确性: 本文提供的信息可能随时更改,作者不保证文中所述方法在未来的软件更新中仍然有效。
-
个人风险: 读者在按照本文提供的方法操作时,应该自行承担风险。作者不对读者因使用本文所述方法而导致的任何损失或损害负责。
-
软件兼容性: 本文中提到的软件版本和兼容性可能会受到变化。读者应该在实施前查看相关软件的官方文档,以确保使用的软件版本相互兼容。
-
个体差异: 不同的计算机环境、操作系统版本和其他因素可能导致实际操作效果有所不同。读者在实践中可能需要进行适当的调整。
-
建议备份: 在进行重要操作之前,建议读者备份其数据和设置,以防万一发生意外情况。
-
社区支持: 读者如果遇到问题,建议参考相关软件的官方社区或论坛,以获取更多帮助。
文章目录
- 免责声明
- 1. 引言
- 1.1 什么是Stable Diffusion
- 1.2 AI Studio学习与实训社区
- 2. 注册AI Studio账号
- 2.1 通过邀请链接注册
- 2.2 领取免费算力
- 3. 创建Notebook项目
- 3.1 选择基础版
- 3.2 配置环境
- 4. 拉取Stable Diffusion代码
- 5. 更换pip镜像
- 6. 安装依赖
- 6.1 运行安装脚本
- 6.2 解决网络问题
- 7. 内网穿透
- 7.1 ngrok内网穿透
- 7.2 natapp内网穿透(国内速度较快)
- 8. 项目目录结构
- 8.1 插件保存位置
- 8.2 模型保存位置
- 9. 结论
- 9.1 成功部署Stable Diffusion
- 9.2 后续探索
1. 引言
1.1 什么是Stable Diffusion
Stable Diffusion是一个基于深度学习的图像生成工具,它使用扩散模型生成高质量的图像。该项目由AUTOMATIC1111开发并在GitHub上开源。
1.2 AI Studio学习与实训社区
AI Studio是百度推出的一个在线AI学习与实训社区,提供免费的GPU算力支持,用户可以在此平台上进行深度学习的项目开发和部署。
2. 注册AI Studio账号
2.1 通过邀请链接注册
点击以下链接注册AI Studio账号:AI Studio注册链接
2.2 领取免费算力
成功注册账号后,点击“我的创作”,可以领取免费算力。
3. 创建Notebook项目
3.1 选择基础版
点击“创建项目”,选择“Notebook”,然后选择“基础版”。
3.2 配置环境
-
创建一个notebook项目



选择基础版我们先配环境


4. 拉取Stable Diffusion代码
在Notebook中运行以下命令,拉取Stable Diffusion代码:
git clone https://gitclone.com/github.com/AUTOMATIC1111/stable-diffusion-webui.git

5. 更换pip镜像
在Notebook中运行以下命令,更换pip镜像源为阿里云:
mkdir -p ~/.pip
cat <<EOF > ~/.pip/pip.conf
[global]
timeout = 6000
index-url = https://mirrors.aliyun.com/pypi/simple
trusted-host = mirrors.aliyun.com
EOF
如果需要重新生成pip配置文件,可运行以下命令删除原有配置文件:
rm -rf ~/.pip
6. 安装依赖
6.1 运行安装脚本
进入stable-diffusion-webui目录,运行安装脚本:
cd stable-diffusion-webui/
./webui.sh --skip-torch-cuda-test

这里下载可能非常缓慢,你可以点击链接在本地先下载再上传直接安装whl
这里我发现Stable Diffusion同样恰好通过创建虚拟环境得以可配置PyTorch环境,虚拟环境位于stable-diffusion-webui/models/venv
【深度学习】不用Conda在PP飞桨Al Studio三个步骤安装永久PyTorch环境
或者多次Ctrl+Z重试切换到更好的网络

这里已经配置成功,可以看到尝试链接huggingface下载初始模型,由于我们连接不上这个网站,所以会一直卡到超时自动结束,你可以在他指定的文件夹创一个同名空文件暂时替代,或者自行上传模型。
/home/aistudio/stable-diffusion-webui/models/新建一个
v1-5-pruned-emaonly.safetensors

可以看到连接超时后仍然自动运行
6.2 解决网络问题
由于AI Studio的网络环境问题,可能会导致安装过程中下载依赖包很慢或下载失败。可以尝试多次运行安装脚本,或者手动下载依赖包并上传到Notebook中进行安装。
7. 内网穿透
7.1 ngrok内网穿透
https://ngrok.com/

注册获取<your_authtoken>,不能用QQ邮箱注册

在Notebook中运行以下命令,下载并安装ngrok:
wget https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-linux-amd64.tgz
chmod +x ngrok
ngrok config add-authtoken <your_authtoken>
./ngrok http 7860
注意:需要在ngrok官网注册账号并获取authtoken。

通过内网穿透得到的的Forwarding链接,你可以在任何设备上访问这个网址使用Stable Diffusion

7.2 natapp内网穿透(国内速度较快)
在Notebook中运行以下命令,下载并安装natapp:
wget https://cdn.natapp.cn/assets/downloads/clients/2_4_0/natapp_linux_amd64/natapp
注意:需要在natapp官网注册账号并获取配置文件。

natapp要实名认证,提前设置映射端口

Web协议,7860端口

注册购买后获得<your_authtoken>
chmod +x natapp
./natapp -authtoken=<your_authtoken>

通过内网穿透得到的的Forwarding链接,你可以在任何设备上访问这个网址使用Stable Diffusion

8. 项目目录结构
8.1 插件保存位置
Stable Diffusion的插件保存在stable-diffusion-webui/extensions目录下。
8.2 模型保存位置
Stable Diffusion的模型保存在stable-diffusion-webui/models目录下。
我们看一下项目目录

插件保存在这

模型保存在这

9. 结论
9.1 成功部署Stable Diffusion
按照以上步骤,就可以成功在AI Studio上部署Stable Diffusion,并利用免费的Tesla A100 GPU算力进行AI绘画。
9.2 后续探索
在成功部署Stable Diffusion之后,可以尝试使用不同的模型和插件,进行更多的AI绘画创作。同时,也可以结合其他的深度学习技术,进一步提高生成的图像质量。
你可以通过创建数据集、wget、git下载你需要的模型或插件
相关文章:
【AI绘画】免费GPU Tesla A100 32G算力部署Stable Diffusion
免责声明 在阅读和实践本文提供的内容之前,请注意以下免责声明: 侵权问题: 本文提供的信息仅供学习参考,不用做任何商业用途,如造成侵权,请私信我,我会立即删除,作者不对读者因使用本文所述方法…...
JVM(2)
JVM类加载 指的是java进程运行时,需要把.class文件从硬盘加载到内存,并进行一系列校验解析的过程. 核心: .class文件>类对象; 硬盘>内存. 类加载过程 在整个JVM的执行流程中,和程序员关系最密切的就是类加载的过程了,所以我们来看一下类加载的执行流程. 对于一个类…...
青少年CTF擂台挑战赛 2024 #Round 1 Web方向题解 WP 全
EasyMD5 题目描述:php没有难题 考点总结:脑洞题目,不如我出(狗头 只允许两个都上传pdf文件。 文件还不能太大了。burp多次发包发现要求两个pdf内容不一样 不一样时候,提示我们MD5碰撞。 科学计数法绕过 PHP的后门 …...
一文认识蓝牙(验证基于Aduino IDE的ESP32)
1、简介 蓝牙技术是一种无线通信的方式,利用特定频率的波段(2.4GHz-2.485GHz左右),进行电磁波传输,总共有83.5MHz的带宽资源。 1.1、背景 蓝牙(Bluetooth)一词取自于十世纪丹麦国王哈拉尔Haral…...
2W字-35页PDF谈谈自己对QT某些知识点的理解
2W字-35页PDF谈谈自己对QT某些知识点的理解 前言与总结总体知识点的概况一些笔记的概况笔记阅读清单 前言与总结 最近,也在对自己以前做的项目做一个知识点的梳理,发现可能自己以前更多的是用某个控件,以及看官方手册,但是没有更…...
Docker知识点总结
二、Docker基本命令: Docker支持CentOs 6 及以后的版本; CentOs7系统可以直接通过yum进行安装,安装前可以 1、查看一下系统是否已经安装了Docker: yum list installed | grep docker 2、安装docker: yum install docker -y -y 表示自动确认…...
Redis 消息队列:构建消息代理的 4 个简单步骤
消息代理是一种使系统、应用程序和服务能够通信和交换信息的软件。它在正式消息传递协议之间转换消息,并允许相互依赖的服务直接“对话”,即使是用不同语言编写或在不同平台上实现也是如此。在微服务中使用异步通信时,通常会使用消息代理。 消息代理可确保可靠且稳定的通信,…...
kafka三节点集群平滑升级过程指导
一、前言 Apache Kafka作为常用的开源分布式流媒体平台,可以实时发布、订阅、存储和处理数据流,多用于作为消息队列获取实时数据,构建对数据流的变化进行实时反应的应用程序,已被数千家公司用于高性能数据管道、流分析、数据集成和任务关键型…...
Golang 简介与基本语法学习
Go,也被称为 Golang,是一门由 Google 设计的开源编程语言。它旨在提供高效的开发体验,同时具备并发性、内存安全和简洁性。本篇博客将介绍 Golang 的基本语法和一些示例,帮助读者快速入门这门令人着迷的语言。 简介 Go 语言的设…...
深入理解网络通信基本原理和tcp/ip协议
深入理解网络通信基本原理和tcp/ip协议 一、计算机网络体系1,计算机网络体系结构2,网络中数据传输2.1,浏览器中输入一个url的执行流程2.2,数据在网络中是的传输流程 3,三次握手和四次挥手3.1,三次握手3.1.1…...
Jetson系统烧录环境搭建
一 序言 Jetson 系列产品烧录系统的方法一般有两种,一种为使用 NVIDIA 官方提供 的 SDK manager 软件给 Jetson 设备烧录系统(请查看说明文档《Jetson 产品使用 SDKmanager 烧录系统》)。另一种即为当前文档所描述的,在安装 Ubun…...
【MySQL】:约束全解析
🎥 屿小夏 : 个人主页 🔥个人专栏 : MySQL从入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言一. 约束概述二. 约束演示三. 外键约束3.1 介绍3.2 语法3.3 删除/更新行为 &…...
设计一基于Text generation web UI的语言模型部署与远程访问的方案
前言 Text generation web UI可为类ChatGPT的大型语言模型提供能够快速上手的网页界面,不仅可以提高使用效率,还可满足私有化部署,或对模型进行自定义。目前,该Web UI已经支持了许多流行的语言模型,包括LLaMA、llama.…...
大数据概述
学习大数据有什么用? 2010年:大数据技术体系开始在国内火热 2015年:国务院印发《促进大数据发展行动纲要》 2016年:发改委发布关于组织实施促进大数据发展重大工程的通知 2017年:工信部印发大数据产业规划(2016-20…...
Muduo库编译学习(1)
1.muduo库简介 muduo是由Google大佬陈硕开发,是一个基于非阻塞IO和事件驱动的现代C网络库,原生支持one loop per thread这种IO模型,该库只支持Linux系统,网上大佬对其褒贬不一,作为小白用来学习就无可厚非了。 git仓库…...
【研发日记】Matlab/Simulink技能解锁(三)——在Stateflow编辑窗口Debug
文章目录 前言 State断点 Transition断点 条件断点 按State步进 Watch Data Value Sequence Viewer 分析和应用 总结 前言 见《【研发日记】Matlab/Simulink技能解锁(一)——在Simulink编辑窗口Debug》 见《【研发日记】Matlab/Simulink技能解锁(二)——在Function编辑…...
ZYNQ--MIG核配置
文章目录 MIG核配置界面多通道AXI读写DDR3MIG核配置界面 Clock Period: DDR3 芯片运行时钟周期,这个参数的范围和 FPGA 的芯片类型以及具体类型的速度等级有关。本实验选择 1250ps,对应 800M,这是本次实验所采用芯片可选的最大频率。注意这个时钟是 MIG IP 核产生,并输出给…...
MySQL 多表查询 连接查询 内连接
介绍 内连接查询是两张表中交集的部分 连接模式 隐式内连接 SELECT 字段列表 FROM 表1,表2 WHERE 条件显式内连接 SELECT 字段列表 FROM 表1 [INNER] JOIN 表2 ON 连接条件案例 有两张表一个表为学生表,另一个表为班级表,现在需要查询学生时候在查…...
T - SQL使用事务 及 在Winform使用事务
事务适用场景 1 事务使用在存储过程中,直接在数据库中进行编写 2 事务使用在Winfrom项目中 SQl:使用事务转账操作的实例 一般都会找一个变量记录错误的个数,error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义…...
string(三)--实现
大家看了这么久的string了,可能对string的简单实现有兴趣,所以我实现了一个string类的常用接口,大家可以自行查看: 我是分多文件写的: string.h: #pragma once #define _CRT_SECURE_NO_WARNINGS 1 #include <ios…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
