如何自己搭建一个ai画图系统? 从0开始云服务器部署novelai
如何自己搭建一个ai画图系统? 从0开始云服务器部署novelai
上面两张图都是通过ai生成的,是不是有以假乱真的感觉。
本教程提供的是自己搭建一个可以外网访问的ai系统的方法,需要采购gpu服务器(后续会出白嫖的方式),并且能够通过外网访问,全程跟着教程走很快就能完成。
服务器的选购
因为我们的ai绘图系统是基于开源项目 stable-diffusion-webui ,因此我们需要采购拥有gpu的服务器,不过一般gpu服务器偏贵,因此可以去不同的云服务产商看看有没有优惠,以下给出两个推荐,现在腾讯云有45块钱15天的优惠,推荐腾讯云。
阿里云
-
阿里云网址: https://www.aliyun.com/
-
推荐选择 按量付费 (可以在不用的时候关掉服务器节约钱) , 对于只是想自己搭建着玩玩的按量付费最划算,不然价格。然后服务器要选择完整带有一颗GPU的,后续驱动安装才能成功。
-
也可以选择抢占式,因为便宜,不过记得随时备份数据
- 一定要选安装gpu驱动,后续会简化很多步骤
- 接下来只要点提交订单(阿里云需要100元的余额才能提交订单),等服务器创建成功就ok了
- 服务器创建成功后,进入 控制台 找到自己刚才创建的服务器进入
- 服务器首次使用记得 重置密码,重置后远程连接进入控制台
腾讯云
- https://cloud.tencent.com/act/free/personal?from=17591 进入网页,选择计算,新用户免费体验七天
-
不过我不是新用户了,因此选择购买 网址: https://buy.cloud.tencent.com/cvm?tab=custom&step=1&devPayMode=monthly®ionId=1&zoneId=100003&teQmplateCreateMode=createLt。
-
记得选择GPU机型 ,如果资金不足推荐选择竞价实例(就是有可能会被自动释放,但是推荐购买,因为配置高还便宜,但是腾讯云竞价实例不能关机后不收费,而阿里云可以关机后不收费)
-
-
-
如果是按量计费(有关机不收费功能)选第8.68那款就好了,如果是竞价实例就看自己需求,至少要有单独的一张卡,别到后面因为配置原因跑不了图
-
-
依旧选择自动安装gpu驱动(会节约很多时间),如果想体验手动安装的感觉可以参照 : https://cloud.tencent.com/developer/article/2073793
-
-
选择新建安全组,全部勾上,并且在下面设置密码,然后勾选协议开通就好了 (需要有一定余额,十来块二十块钱就OK了)
-
-
进入自己的实例然后登录就OK了
-
安装对应环境以及配置
- 登录服务器
-
-
执行以下命令
# 到根目录下的home目录下
cd /home
# 安装git
sudo apt install git
# 克隆对应的项目
git config --global --get http.proxy
git config --global --get https.proxy
# 如果clone 时卡住不动可以 ctrl + c 退出再重新输入命令
sudo git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
# 进入项目的目录
cd stable-diffusion-webui
# 安装对应依赖,使用阿里的镜像源,可能安装时间比较久,如果报错重新输入下面命令一遍就好
sudo pip install -r requirements_versions.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
- 配置nginx外网访问,安装nginx
# 输入以下命令会要你选择Y/N 输入Y回车就好
sudo apt install nginx
- 修改配置文件 先删除 ,然后创建一个 将以下内容复制
sudo rm /etc/nginx/nginx.conf
sudo vim /etc/nginx/nginx.conf
## 按下 i ,进入编辑模式
## 复制以下内容
worker_processes 1;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;server {listen 80;server_name localhost;location / {proxy_pass http://127.0.0.1:6006/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
}
-
然后按ecs + : + eq 退出vim模式并保存
-
启动nginx 执行命令 : sudo service nginx start -c /etc/nginx/nginx.conf
-
依赖安装完成后运行webui(首次输入运行命令可能需要安装很多依赖以及包,需要一些时间,报错后重新运行即可,或者参考后面可能遇到的错误) ,出现 Running on local URL ***** 就是启动完成了
sudo python launch.py --listen --port 6006
- 然后在你的网页输入你的ip地址
载入模型
不同的模型所生成的效果是不一样的
-
模型放置位置 /home/stable-diffusion-webui/models/Stable-diffusion
-
模型网站 https://civitai.com/ (可能需要魔法才能进入,因此我在公众号 杂货猿 提供了对应的安装包,回复 ai绘画模型 即可获得)
具体操作
- 先执行以下命令
# 给目录用户的权限
sudo chmod 777 /home/stable-diffusion-webui/models/Stable-diffusion
- 上传我给的 safetensors 结尾的文件 到 /home/stable-diffusion-webui/models/Stable-diffusion
- 使用软件XFTP(公众号回复XFTP),因为文件较大,腾讯云自带工具无法上传。打开后主机输入自己的ip地址,用户名 ubuntu 密码就是服务器设置的密码.
- 直接拖拽到对应目录
- 如果上传速度较慢可以尝试 sudo curl -Lo chilloutmix_NiPrunedFp32.safetensors https://civitai.com/api/download/models/11745 后面链接对应civitai 的模型下载地址,这个链接为chilloutmimx的模型
-
Lora 模型 放在models/Lora 文件夹下,lora的添加,点击生成图片下的人形照片按钮,选择lora,选择我们刚才下载的lora ,如下图
- KoreanDolllikeness模型 sudo curl -Lo KoreanDolllikeness.safetensors https://civitai.com/api/download/models/14014
- grapefruit生成动漫人物 sudo curl -Lo grapefruit.safetensors https://civitai.com/api/download/models/9000
-
vae放在 放在models/VAE 文件夹下 ,使用在webui面板的设置中 setting -> Stable Diffusion -> SD VAE 选择我们刚才下载的vae ,然后选择 apply setting
- 下载命令 sudo curl -Lo vae-ft-mse-840000-ema-pruned.safetensors https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors
-
上传后重新运行webui,需要加载一些东西
- 下载完成出现 Running 。。。
- 打开网页,修改右上角的模型,输入关键字生成图片(一定要输英文的关键字)
可能遇到的错误
1. PermissionError: [Errno 13] Permission denied: ‘INSTALLER’
- 命令前没有加 sudo
2.ImportError: cannot import name ‘soft_unicode’ from ‘markupsafe’ (/usr/local/lib/python3.8/dist-packages/markupsafe/init.py)
- 卸载 sudo pip uninstall markupsafe
相关文章:

如何自己搭建一个ai画图系统? 从0开始云服务器部署novelai
如何自己搭建一个ai画图系统? 从0开始云服务器部署novelai 上面两张图都是通过ai生成的,是不是有以假乱真的感觉。 本教程提供的是自己搭建一个可以外网访问的ai系统的方法,需要采购gpu服务器(后续会出白嫖的方式)&…...
SpringSecurity过滤请求导致的系统bug
背景 今天开发一个新的会员管理系统,继承了SpringSecurity的,用以控制权限。结果无论怎么配置,都会报错:An Authentication object was not found in the SecurityContext 这句话的意思很明确:指的就是在SecurityCon…...
css\js\vue知识点
1.css3新特性 css3新特性 1)选择器 2)阴影 3)形状转换(2D <-> 3D) 4)变形 5)动画(过渡动画、帧动画) 6)边框 7)多重背景 8)反…...
在vue项目中使用video.js实现视频播放和视频进度条打点
一、用video.js实现视频播放 1、安装video.js插件 // 安装video.js插件 npm install video.js -S // 如果需要播放rtmp直播流,需安装一下插件 npm install videojs-flash -S 2、在组件代码里使用 <template><div data-vjs-player><video ref&quo…...
【代码训练营】day41 | 01背包问题 416. 分割等和子集
所用代码 java 01背包理论 背包最大重量为:4 重量价值物品0115物品1320物品2430 暴力:O(2^n) 动态规划: 1、二维dp数组 dp[i] [j] dp数组含义:[0, i]物品,任取放进容量为j的背包里的最大价值 递推公式:…...

