THE TAVERN CODEX部署与管理

配置文件

配置文件:免责声明此文档可能已过时、不完整或不正确。请参考您安装中的 默认 config.yaml 以获取最新的设置列表。 警告:不要直接编辑默认配置。这不会产生任何积极。SillyTavern 酒馆中文百科,保留原文与出处,提供像素酒馆相关入口和阅读导航。

原文 · sillytaverncn.net ↗授权迁移 · 保留原文作者与许可纯文本 ↗
本页章节 31
阅读说明

下方保留源站教程正文,部分版本、价格和产品信息可能随时间变化,请以当前应用与上游文档为准。本站与 SillyTavern 为独立产品,不将其扩展视为像素酒馆可完全兼容的功能。

免责声明

此文档可能已过时、不完整或不正确。请参考您安装中的 默认 config.yaml 以获取最新的设置列表。

警告:不要直接编辑默认配置。这不会产生任何积极效果。请编辑存储库根目录中的副本。

config.yaml 是 SillyTavern 服务器的主配置文件,您可以在完成安装后在存储库根目录中找到它。它是一个 YAML 文件,包含各种设置,例如网络、安全和后端特定选项。对此文件所做的更改将在重新启动服务器后生效。

在更新存储库后运行 npm install(具体来说是 post-install.js 脚本)时,上游添加的新设置会自动填充默认值。然后您可以根据需要修改这些设置。

对于嵌套设置,使用点表示法来指示层次结构。例如,protocol.ipv6: false 指的是 protocol 部分下的 ipv6 设置,值为 false。

protocol:
  ipv6: false

命令行参数

启动 SillyTavern 服务器时,您可以传递命令行参数来覆盖 config.yaml 中的某些设置。

示例

node server.js --port 8000 --listen false
# 或
npm run start -- --port 8000 --listen false
# 或(仅限 Windows)
Start.bat --port 8000 --listen false

支持的参数

提示

所有参数都不是必需的。如果您不提供它们,SillyTavern 将使用 config.yaml 中的设置。

选项 描述 类型
--version 显示版本号 boolean
--global 强制使用系统范围的应用程序数据路径 boolean
--configPath 覆盖 config.yaml 文件的路径(仅限独立模式) string
--dataRoot 设置数据存储的根目录(仅限独立模式) string
--port 设置 SillyTavern 运行的端口 number
--listen 使 SillyTavern 在所有网络接口上侦听 boolean
--whitelist 启用白名单模式 boolean
--basicAuthMode 启用基本身份验证 boolean
--enableIPv4 启用 IPv4 协议 boolean
--enableIPv6 启用 IPv6 协议 boolean
--listenAddressIPv4 指定要侦听的 IPv4 地址 string
--listenAddressIPv6 指定要侦听的 IPv6 地址 string
--dnsPreferIPv6 DNS 首选 IPv6 boolean
--ssl 启用 SSL boolean
--certPath 设置证书文件的路径 string
--keyPath 设置私钥文件的路径 string
--browserLaunchEnabled 在浏览器中自动启动 SillyTavern boolean
--browserLaunchHostname 设置浏览器启动主机名 string
--browserLaunchPort 覆盖浏览器启动的端口 string
--browserLaunchAvoidLocalhost 在自动模式下避免使用 'localhost' 进行浏览器启动 boolean
--corsProxy 启用 CORS 代理 boolean
--requestProxyEnabled 为传出请求启用代理 boolean
--requestProxyUrl 设置请求代理 URL(HTTP 或 SOCKS 协议) string
--requestProxyBypass 设置请求代理绕过列表(空格分隔的主机列表) array
--disableCsrf 禁用 CSRF 保护(不推荐) boolean

环境变量

配置也可以通过环境变量设置,这将覆盖 config.yaml 文件中的值。

环境变量应以 SILLYTAVERN_ 为前缀,并对设置名称使用大写字母。例如,dataRoot 设置可以使用 SILLYTAVERN_DATAROOT 环境变量覆盖。

嵌套设置应使用下划线分隔。例如,protocol.ipv6 可以使用 SILLYTAVERN_PROTOCOL_IPV6 环境变量覆盖。

注意

期望数组或对象的配置应进行 JSON 字符串化。例如,要使用 SILLYTAVERN_WHITELIST 环境变量覆盖 whitelist 设置,您应将其设置为 JSON 字符串:SILLYTAVERN_WHITELIST='["127.0.0.1", "::1"]'。

如果您使用的是 Node.js v20 或更高版本,您还可以在 .env 文件中存储环境变量,并使用 --env-file 标志将其传递给服务器。例如,要使用位于存储库根目录中的 .env 文件,您可以使用以下命令启动服务器:

node --env-file=.env server.js

或者,直接通过命令行传递环境变量:

SILLYTAVERN_LISTEN=true SILLYTAVERN_PORT=8000 node server.js

有关使用环境变量的更多信息,请参见 Node.js 文档。

数据配置

