Skip to content
在这一页上

安装 NovelAI 原版后端

详见此教程: NovelAI 原版网页UI+后端部署教程

硬件需求

一台拥有一张至少有 11G 显存的 NVIDIA GPU 的 Linux 系统的 x86 设备。

建议显存低于 24G 不要尝试使用官方版本前后端。

软件需求

  • NVIDIA CUDA 驱动 (CUDA Toolkit 11.6)
  • Docker 19+
  • nvidia-container-toolkit

安装 Docker

bash
curl -fsSL https://get.docker.com | bash

# 国内镜像

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

驱动相关

安装显卡驱动

使用 nvidia-smi 查看显卡状态。

使用 docker run --help | grep -i gpus 确认nvidia-container-toolkit安装成功。

运行相关

容器状态

查询出容器 ID docker ps

查看容器日志 docker logs [Container ID]

出现 “Application startup complete.” 即代表程序已经就绪

请求 API

参考代码,具体参照leak的前端后端项目,以及其中的 sd-private\hydra-node-http\main.py

promptmasterpiece, best quality, 开头对应原版 Add Quality Tags 选项,不建议删除,后面直接跟自己 prompt 即可

uc 部分对应 Undesired Content,建议保留默认

sampler 是采样方法,可选 plms/ddim/k_euler/k_euler_ancestral/k_heun/k_dpm_2/k_dpm_2_ancestral/k_lms

seed 是种子,自己随机一个整数数字,不然一直会出一样的结果

n_samples 代表要生成几张图片

python
import requests
import json
import base64
import random

endpoint = "http://10.10.12.67/generate"
data = {
  "prompt": "masterpiece, best quality, brown red hair,blue eyes,twin tails,holding cat",
  "seed": random.randint(0,2**32),
  "n_samples": 1,
  "sampler": "ddim",
  "width": 512,
  "height": 768,
  "scale": 11,
  "steps": 28,
  "uc": "lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry"
}


req = requests.post(endpoint, json=data).json()
output = req["output"]

for x in output:
  img = base64.b64decode(x)

  with open("output-" + str(output.index(x)) + ".png", "wb") as f:
    f.write(img)

Released under the GNU Free Documentation License.