Extras 安装

本页包含在本地设备上安装 SillyTavern Extras 的说明。

在您的操作系统上本地安装 Extras 可能很困难甚至不可能(尤其是 Termux)。

使用官方 Extras Colab

  • 设置简单
  • 免费使用
  • 不需要 Colab GPU 积分(使用 use_cpu 选项)
  • 有关详细信息,请参阅 Colab 指南页面

在 Colab 中运行 Extras

  • 打开官方 Extras Colab
  • 选择所需的"Extra"选项
  • 选择 use_cpu 以在不需要 GPU 积分的情况下运行 Extras
    • 这将使 Stable Diffusion 变慢,但其他一切都会正常运行
  • 非必需,但推荐:选择 secure 选项以生成 API 密钥来保护您的共享实例。
  • 点击左侧的开始按钮(看起来像三角形"播放"按钮)
  • 等待它完成加载所有内容
  • 在输出底部查找 trycloudflare.com 链接。忽略 localhost 链接,它不起作用(我们试过了!)。
  • 它将以 Running on 文本开头
  • 复制该行下列出的 API URL 链接。(不要复制 'localhost' URL,使用另一个)
  • 启动支持扩展的 SillyTavern:(如有必要,在 config.yaml 中将 enableExtensions 设置为 true)
  • 导航到 SillyTavern 的扩展菜单(点击页面顶部的"堆叠方块"图标)。
  • 将 API URL 粘贴到顶部的框中。(不是 API 密钥框)
  • 如果您没有启用 secure 选项,请确保在使用官方 colab 时 API 密钥框完全为空。
  • 如果您启用了 secure 选项,请将生成的 API 密钥粘贴到 API 密钥框中。
  • API 密钥将出现在 colab 的控制台输出中,例如:Your API key is fee2f3f559
  • 点击"连接"

本地安装方法

MiniConda(推荐)

推荐使用此方法,因为 Conda 会为 Extras 需求包创建一个"虚拟环境",使它们不会影响您的系统级 Python 设置。

  1. 安装 Miniconda

    (重要!)阅读如何使用 Conda

  2. 安装 git

    (一开始就用 git 安装 SillyTavern 的大佬们可以跳过此步骤!)

    安装完这两者后...

    CONDA 命令提示符窗口逐个输入/粘贴下面的命令,每个命令后按 Enter

  3. 创建一个新的 Conda 环境(我们称之为 extras):

    conda create -n extras

  4. 激活新环境

    conda activate extras(您应该看到 (extras) 出现在命令提示符的左侧)

  5. 安装所需的系统包(这将需要一些时间)

    conda install python=3.11 git

  6. 克隆 Extras GitHub 仓库

    git clone https://github.com/SillyTavern/SillyTavern-extras

  7. 导航到克隆的 Extras 仓库

    cd SillyTavern-extras

  8. 使用以下命令之一安装 Extras 的需求(将再次需要时间):

    • pip install -r requirements.txt - 用于基本功能
    • pip install -r requirements-rvc.txt - 用于实时语音克隆
    • pip install -r requirements-coqui.txt - 用于 Coqui TTS(不推荐)

    如果在此步骤遇到错误,请参阅常见问题页面!

  9. 请参阅下面的"安装后运行 Extras"


系统级安装

这更容易,但会影响您的系统级 Python 安装。

如果您使用许多具有不同需求的 Python 程序,这可能会导致冲突。

如果这是您第一次接触与 Python 相关的任何内容,那应该不是问题。

  1. 安装 Python 3.11: https://www.python.org/downloads/release/python-3115/
  2. 安装 git: https://git-scm.com/downloads
  3. 打开命令提示符窗口并转到您具有完全访问权限的文件夹。
  4. 克隆仓库:git clone https://github.com/SillyTavern/SillyTavern-extras,按 Enter。
  5. 克隆完成后,输入 cd SillyTavern-extras,按 Enter。
  6. 输入 python -m pip install -r requirements.txt
  7. 请参阅下面的"安装后运行 Extras"

安装后运行 Extras

确认扩展已启用

  1. 在文本编辑器中打开名为 config.yaml 的文件。该文件位于 ST 的基本安装文件夹中。
  2. 查找读取 enableExtensions 的行。
  3. 确保该行有 true,而不是 false

决定使用哪个模块

(这只需要做一次)

  • Extras 总是使用 Python 命令行启动。
  • python server.py 是最低要求,但它不启用任何有用的模块。
  • 要启用模块,您必须使用 --enable-modules= 修饰符,带有逗号分隔的模块名称列表

示例:python server.py --enable-modules=caption,summarize,classify

这将启用图像描述、聊天摘要和实时更新角色表情。

下表描述了每个模块。

名称 描述
caption 图像描述
summarize 文本摘要
classify 文本情感分类
sd Stable Diffusion 图像生成
silero-tts Silero TTS 服务器
edge-tts Microsoft Edge TTS 客户端
chromadb 向量存储服务器
coqui-tts Coqui TTS
rvc 实时语音克隆
  • 决定要将哪些模块添加到 Python 命令行。
  • 它们将在下一步中使用。

注意:Python 命令的模块列表中不能有任何空格!