设置 描述 默认值 允许的值
dataRoot 用户数据存储的根目录(仅限独立模式) ./data 任何有效的目录路径
skipContentCheck 跳过新默认内容的检查 false true, false
enableDownloadableTokenizers 启用按需下载 tokenizer true true, false

日志配置

设置 描述 默认值 允许的值
logging.minLogLevel 在终端中显示的最小日志级别 0 (DEBUG) (DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3)
logging.enableAccessLog 将服务器访问日志写入文件和控制台 true true, false

网络配置

设置 描述 默认值 允许的值
listen 启用侦听传入连接 false true, false
port 服务器侦听端口 8000 任何有效的端口号 (1-65535)
protocol.ipv4 在 IPv4 协议上启用侦听 true true, false, auto
protocol.ipv6 在 IPv6 协议上启用侦听 false true, false, auto
listenAddress.ipv4 侦听特定的 IPv4 地址 0.0.0.0 有效的 IPv4 地址
listenAddress.ipv6 侦听特定的 IPv6 地址 '[::]' 有效的 IPv6 地址
dnsPreferIPv6 DNS 解析首选 IPv6 false true, false

SSL 配置

设置 描述 默认值 允许的值
ssl.enabled 启用 SSL/TLS 加密和 HTTPS 协议 false true, false
ssl.keyPath SSL 私钥的路径(相对于服务器目录) "./certs/privkey.pem" 有效的文件路径
ssl.certPath SSL 证书的路径(相对于服务器目录) "./certs/cert.pem" 有效的文件路径
ssl.keyPassphrase SSL 私钥的密码短语。如果不需要则留空 "" 任何字符串

安全配置

IP 白名单

设置 描述 默认值 允许的值
whitelistMode 启用 IP 白名单过滤 true true, false
enableForwardedWhitelist 检查转发的头以获取白名单 IP true true, false
whitelist 允许的 IP 地址列表 ["::1", "127.0.0.1"] 有效 IP 地址的数组
whitelistDockerHosts 自动将 Docker 主机 IP 加入白名单 true true, false

主机白名单

设置 描述 默认值 允许的值
hostWhitelist.enabled 启用主机白名单 false true, false
hostWhitelist.scan 记录来自不受信任主机的传入请求 true true, false
hostWhitelist.hosts 受信任主机名列表 [] 有效主机名的数组

安全覆盖

重要提示

强烈不建议禁用安全措施。在进行更改之前,请确保您了解自己在做什么。

设置 描述 默认值 允许的值
allowKeysExposure 允许在 UI 中暴露未遮蔽的 API 密钥 false true, false
disableCsrfProtection 禁用 CSRF 保护(不推荐) false true, false
securityOverride 禁用启动安全检查(不推荐) false true, false

用户身份验证

设置 描述 默认值 允许的值
basicAuthMode 启用基本身份验证 false true, false
basicAuthUser.username 基本身份验证用户名 "user" 任何字符串
basicAuthUser.password 基本身份验证密码 "password" 任何字符串
enableUserAccounts 启用多用户模式 false true, false
enableDiscreetLogin 在登录屏幕上隐藏用户列表 false true, false
sessionTimeout 用户会话超时(秒) -1 (禁用) 任何数字(-1 禁用,0 为浏览器关闭,>0 为超时)
perUserBasicAuth 使用账户凭据进行基本身份验证 false true, false

SSO 自动登录

设置 描述 默认值 允许的值
sso.autheliaAuth 启用基于 Authelia 的自动登录。参见:SSO false true, false
sso.authentikAuth 启用基于 Authentik 的自动登录。参见:SSO false true, false

速率限制配置

设置 描述 默认值 允许的值
rateLimiting.preferRealIpHeader 使用 X-Real-IP 头而不是套接字 IP 进行速率限制 false true, false

请求代理配置

设置 描述 默认值 允许的值
requestProxy.enabled 为传出请求启用代理 false true, false
requestProxy.url 代理服务器 URL null 有效的代理 URL(例如 "socks5://username:password@example.com:1080")
requestProxy.bypass 绕过代理的主机 ["localhost", "127.0.0.1"] 主机名/IP 数组

CORS 代理配置

某些扩展可能需要启用的 CORS 代理。任何内置功能都不需要它。

设置 描述 默认值 允许的值
enableCorsProxy 启用 CORS 代理中间件 false true, false

浏览器启动配置

以前称为 "Autorun" 设置。

设置 描述 默认值 允许的值
browserLaunch.enabled 在服务器启动时自动打开浏览器 true true, false
browserLaunch.browser 用于打开 URL 的浏览器 "default" "default", "chrome", "firefox", "edge", "brave"
browserLaunch.hostname 覆盖浏览器启动的主机名 "auto" "auto",任何有效的主机名(例如 "localhost", "st.example.com")
browserLaunch.port 覆盖浏览器启动的端口 -1 -1(使用服务器端口),任何有效的端口号
browserLaunch.avoidLocalhost 在启动 URL 中避免使用 'localhost' false true, false

性能配置

