如何自己搭建一个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” />

    • 不过我不是新用户了,因此选择购买 网址: https://buy.cloud.tencent.com/cvm?tab=custom&step=1&devPayMode=monthly&regionId=1&zoneId=100003&teQmplateCreateMode=createLt。

    • 记得选择GPU机型 ,如果资金不足推荐选择竞价实例(就是有可能会被自动释放,但是推荐购买,因为配置高还便宜,但是腾讯云竞价实例不能关机后不收费,而阿里云可以关机后不收费)

    • 如果是按量计费(有关机不收费功能)选第8.68那款就好了,如果是竞价实例就看自己需求,至少要有单独的一张卡,别到后面因为配置原因跑不了图

    • 依旧选择自动安装gpu驱动(会节约很多时间),如果想体验手动安装的感觉可以参照 : https://cloud.tencent.com/developer/article/2073793

    • 选择新建安全组,全部勾上,并且在下面设置密码,然后勾选协议开通就好了 (需要有一定余额,十来块二十块钱就OK了)

    • 进入自己的实例然后登录就OK了

    • 安装对应环境以及配置

      • 登录服务器

    • 执行以下命令

    # 到根目录下的home目录下cd /home# 安装gitsudo apt install git# 克隆对应的项目git config --global --get http.proxygit 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.confsudo 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