Important
這裡的資訊可能已經過時或不完整,僅供您參考。請使用英文版本以取得最新資訊。
SillyTavern 提供一個統一的前端介面,整合多種大型語言模型的 API(包括:KoboldAI/CPP、Horde、NovelAI、Ooba、Tabby、OpenAI、OpenRouter、Claude、Mistral 等)。同時具備行動裝置友善的佈局、視覺小說模式(Visual Novel Mode)、Automatic1111 與 ComfyUI 的影像生成 API 整合、TTS(語音合成)、世界資訊(Lorebook)、可自訂 UI、自動翻譯功能,以及強大的提示詞(prompt)設定選項和無限的第三方擴充潛力。
我們擁有一個 官方文件網站 可以幫助解答絕大多數的使用問題,並幫助您順利入門。
SillyTavern(簡稱 ST)是一款本地安裝的使用者介面,讓您能與大型語言模型(LLM)、影像生成引擎以及語音合成模型互動的前端。
SillyTavern 起源於 2023 年 2 月,作為 TavernAI 1.2.8 的分支版本發展至今。目前已有超過 100 位貢獻者,並擁有超過兩年的獨立開發歷史。如今,它已成為 AI 愛好者中備受推崇的軟體之一。
- 我們致力於賦予使用者對 LLM 提示詞的最大控制權與實用性,並認為學習過程中的挑戰是樂趣的一部分
- 我們不提供任何線上或託管服務,也不會程式化追蹤任何使用者數據。
- SillyTavern 是由一群熱衷於 LLM 的開發者社群所打造的熱情專案,並將永遠保持免費與開源。
SillyTavern 採用雙分支開發模式,確保為所有使用者提供流暢的使用體驗。
release
(穩定版):🌟 推薦給大部分的使用者使用。 此分支最為穩定,僅在主要版本發布時更新。適合大多數人,通常每月更新一次。staging
(開發版):⚠️ 不建議普通使用者使用。 此分支包含最新功能,但可能隨時出現問題。適合進階使用者與愛好者,每日多次更新。
如果您不熟悉 git CLI 或對分支概念不清楚,請放心對您來說,release
(穩定版)分支永遠是首選。
由於 SillyTavern 僅是一個介面,您需要一個 LLM 後端來提供推理能力。您可以使用 AI Horde 以立即開始聊天。此外,我們支持許多其他本地和雲端 LLM 後端,例如 OpenAI 兼容 API、KoboldAI、Tabby 等。更多支持的 API 資訊,請參閱 常見問題。
SillyTavern 的硬體需求相當低。任何能夠運行 NodeJS 18 或更高版本的設備都可以執行。若您打算在本地機器上進行 LLM 推理,我們建議使用擁有至少 6GB VRAM 的 3000 系列 NVIDIA 顯示卡。更多詳細資訊,請參考您使用的後端文檔。
- AI Horde:使用志願者託管的模型,無需進一步設定
- KoboldCpp:社群推崇的選擇,可在本地運行 GGUF 模型
- tabbyAPI:一個流行且輕量的本地託管 exl2 推理 API
- OpenRouter:提供多個雲端 LLM 提供商(如 OpenAI、Claude、Meta Llama 等)及熱門社群模型的單一 API
加入我們的 Disocrd 伺服器 以獲得技術支援、分享您喜愛的角色與提示詞。 |
---|
或直接聯繫開發者:
- Discord: cohee, rossascends, wolfsblvt
- Reddit: /u/RossAscends, /u/sillylossy, u/Wolfsblvt
- 提交 GitHub 問題
- 提交拉取要求(Pull Request):想了解如何貢獻,請參閱 CONTRIBUTING.md。
- 提供功能建議與問題報告:使用本專案所提供的模板提交建議或問題報告。
- 仔細閱讀此 README 文件及相關文檔:請避免提出重複問題或建議。
SillyTavern 的核心概念是「角色卡」(Character Cards)。角色卡是一組設定 LLM 行為的提示詞,用於 SillyTavern 中進行持續性對話。其功能類似於 ChatGPT 的 GPT 或 Poe 的聊天機器人。角色卡的內容可以是任何形式:抽象場景、針對特定任務設計的助手、知名人物,或者虛構角色。
角色卡中唯一必填的項目是名稱欄位。若想與語言模型開始一般對話,您只需創建一個名稱為「Assistant」的新卡片,其餘欄位皆可保持空白。若希望進行更具主題性的對話,則可以提供語言模型背景資訊、行為模式、寫作風格以及特定情境來啟動聊天。
如果您僅想進行快速對話而不選擇角色卡片,或想測試 LLM 的連線,則可在打開 SillyTavern 後,於歡迎頁面的輸入欄位中直接輸入您的提示內容。請注意,這類對話是暫時的,不會被永久保存。
若想了解如何設定角色卡,可參考預設角色(如 Seraphina)或從「下載擴充功能 & 資源」(Download Extensions & Assets)選單中下載社群製作的角色卡。
- 進階文本生成設定:內含許多社群製作的預設設定
- 支援世界資訊(World Info):創建豐富的背景故事,或節省角色卡片中的 Token(符記)使用
- 群組聊天:多角色聊天室,可讓角色與您或彼此對話
- 豐富的 UI 自定義選項:主題顏色、背景圖片、自定義 CSS 等
- 使用者設定:讓 AI 更了解您並提升沉浸感
- 內建 RAG 支持:可將文檔加入對話,供 AI 參考
- 強大的聊天指令子系統:內含 腳本引擎(Scripting Engine)
SillyTavern 支持多種擴充功能。
- 角色情感表達:使用視覺圖片(立繪)呈現情緒表達
- 聊天記錄自動摘要
- 自動化介面與聊天翻譯
- 穩定擴散(Stable Diffusion)、FLUX 和 DALL-E 的影像生成整合
- 語音合成:AI 回應訊息可透過 ElevenLabs、Silero 或系統 TTS 語音合成
- 網頁搜尋功能:為提示詞添加真實世界的上下文資訊
- 更多擴展:可從「下載擴充功能 & 資源」(Download Extensions & Assets)選單中下載
想了解如何使用這些擴充功能,請參考:官方說明文件
Warning
- 請勿將程式安裝到 Windows 的系統控制資料夾(如 Program Files、System32 等)
- 請勿以管理員權限執行 Start.bat
- 無法在 Windows 7 系統上安裝,因為它無法執行 NodeJS 18.16
- 安裝 NodeJS(建議使用最新的 LTS 版本)
- 安裝 Git for Windows
- 打開 Windows 檔案總管(
Win+E
) - 創建/使用一個不受 Windows 系統控制或監控的資料夾(例如:C:\MySpecialFolder\)
- 在該資料夾內開啟命令提示字元(Command Prompt):點擊地址欄,輸入
cmd
並按下 Enter - 當命令提示字元黑框彈出時,輸入以下其中一條指令後,按下 Enter:
- 安裝 Release(穩定版)分支:
git clone https://github.com/SillyTavern/SillyTavern -b release
- 安裝 Staging(開發板)分支:
git clone https://github.com/SillyTavern/SillyTavern -b staging
- 當程式碼下載完成後,雙擊
Start.bat
,NodeJS 將自動安裝所需的依賴項 - 本地伺服器啟動後,SillyTavern 將自動在您的瀏覽器中打開
(此方式僅允許通過 GitHub Desktop 使用 git。如果您也希望在命令列中使用 git
,則需額外安裝 Git for Windows)
- 安裝 NodeJS(建議使用最新的 LTS 版本)
- 安裝 GitHub Desktop
- 安裝完成後,打開 GitHub Desktop,點擊
Clone a repository from the internet....
(注意:此步驟 無需創建 GitHub 帳號。) - 在彈出選單中,點擊「URL」選項,輸入此網址:
https://github.com/SillyTavern/SillyTavern
,然後點擊「Clone」。您可以更改「Local path」來選擇 SillyTavern 的下載位置 - 若想開啟 SillyTavern,需使用 Windows 檔案總管以進入您複製儲存庫的資料夾。預設位置為:
C:\Users\[您的 Windows 使用者名稱]\Documents\GitHub\SillyTavern
- 雙擊
start.bat
文件。(請注意:若您的作業系統隱藏了.bat
副檔名,該文件可能顯示為「Start
」。這就是您需要雙擊運行的文件。) - 雙擊後,將會彈出一個大型黑色的命令提示字元視窗,SillyTavern 會開始安裝其運行所需的文件與依賴
- 安裝完成後,若一切正常,命令提示字元視窗應顯示運行中的訊息,且您的瀏覽器會自動打開 SillyTavern 頁籤
- 連接到任何 SillyTavern 支援的 APIs 並開始聊天吧!
對於 MacOS 和 Linux 系統,所有操作都將在終端機(Terminal)中完成。
- 安裝 git 和 NodeJS(具體方法因操作系統而異)
- 複製儲存庫(Clone the repo):
- 安裝 Release(穩定版)分支:
git clone https://github.com/SillyTavern/SillyTavern -b release
- 安裝 Staging(開發板)分支:
git clone https://github.com/SillyTavern/SillyTavern -b staging
- 使用命令
cd SillyTavern
以進入安裝資料夾 - 使用以下其中一條命令,以執行
start.sh
腳本:
./start.sh
bash start.sh
SillyTavern Launcher 是一個安裝嚮導,協助您設定多種選項,包括安裝本地推理(inference)的後端。
- 在鍵盤上按下
WINDOWS + R
打開「執行」對話框,然後輸入以下指令以安裝 git:
cmd /c winget install -e --id Git.Git
- 在鍵盤上按下
WINDOWS + E
打開檔案總管,導航至您想要安裝 Launcher 的資料夾。在目標資料夾的地址欄輸入cmd
並按下 Enter。接著執行以下命令:
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
- 打開您喜歡的終端機(Terminal),安裝 git
- 使用以下指令以複製 Sillytavern-Launcher:
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
- 執行安裝腳本(installer.sh):
chmod +x install.sh && ./install.sh
- 安裝完成後,執行啟動腳本(launcher.sh):
chmod +x launcher.sh && ./launcher.sh
- 打開終端機(Terminal),並使用以下指令安裝 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 使用 Homebrew 以安裝 git:
brew install git
- 使用以下指令以複製 Sillytavern-Launcher:
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
- 執行安裝腳本(installer.sh):
chmod +x install.sh && ./install.sh
- 安裝完成後,執行啟動腳本(launcher.sh):
chmod +x launcher.sh && ./launcher.sh
以下指南已假設您安裝 Docker,能夠訪問命令列進行容器安裝,並熟悉 Docker 的基本使用。
我們提供了一份完整的 SillyTavern Docker 使用指南。該指南涵蓋了 Windows、macOS 和 Linux 的安裝過程。若您希望自行構建映像,建議先閱讀該文檔。
您需要設定兩個必要的目錄映射(directory mappings)和一個端口映射(port mapping)來使 SillyTavern 正常運行。在執行指令時,請將以下佔位符替換為您的實際配置:
- [config]:用於存放 SillyTavern 設定文件的本地資料夾
- [data]:用於存放 SillyTavern 使用者數據(包括角色)的本地資料夾
- [plugins](可選):用於存放 SillyTavern 擴充功能的本地資料夾
- [PublicPort]:對外流量的訪問端口。這是必需的,因為您將從虛擬機容器外部訪問實例。除非實施了額外的安全服務,否則請勿將此端口暴露於網路
- [DockerNet]:容器應連接的 Docker 網路。如果您不熟悉此概念,請參閱 Docker 官方說明文件
- [version]:在 GitHub 頁面的右側,您可以找到「Packages」。選擇「sillytavern」包,然後查看映像版本。「latest」標籤會使您保持與當前版本同步。您也可以選擇「staging」或「release」標籤,但這可能不適用於依賴擴充功能的使用者,因為擴充功能可能需要時間進行更新
- 打開命令列(Command Line)
- 執行以下指令:
docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'
請注意:默認的監聽端口為 8000。如果您在設定文件中更改了此端口,請務必使用適當的端口號
Note
雖然您可以在 Android 設備上使用 Termux 直接運行 SillyTavern,但這不在我們的官方支持範圍內。
請參閱 ArroganceComplex#2659 所提供的指南:
不支援:Android ARM LEtime-web。 32 位 Android 系統需要額外的依賴項,這無法通過 npm 安裝。請使用以下命令安裝:pkg install esbuild
。完成後,請按照普通的安裝步驟進行操作
SillyTavern 將您的 API 金鑰(Keys)保存在使用者數據目錄中的 secrets.json
文件內(默認路徑為/data/default-user/secrets.json
)
默認情況下,API 金鑰在您保存並重新載入頁面後,將不會自介面中顯示
如需啟用查看金鑰功能:
- 在
config.yaml
文件中,將allowKeysExposure
的「值」設為true
- 重新啟動 SillyTavern 伺服器
- 點擊 API 連線頁面右下角的「查看隱藏的 API 金鑰(View hidden API keys)」超連結
您可以在啟動 SillyTavern 伺服器時傳遞命令列參數,以覆蓋 config.yaml
文件中的某些設定。
node server.js --port 8000 --listen false
# or
npm run start -- --port 8000 --listen false
# or(僅適用於 Windows)
Start.bat --port 8000 --listen false
Option | Description | Type |
---|---|---|
--version |
顯示版本序號 | boolean |
--enableIPv6 |
啟用 IPv6 | boolean |
--enableIPv4 |
啟用 IPv4 | boolean |
--port |
設定 SillyTavern 運行的端口。若未提供,則預設使用 config.yaml 中的 'port' |
number |
--dnsPreferIPv6 |
偏好使用 IPv6 解析 DNS。未提供則默認使用 config.yaml 中的 'preferIPv6' |
boolean |
--autorun |
自動在瀏覽器中啟動 SillyTavern。未提供則默認使用 config.yaml 中的 'autorun' |
boolean |
--autorunHostname |
自動啟動時的主機名稱,通常建議保持為 'auto' | string |
--autorunPortOverride |
覆蓋自動啟動的端口設定 | string |
--listen |
SillyTavern 是否可監聽所有網路接口。若未提供,則默認使用 config.yaml 中的 'listen' |
boolean |
--corsProxy |
啟用 CORS 代理。若未提供,則默認使用 config.yaml 中的 'enableCorsProxy' |
boolean |
--disableCsrf |
停用 CSRF 保護 | boolean |
--ssl |
啟用 SSL | boolean |
--certPath |
設定您證書文件的路徑 | string |
--keyPath |
設定您私人金鑰文件的路徑 | string |
--whitelist |
啟用白名單模式 | boolean |
--dataRoot |
設定數據儲存的根目錄 | string |
--avoidLocalhost |
在自動模式下避免使用 'localhost' | boolean |
--basicAuthMode |
啟用基本身份驗證模式 | boolean |
--requestProxyEnabled |
啟用代理以處理外部請求 | boolean |
--requestProxyUrl |
設定請求代理的 URL(支持 HTTP 或 SOCKS 協議) | string |
--requestProxyBypass |
請求代理的例外主機清單(主機列表需以空格分隔) | array |
遠端連線功能最常用於希望在手機上使用 SillyTavern 的使用者。此時伺服器將由同一 Wi-Fi 網路上的 PC 運行。不過,您也可以設定來自其他網路的遠端連線。
詳細設定指南請參閱 官方說明文件。
您還可以選擇設定 SillyTavern 的使用者檔案,並開啟密碼保護(可選):使用者設定指南。
- 在「使用者設定」選單(設定介面主題)中,禁用模糊效果(Blur Effect),並開啟「減少動畫效果」(Reduced Motion)
- 若使用響應串流傳輸,請將串流的 FPS 設定為較低的值(建議設定為 10-15 FPS)
- 確保瀏覽器已啟用 GPU 加速以進行渲染
本程式(SillyTavern)的發布是基於其可能對使用者有所幫助的期許,但不提供任何形式的保證;包括但不限於對可銷售性(marketability)或特定用途適用性的隱含保證。如需更多詳情,請參閱 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.
- TavernAI 1.2.8 由 Humi 提供:MIT 許可
- 經授權使用部分來自 CncAnon 的 TavernAITurbo 模組
- 視覺小說模式(Visual Novel Mode)的靈感,來源於 PepperTaco 的貢獻(https://github.com/peppertaco/Tavern/)
- Noto Sans 字體由 Google 提供(OFL 許可)
- 主題圖示由 Font Awesome https://fontawesome.com 提供(圖示:CC BY 4.0,字體:SIL OFL 1.1,代碼:MIT 許可)
- 預設資源來源於 @OtisAlejandro(包含角色 Seraphina 與知識書)與 @kallmeflocc(SillyTavern 官方 Discord 伺服器成員突破 10K 的慶祝背景)
- Docker 安裝指南由 @mrguymiah 和 @Bronya-Rand 編寫