设置 描述 默认值 允许的值
performance.lazyLoadCharacters 延迟加载角色数据 true true, false
performance.useDiskCache 为角色卡启用磁盘缓存 true true, false
performance.memoryCacheCapacity 最大内存缓存容量 100mb 人类可读的大小(例如 100mb, 1gb)

Cache Buster 配置

注意

需要 localhost 或带有 HTTPS 的域,否则将无法工作!

设置 描述 默认值 允许的值
cacheBuster.enabled 在首次加载或上传图像文件后清除浏览器缓存 false true, false
cacheBuster.userAgentPattern 仅为与指定正则表达式模式匹配的用户代理清除缓存。例如:'firefox'(不区分大小写)。 '' 任何有效的正则表达式字符串

缩略图配置

设置 描述 默认值 允许的值
thumbnails.enabled 启用缩略图生成 true true, false
thumbnails.quality JPEG 缩略图质量 95 0-100
thumbnails.format 缩略图的图像格式 jpg jpg, png
thumbnails.dimensions.bg 背景缩略图大小 [160, 90] 两个数字的数组(宽度,高度)
thumbnails.dimensions.avatar 头像缩略图大小 [96, 144] 两个数字的数组(宽度,高度)
thumbnails.dimensions.persona 人格缩略图大小 [96, 144] 两个数字的数组(宽度,高度)

备份配置

设置 描述 默认值 允许的值
backups.chat.enabled 启用自动聊天备份 true true, false
backups.chat.checkIntegrity 在保存前验证聊天文件的完整性 true true, false
backups.common.numberOfBackups 要保留的备份数量 50 任何正整数
backups.chat.throttleInterval 备份限制间隔(毫秒) 10000 任何正整数
backups.chat.maxTotalBackups 要保留的最大聊天备份总数 -1 任何正整数或 -1

扩展配置

设置 描述 默认值 允许的值
extensions.enabled 启用 UI 扩展 true true, false
extensions.autoUpdate 自动更新扩展(如果扩展清单启用) true true, false
extensions.models.autoDownload 启用自动下载模型 true true, false
extensions.models.classification 用于分类的 HuggingFace 模型 ID "Cohee/distilbert-base-uncased-go-emotions-onnx" 有效的模型 ID
extensions.models.captioning 用于图像字幕的 HuggingFace 模型 ID "Xenova/vit-gpt2-image-captioning" 有效的模型 ID
extensions.models.embedding 用于嵌入的 HuggingFace 模型 ID "Cohee/jina-embeddings-v2-base-en" 有效的模型 ID
extensions.models.speechToText 用于语音转文本的 HuggingFace 模型 ID "Xenova/whisper-small" 有效的模型 ID
extensions.models.textToSpeech 用于文本转语音的 HuggingFace 模型 ID "Xenova/speecht5_tts" 有效的模型 ID

服务器插件

设置 描述 默认值 允许的值
enableServerPlugins 启用服务器端插件 false true, false
enableServerPluginsAutoUpdate 在启动时尝试自动更新服务器插件 true true, false

API 集成设置

OpenAI 配置

设置 描述 默认值 允许的值
promptPlaceholder 空提示的默认消息 "[Start a new chat]" 任何字符串
openai.randomizeUserId 为 API 调用随机化用户 ID false true, false
openai.captionSystemPrompt 字幕完成的系统消息 "" 任何字符串

MistralAI 配置

设置 描述 默认值 允许的值
mistral.enablePrefix 启用回复预填充。前缀将在响应中回显 false true, false

Ollama 配置

设置 描述 默认值 允许的值
ollama.keepAlive 模型保持活动持续时间(秒) -1 -1(无限期),0(立即卸载),正整数
ollama.batchSize 控制生成请求的 "num_batch"(批量大小)参数 -1 -1(模型默认值),正整数

Claude 配置

**重要!**

请谨慎使用,仅在提示前缀是静态的且在请求之间不会更改时使用。{{random}} 宏、lorebooks、向量、摘要等可能会使缓存无效,您只会在缓存未命中上浪费金钱。行为可能不可预测,不会也不能提供任何保证。

参见:Prompt Caching

设置 描述 默认值 允许的值
claude.enableSystemPromptCache 启用系统提示缓存 false true, false
claude.cachingAtDepth 启用消息历史缓存 -1 -1(禁用),0 或正整数
claude.extendedTTL 使用 1h TTL 而不是默认的 5m。请注意,这也会增加请求的成本。 false true, false

Google AI Studio 配置

设置 描述 默认值 允许的值
gemini.apiVersion API 端点版本 v1beta v1beta, v1alpha

DeepL 配置

设置 描述 默认值 允许的值
deepl.formality 翻译正式程度 "default" "default", "more", "less", "prefer_more", "prefer_less"

来源、许可与维护

原文由 sillytaverncn.net 维护。本页面经站点运营方授权迁移并重新排版,不移除原文中的作者、贡献者和许可说明。

查看 完整许可与致谢、迁移与链接修复记录、上游文档贡献者及 SillyTavern 官方文档。原文中的第三方项目各自保留其权利。