mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2024-12-13 10:00:36 +01:00
307 lines
14 KiB
Markdown
307 lines
14 KiB
Markdown
[English](readme.md) | 中文 | [日本語](readme-ja_jp.md)
|
||
|
||
![image](https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4)
|
||
|
||
移动设备界面友好,多种人工智能服务或模型支持(KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale),类似 Galgame 的 老 婆 模 式,Horde SD,文本系统语音生成,世界信息(Lorebooks),可定制的界面,自动翻译,和比你所需要的更多的 Prompt。附带扩展服务,支持文本绘画生成与语音生成和基于向量数据库 的聊天信息总结。
|
||
|
||
基于 TavernAI 1.2.8 的分叉版本
|
||
|
||
### 由 Cohee、RossAscends 和 SillyTavern 社区为您呈现
|
||
|
||
注意:我们创建了一个 [帮助文档](https://docs.sillytavern.app/) 网站来回答各类问题与帮助您开始使用。
|
||
|
||
### SillyTavern 或 TavernAI 是什么?
|
||
|
||
SillyTavern 是一个可以安装在电脑(和安卓手机)上的用户界面,让您可以与文本生成的人工智能互动,并与您或社区创建的角色聊天/玩角色扮演游戏。
|
||
|
||
SillyTavern 是 TavernAI 1.2.8 的一个分支,正在进行更积极地开发,并添加了许多重要功能。在这一点上,它可以被视为完全独立的程序。
|
||
|
||
### 分支
|
||
|
||
SillyTavern 采用双分支进行开发,以确保所有用户都能获得流畅的使用体验。
|
||
|
||
* release -🌟 **推荐给大多数用户。** 这是最稳定、最推荐的分支,只有在重大版本推送时才会更新。适合大多数用户使用。
|
||
* staging - ⚠️ **不建议随意使用。** 该分支拥有最新功能,但要谨慎,因为它随时可能崩溃。仅适用于高级用户和爱好者。
|
||
|
||
如果你不熟悉使用 Git 命令,或者不了解什么是分支,别担心!release 分支始终是您的首选。
|
||
|
||
### 除了 SillyTavern,我还需要什么?
|
||
|
||
SillyTavern 本身并无用处,因为它只是一个用户聊天界面。你必须接入一个能充当角色扮演的人工智能系统。支持的人工智能系统有多种:OpenAPI API (GPT)、KoboldAI(可在本地或 Google Colab 上运行)等。您可以在 [常见问题](https://docs.sillytavern.app/usage/faq/) 中阅读更多相关信息。
|
||
|
||
### 我需要一台性能强大的电脑来运行 SillyTavern 吗?
|
||
|
||
由于 SillyTavern 只是一个用户聊天界面,它对硬件性能的要求很低,可以在任何电脑上运行。需要强大性能的是人工智能系统。
|
||
|
||
### 移动设备支持
|
||
|
||
> 注意
|
||
|
||
> **此分叉可使用 Termux 在安卓手机上原生运行。请参考 ArroganceComplex#2659 编写的指南:**
|
||
|
||
<https://rentry.org/STAI-Termux>
|
||
|
||
## 有问题或建议?
|
||
|
||
### 我们现在有了 Discord 社区
|
||
|
||
获取支持,或分享喜爱的角色和 Prompt:
|
||
|
||
### [加入 Discord 社区](https://discord.gg/sillytavern)
|
||
|
||
***
|
||
|
||
直接与开发人员联系:
|
||
|
||
* Discord: cohee 或 rossascends
|
||
* Reddit:/u/RossAscends 或 /u/sillylossy
|
||
* [发布 GitHub 问题](https://github.com/SillyTavern/SillyTavern/issues)
|
||
|
||
## 此版本包括
|
||
|
||
* 经过大量修改的 TavernAI 1.2.8(超过 50% 的代码经过重写或优化)
|
||
* 根据自定义规则自动重新生成消息
|
||
* 群聊:多机器人房间,供角色与你或彼此交谈
|
||
* 聊天书签/分支(复制当前状态下的对话)
|
||
* 先进的 KoboldAI / TextGen 生成设置,包含大量社区预设
|
||
* 支持世界信息(Lorebooks):创建丰富的传说
|
||
* 支持 Window AI 浏览器扩展(运行 Claude、GPT 4 等模型):<https://windowai.io/>
|
||
* [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui) API 连接
|
||
* 连接 [AI Horde](https://horde.koboldai.net/)
|
||
* Prompt 生成格式调整
|
||
* Webp 角色卡支持(PNG 仍是内部格式)
|
||
|
||
## 扩展
|
||
|
||
SillyTavern 支持扩展服务,一些额外的人工智能模块可通过 [SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras) 提供。
|
||
|
||
* 作者注释/角色偏见
|
||
* 角色情绪识别
|
||
* 聊天记录自动摘要
|
||
* 在聊天窗口发送图片,并由人工智能解释图片内容
|
||
* 文本图像生成(5 预设,以及 "自由模式")
|
||
* 聊天信息的文字转语音(通过 ElevenLabs、Silero 或操作系统的语音生成)
|
||
|
||
扩展服务的完整功能介绍和使用教程,请参阅 [Docs](https://docs.sillytavern.app/)。
|
||
|
||
## 界面/CSS/性能,由 RossAscends 调整并优化
|
||
|
||
* 针对 iOS 系统优化了界面,并支持将快捷方式保存到主屏幕,在全屏模式下打开。
|
||
* 热键
|
||
* 上 = 编辑聊天中的最后一条信息
|
||
* Ctrl+P = 编辑聊天中最后一条用户信息
|
||
* 左 = 向左滑动
|
||
* 右 = 向右滑动(注意:当聊天窗口输入内容时,轻扫快捷键将被禁用)
|
||
* Ctrl+左 = 查看本地存储的变量(在浏览器控制台窗口中)
|
||
* 回车(选择聊天栏)= 向人工智能发送信息
|
||
* Ctrl+Enter = 重新生成人工智能最后的回复
|
||
|
||
* 用户名更改和角色删除不再强制重新刷新页面。
|
||
|
||
* 增加在页面加载时自动连接 API 的选项。
|
||
* 增加选项,在页面加载时自动加载最近的聊天信息。
|
||
* 更好的 Tokens 计算器 - 适用于未保存的文字,并显示永久和临时 Tokens 数量
|
||
|
||
* 更好的聊天历史查询窗口
|
||
* 聊天的文件名以"(角色卡名称)+(创建时间)"的可读格式保存
|
||
* 聊天历史预览从 40 个字符增加到 300 个字符。
|
||
* 聊天历史排序有多种选择(按名称、创建日期、聊天记录大小)。
|
||
|
||
* 默认情况下,左侧和右侧弹出的设置面板会在点击其他区域时自动关闭。
|
||
* 点击导航面板上的 "锁按钮" 将保持弹出面板打开,并在不同聊天中记住此设置。
|
||
* 导航面板的打开或关闭状态也会跨聊天保存。
|
||
|
||
* 自定义聊天界面:
|
||
* 收到新消息时播放提示音
|
||
* 切换圆形或长方形头像样式
|
||
* 在台式电脑上拥有更宽的聊天窗口
|
||
* 可选的半透明玻璃效果聊天窗口
|
||
* 可定制 "主文本"、"引用文本 "和 "斜体文本 "的字体颜色。
|
||
* 可定制聊天界面的背景颜色和透明模糊程度
|
||
|
||
## 安装
|
||
|
||
*注意:SillyTavern 用于本地安装,尚未在 Colab 或其他云服务上进行全面测试。
|
||
|
||
> **警告**
|
||
|
||
> 切勿安装到任何受 Windows 控制的系统文件夹(Program Files, System32, etc)中。
|
||
|
||
> 不要以管理员权限运行 start.bat
|
||
|
||
### Windows
|
||
|
||
通过 Git 安装(推荐使用,便于更新)
|
||
|
||
附有精美图片示例的简易指南:
|
||
<https://docs.sillytavern.app/installation/windows/>
|
||
|
||
1. 安装 [NodeJS](https://nodejs.org/en)(建议使用最新的 LTS 版本)
|
||
2. 安装 [GitHub 客户端](https://central.github.com/deployments/desktop/desktop/latest/win32)
|
||
3. 打开 Windows 资源管理器 (`Win+E`)
|
||
4. 浏览或创建一个不受 Windows 控制或监控的文件夹。(例如:C:\MySpecialFolder\)
|
||
5. 点击顶部的 "地址栏",在该文件夹内打开命令提示符,输入 `cmd`,然后按回车。
|
||
6. 弹出黑框(CMD 命令提示符)后,键入以下其中一项并按 Enter:
|
||
|
||
* 稳定分支:`git clone https://github.com/SillyTavern/SillyTavern -b release`
|
||
* 开发分支: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
|
||
|
||
7. 等待 Git 克隆完成后,双击文件夹中的 `Start.bat` 将启动 NodeJS 并开始自动安装需要的软件包。
|
||
8. 然后 SillyTavern 服务就会自动启动,同时在浏览器新标签页中自动打开。
|
||
|
||
通过压缩包下载安装(不推荐)
|
||
|
||
1. 安装 [NodeJS](https://nodejs.org/en)(建议使用最新的 LTS 版本)
|
||
2. 从该 GitHub 仓库下载压缩包。(从 [Releases](https://github.com/SillyTavern/SillyTavern/releases/latest) 获取 "Source code(zip)")。
|
||
3. 将压缩包解压到您选择的文件夹中
|
||
4. 双击或在命令行中运行 `Start.bat`。
|
||
5. SillyTavern 服务自动为你准备好一切后,会在你的浏览器中打开一个新标签页。
|
||
|
||
### Linux
|
||
|
||
1.运行 `start.sh` 脚本。
|
||
2.等待自动完成,然后开始享受
|
||
|
||
## API 密钥管理
|
||
|
||
SillyTavern 会将 API 密钥保存在目录中的 `secrets.json` 文件内。
|
||
|
||
默认情况下,输入密钥并重新加载页面后,密钥会自动隐藏以保证安全。
|
||
|
||
如果要想通过点击 API 输入框旁边的按钮来查看密钥,请按照以下设置:
|
||
|
||
1. 打开 `config.yaml` 文件,将里面的 `allowKeysExposure` 设置为 `true`。
|
||
2. 然后重启 SillyTavern 服务。
|
||
|
||
## 远程访问
|
||
|
||
这通常是为那些想在手机上使用 SillyTavern 的人准备的,而他们的电脑和手机在同一个局域网中。
|
||
|
||
不过,SillyTavern 也可以被设置为允许从任何地方进行远程访问。
|
||
|
||
**重要提示:SillyTavern 是单用户程序,因此任何人登录后都能看到所有的角色卡和聊天内容,并能更改任何设置。
|
||
|
||
### 1.管理白名单 IP
|
||
|
||
* 在你的 SillyTavern 文件夹中新建一个文本文件,名为 `whitelist.txt`。
|
||
* 用文本编辑器打开该文件,添加你希望允许连接的 IP 地址列表。
|
||
* 接受单个 IP 地址和 IP 范围,示例:
|
||
|
||
```
|
||
192.168.0.1
|
||
192.168.0.20
|
||
```
|
||
|
||
或者
|
||
|
||
```
|
||
192.168.0.*
|
||
```
|
||
|
||
(上述 IP 范围将允许局域网中的任何设备连接)
|
||
|
||
也接受子网掩码设置(如 10.0.0.0/24)。
|
||
|
||
* 保存`whitelist.txt`文件。
|
||
* 重启 SillyTavern 服务。
|
||
|
||
然后,文件中设置的 IP 就可以访问 SillyTavern 了。
|
||
|
||
*注意:"config.yaml" 文件内也有一个 "whitelist" 设置,你可以用同样的方法设置它,但如果 "whitelist.txt" 文件存在,这个设置将被忽略。
|
||
|
||
### 2.获取 SillyTavern 服务的 IP 地址
|
||
|
||
白名单设置完成后,您需要 SillyTavern 服务的 IP 地址。
|
||
|
||
如果 SillyTavern 服务设备在同一个局域网上,则使用安装 SillyTavern 服务的电脑的局域网 IP 地址:
|
||
|
||
* Windows:Windows 按钮 > 在搜索栏中输入 `cmd.exe` > 在打开的控制台中输入 `ipconfig`,回车 > 然后在输出中查找 `IPv4` 地址。
|
||
|
||
如果您(或其他人)想在互联网中访问你自己的 SillyTavern 服务,则需要运行 SillyTavern 服务的设备的互联网 IP 地址。
|
||
|
||
* 使用运行 SillyTavern 的设备,访问 [this page](https://whatismyipaddress.com/) 并查找 `IPv4`。这是您从互联网访问时要用到的。
|
||
|
||
### 3. 使用其他设备访问 SillyTavern 服务
|
||
|
||
无论你最终使用的是什么 IP 地址,都要将该 IP 地址和端口号输入其他设备网络浏览器。
|
||
|
||
同一局域网中的 SillyTavern 服务的典型默认地址如下:
|
||
|
||
`http://192.168.0.5:8000`
|
||
|
||
使用 http:// 而不是 https://
|
||
|
||
### 向所有 IP 开放您的 SillyTavern 服务
|
||
|
||
我们不建议这样做,但您可以打开 `config.yaml` 并将里面的 `whitelistMode` 设置改为 `false`。
|
||
|
||
你必须删除(或重命名)SillyTavern 文件夹中的 `whitelist.txt` 文件(如果有的话)。
|
||
|
||
这通常是不安全的做法,所以我们要求在这样做时必须设置用户名和密码。
|
||
|
||
用户名和密码在`config.yaml`文件中设置。
|
||
|
||
重启 SillyTavern 服务后,只要知道用户名和密码,任何设备都可以访问。
|
||
|
||
### 还是无法访问?
|
||
|
||
* 为 `config.yaml` 文件中的端口创建一条入站/出站防火墙规则。切勿将此误认为是路由器上的端口转发,否则,有人可能会发现你的聊天隐私,那就大错特错了。
|
||
* 在 "设置" > "网络和 Internet" > "以太网" 中启用 "专用网络" 配置。这对 Windows 11 非常重要,否则即使添加了上述防火墙规则也无法连接。
|
||
|
||
### 性能问题?
|
||
|
||
尝试在用户设置面板上关闭模糊效果(快速用户界面)模式。
|
||
|
||
## 我喜欢你的项目!我该如何贡献自己的力量?
|
||
|
||
### 应该
|
||
|
||
1. 发送 Fork 请求
|
||
2. 使用规定的模板发送功能建议和问题报告
|
||
3. 在提出任何问题之前,请先阅读 Readme 文件和文档
|
||
|
||
#### 不应该
|
||
|
||
1. 提供金钱捐赠
|
||
2. 发送错误报告而不提供任何详细信息
|
||
3. 提出已经回答过无数次的问题
|
||
|
||
## 我在哪里可以找到以前的聊天背景图片?
|
||
|
||
我们正在实行 100% 原创内容的政策,因此旧的背景图片已从该资源库中删除。
|
||
|
||
不过你可以在这里找到它们的存档:
|
||
|
||
<https://files.catbox.moe/1xevnc.zip>
|
||
|
||
## 屏幕截图
|
||
|
||
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649245-8061c60f-63dc-488e-9325-f151b7a3ec2d.png">
|
||
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649856-fbdeef05-d727-4d5a-be80-266cbbc6b811.png">
|
||
|
||
## 许可证和贡献
|
||
|
||
**发布本程序是希望它能有所帮助,但不做任何保证;甚至没有明示的性能、稳定性和其他任何特定用途的可用性保证。更多详情,请参阅 GNU Affero 通用公共许可证。**
|
||
|
||
**This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.**
|
||
|
||
* TAI Base by Humi: Unknown license
|
||
* Cohee's modifications and derived code: AGPL v3
|
||
* RossAscends' additions: AGPL v3
|
||
* Portions of CncAnon's TavernAITurbo mod: Unknown license
|
||
* kingbri's various commits and suggestions (<https://github.com/bdashore3>)
|
||
* StefanDanielSchwarz's various commits and bug reports (<https://github.com/StefanDanielSchwarz>)
|
||
* Waifu mode inspired by the work of PepperTaco (<https://github.com/peppertaco/Tavern/>)
|
||
* Thanks Pygmalion University for being awesome testers and suggesting cool features!
|
||
* Thanks oobabooga for compiling presets for TextGen
|
||
* KoboldAI Presets from KAI Lite: <https://lite.koboldai.net/>
|
||
* Noto Sans font by Google (OFL license)
|
||
* Icon theme by Font Awesome <https://fontawesome.com> (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||
* AI Horde client library by ZeldaFan0225: <https://github.com/ZeldaFan0225/ai_horde>
|
||
* Linux startup script by AlpinDale
|
||
* Thanks paniphons for providing a FAQ document
|
||
* 10K Discord Users Celebratory Background by @kallmeflocc
|
||
* Default content (characters and lore books) provided by @OtisAlejandro, @RossAscends and @kallmeflocc
|
||
* Korean translation by @doloroushyeonse
|
||
* 中文翻译由 [@XXpE3](https://github.com/XXpE3) 完成,中文 ISSUES 可以联系 @XXpE3
|