启动 Extras 服务器

在 Extras 安装文件夹内的命令提示符窗口中...

  1. 确保您的 conda 环境处于活动状态(如果您使用了 Conda 安装方法)
  2. 如果环境未激活,输入 activate extras
  3. 输入 python server.py --enable-modules=YOUR,SELECTED,MODULE,LIST,HERE
  4. extras 服务器将加载。
  5. 过一会儿,它会在最后显示一个 URL。对于本地安装,默认为 http://localhost:5100
  6. 复制 API URL。

将 ST 连接到 Extras 服务器

  1. 启动您的 SillyTavern 服务器,并在浏览器中查看 SillyTavern 界面。
  2. 打开扩展面板(通过页面顶部的"堆叠方块"图标)
  3. 将 API URL 粘贴到输入框中。
  4. 点击 连接

要再次运行 Extras,只需在命令提示符中激活环境并运行这些命令。

conda activate extras,按 Enter。 python server.py,按 Enter。

确保使用您的设置所需的 server.py 的附加选项(见下文)。

制作 .bat 文件以便轻松启动

这是可选的,仅适用于 Windows,但在 MacOS 上应该可以做类似的事情。

  1. 查看您的 Windows 桌面
  2. 右键单击,选择 新建,然后点击 文本文档
  3. 您的桌面上将出现一个新文件,要求输入名称。
  4. 将文件命名为 STExtras.txt
  5. 在文本编辑器中打开新创建的文件。
  6. 将以下代码粘贴到其中:

    cd C:\_your_\_full_\_Extras_\_folder_\_path_\
    call conda activate extras
    python server.py --enable-modules=YOUR,SELECTED,MODULE,LIST,HERE,WITH,NO,SPACES
    call conda deactivate
    pause
  7. 将占位符文件夹路径替换为您的实际 Extras 安装文件夹路径。
  8. 将 python 命令行替换为您的实际命令行
  9. 使用新名称 STExtras.bat 保存文件(在大多数文本编辑器中使用 文件 >> 另存为)

您现在可以简单地双击此 .bat 文件以轻松启动 Extras。

如果您想更改模块列表(或 extras 服务器的任何其他命令行修饰符),只需编辑 .bat 文件内的 python 命令。

Extras 安装常见问题

本节列出了安装 SillyTavern Extras 时遇到的常见问题和问题。

错误:无法在 Linux 上导入 'talkinghead' 模块

它需要安装额外的软件包,因为由于与 Colab 不兼容,它不会自动安装。在安装其他需求后运行此命令:

pip install wxpython

Extras 服务器无法连接到 AUTOMATIC1111 的 Stable Diffusion Web UI

Could not connect to remote SD backend at http://127.0.0.1:7860! Disabling SD module...

确保您启动 Stable Diffusion 的 webui-user.bat 在 COMMANDLINE_ARGS 变量中包含 --api 命令行选项。

在您的 "webui-user.bat" 中找到并替换该行:set COMMANDLINE_ARGS=--api

应该看起来像这样
应该看起来像这样

如果 SD Web UI 禁用了 API 模式,Extras 服务器将无法建立连接,您将无法生成图像!

仍然不起作用?

确保您按正确的顺序启动所有内容,等待每个程序完成加载后再继续下一步:

  1. Stable Diffusion Web UI
  2. SillyTavern Extras
  3. SillyTavern

如果 Extras 服务器在 Stable Diffusion API 之后加载,则无法重新连接。

安装 ChromaDB 时 hnswlib wheel 构建错误

ERROR: Could not build wheels for hnswlib, which is required to install pyproject.toml-based projects

在安装 ChromaDB 模块之前,您必须先执行以下操作之一:


在 Mac 上安装 Python 需求时出错

ERROR: No matching distribution found for torch==2.0.0+cu117

Mac 不支持 CUDA,因此应该安装没有 CUDA 支持的 torch 包。

改用 requirements-silicon.txt 文件安装需求。


缺少模块?

  • 您必须在 Python 命令行中使用 --enable-modules 修饰符指定模块名称列表。
  • 请参阅模块部分。

API 密钥框是用来做什么的?

  • SillyTavern 扩展面板中的 API 密钥框仅在以下情况下使用:
    • 在 Extras 安装文件夹中创建了一个名为 api_key.txt 的文本文件,其中包含您选择的 Extras "密码"。
    • 使用 --secure 命令行参数启动 extras。
  • 这使 Extras API "密码锁定",因此只有在 API 密钥框中拥有该密钥的用户才能访问它。
  • 这主要对想要公开部署 Extras(colab 等)的人有用。
  • 在 PC 上运行 Extras 供个人使用的用户不应在 API 密钥框中输入任何内容。

移动/Android/Termux 怎么样?🤔

  • 社区中有一些人通过 Termux 上的 Ubuntu 在手机上成功运行 Extras。
  • 但是,Extras 并非考虑移动支持而制作的。
  • 不会为在 Android 设备上运行 Extras 的人提供支持。
  • 请将所有问题直接发送给下面链接的指南的创建者。

这是不支持的

https://rentry.org/STAI-Termux#downloading-and-running-tai-extras