# 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