linux网络编程-多进程实现TCP并发服务器
服务端流程步骤socket函数创建监听套接字lfdbind函数将监听套接字绑定ip和端口listen函数设置服务器为被动监听状态,同时创建一条未完成连接队列(没走完tcp三次握手流程的连接),和一条已完成连接队列(已完成tcp三次握手…...

C语言的学习小结——数组
一、一维数组的创建与初始化 1、格式: type_t arr_name[const_n];//type_t 是指数组的元素类型 //const_n 是一个常量表达式,用来指定数组的大小 注: 数组是使用下标来访问的,下标从0开始。 数组的大小可以通过计算得到&…...

HTB-Photobomb
HTB-Photobomb信息收集开机提权对于问题的思考信息收集 端口扫描 目标首页 有一个http Authorization 目录扫描 在查看源码的时候发现了一个js文件。 并且发现了访问不存在的目录会出现错误提示。 通过搜索得知 Sinatra 是一个基于 Ruby 语言的 DSL(领域…...

【LSTM】2 多因素单步骤预测
基于时间序列的预测,一定要明白它的原理,不是工作原理,而是工程落地原因。 基于时间序列,以已知回归未知----这两句话是分量很重的。 多因素单步单输出组合 时间序列:t1 是 特征 1,2,3 预测t2 的回归值41 多因素单步多…...

ChatGPT从下游应用“火”到了上游芯片厂,国内谁将受益?
因库存陷入低迷周期的半导体市场近日因ChatGPT的火热而重新受到外界关注。 原文链接:ChatGPT从下游应用“火”到了上游芯片厂,国内谁将受益? 由于ChatGPT属于生成式AI,被誉为“AI芯片”第一股的英伟达应声而涨。2月13日收盘&#…...
算法单调栈—Java版
单调栈 概念:维护栈中元素的单调性,单调增或者单调减。 什么时候用? 要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置。单调栈的本质是空间换时间,在遍历的过程中需要用一个栈来记录右边第一个比当前元素高的元…...

在Linux中进行rocketmq及rocketmq控制台安装与配置
rocketmq下载安装的版本:rocketmq-rocketmq-all-5.0.0.tar.gz rocketmq控制台下载安装的版本:rocketmq-externals-rocketmq-console-1.0.0.tar.gz rocketmq安装 第一步,下载server-jre-8u202-linux-x64.tar.gz安装包。 登录网址ÿ…...
2023年全国最新食品安全管理员精选真题及答案4
百分百题库提供食品安全管理员考试试题、食品安全员考试预测题、食品安全管理员考试真题、食品安全员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 31.国家对食品添加剂生产实行____制度。 A.产品注册 B.产品备案 C.登…...
es-07脚本查询
脚本查询 概念 Scripting是Elasticsearch支持的一种专门用于复杂场景下支持自定义编程的强大的脚本功能,ES支持多种脚本语言,如painless,其语法类似于Java,也有注释、关键字、类型、变量、函数等,其就要相对于其他脚本高出几倍的性…...

JM员工福利与健康平台,企业关怀Always Online
庄信万丰(Johnson Matthey, JM),全球性专用化学品公司,是可持续发展技术的全球领导者。在30多个国家和地区拥有13000多名员工。 JM的价值观之一是保护人类和地球。在生产过程中,JM保持对环境保护和能源清洁的高度关注;在员工福利…...

如何使用U-Mail搭建企业邮件服务器?
在当今的信息时代,企业也应该跟上时代的步伐。做好企业信息化建设,对企业事业单位尤为重要。电子邮件作为企业信息化过程中的重要组成部分,在企业内部沟通和外部沟通中发挥着重要作用。目前,有实力的企业已经开始倾向于自己搭建邮…...

用规则来搭建团队:写周报不一定是坏事
你好,我是Smile,一位有二十年工作经验的技术专家。今天我会结合我的经历,和你聊聊搭建技术团队这个话题。 众所周知,技术团队很大程度上决定了一个公司业务的生命力和生命周期,因此技术团队的投入成本往往很高&#x…...
Apollo使用方法
Apollo使用方法1.Apollo相关原理1.Apollo启动方法1.1 软件包方式1.2 脚本方式2.播放数据包2.1 软件包方式2.2 脚本方式3.试验planning模块4.从官网下载场景集其他工具1.Apollo相关原理 cyber / mainboard / mainboard.cc 是Apollo入口 cyber / mainboard / module_argument.cc…...

科研快讯 | 14篇论文被信号处理领域顶级国际会议ICASSP录用
ICASSP 2023 近日,2023年IEEE声学、语音与信号处理国际会议(2023 IEEE International Conference on Acoustics, Speech, and Signal Processing,ICASSP 2023)发布录用通知,清华大学人机语音交互实验室(TH…...

设计模式—策略(Strategy)模式
一、概述策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化使用策略模式可以把行为和环境分割开来。环境类负责维持和查询行为类,…...

linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...

P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...