如何更新 SillyTavern

找到您的操作系统并按照说明更新 ST。


Linux/Termux 或 MacOS

您肯定是通过 git 安装的,所以只需在 SillyTavern 目录中执行 'git pull'。

  • 使用 cd SillyTavern 进入正确的文件夹。
  • 使用 git pull 获取更新。
  • 使用 ./start.shbash start.sh 启动 ST。

Windows

首先尝试使用位于 SillyTavern 安装根文件夹中的 UpdateAndStart.bat

如果失败,请返回此处继续阅读。

方法 1 - GIT

我们始终建议用户使用 'git' 安装。原因如下:

当您通过 git clone 安装时,要更新只需在 ST 文件夹的命令行中输入 git pull。 或者,如果命令提示符出现问题(并且您已安装 GitHub Desktop),您可以使用 Repository 菜单并选择 Pull

更新会自动安全地应用。

"帮助!我最初是通过 Zip 安装的,现在想转换为 Git 安装"

您选择了一条明智的道路。

由于您的安装是通过 Zip 完成的,您需要使用 git 进行新的安装。

幸运的是,我们有相关说明

一旦您使用 git 在不同的文件夹中安装了新的 SillyTavern,请返回此页面并继续执行下面 'Zip 更新' 说明中的第 4 步

方法 2 - ZIP

如果您坚持通过 zip 安装,以下是更新的繁琐过程:

  1. 下载新的发布 zip。
  2. 将其解压到当前 ST 安装目录之外的文件夹中。
  3. 按照您的操作系统的常规设置程序安装 NodeJS 要求。
  4. 根据需要(*)从旧的 ST 安装中复制以下文件/文件夹:

    (*) '根据需要' = "如果您创建了与这些文件夹相关的任何自定义内容"。

    更新到 >=1.12.0

    /data 目录和 config.yaml 文件从一个安装复制到另一个安装。

    从 <1.12.0 更新到 >1.12.0

    1.12.0 包含自动迁移程序。仅在迁移被中断或出错时才需要执行以下步骤。

  5. 至少运行一次更新后的服务器安装以创建 /data/default-user 目录。
  6. 根据需要将文件从旧的 /public 转移到新的 /data/default-user

    所有文件夹都不是强制性的,只复制您需要的内容。

    注意:不要复制整个 /PUBLIC/ 文件夹

    这样做可能会破坏新安装并阻止新功能的出现。

    plaintext
    Assets
    Backgrounds
    Characters
    Chats
    Context
    Groups
    Group chats
    Instruct
    movingUI
    KoboldAI Settings
    NovelAI Settings
    OpenAI Settings
    QuickReplies
    TextGen Settings (textgen = ooba)
    Themes
    User Avatars
    Worlds
    User
    settings.json
    secrets.json <---- 这个在根文件夹中,不在 /public/ 中
  7. 一旦这些文件夹/文件被复制,将它们粘贴到新安装的 /data/default-user 文件夹中(secrets.json 放在文件夹根目录中)。
  8. 使用适合您操作系统的方法再次启动 SillyTavern,并祈祷一切正常。
  9. 如果一切都显示正常,您可以安全地删除旧的 ST 文件夹。

常见更新问题

我使用 Docker,更新后所有数据都消失了!

如果您使用的是 Docker 容器,请参阅容器化 Docker 安装

"工作目录中有未解决的冲突。"

这意味着您修改了在远程仓库中已更改的默认文件(如设置预设)。

要修复此问题,请在终端中运行以下命令。请谨慎使用,因为它可能具有破坏性。如有需要,请确保有备份。

git merge --abort
git reset --hard
git pull --rebase --autostash

文件更改阻止 git pull

  • 如果您更改 SillyTavern 系统文件,git pull 可能无法工作。
  • 有时更新可能需要我们更改重要文件,这可能导致相同的问题。
  • 通常是默认预设文件或 package-lock.json
  • 在这种情况下,您可以尝试将文件移动到不同的文件夹(或删除文件),然后执行 git pull
  • 另一个解决方案是使用 git pull --rebase --autostash

启动服务器时出现错误:找不到模块 "***"

  • 这意味着 SillyTavern 添加了新的 npm 包要求。
  • 在 SillyTavern 目录中运行 npm install 可以修复此问题。提供的 Start.bat 和 start.sh 脚本会自动执行此操作。
  • 没有帮助?删除 node_modules 文件夹

Windows

rmdir /s /q node_modules
npm cache clean --force
npm install

Unix/Linux

rm -rf node_modules
npm cache clean --force
npm install