文本转语音
SillyTavern 提供了丰富的 TTS(文本转语音)选项,可用于让语音朗读聊天中的部分内容。本页介绍其配置与使用方法。
配置 TTS
TTS 提供商选择
用于选择你想要使用的 TTS 服务。其中一些选项免费,一些需要付费订阅,还有一些可在你的 PC 上本地运行。
可用选项(列表可能会随时间变化):
- AllTalk - 免费、开源的本地安装方案,提供多种 TTS 引擎。设置说明请参阅 AllTalk 页面。
- Azure TTS - 与 Microsoft Edge 相同的语音。需要 Azure 账户和付费订阅。
- Coqui-TTS(已弃用)- 免费,需要 Extras API 才能运行。包含高性能的 Text2Speech 模型(Tacotron、Tacotron2、Glow-TTS、SpeedySpeech)以及 Bark。
- Edge - 免费,通过 Azure 运行。当在提供商中选择“Plugin”运行时,还需安装此服务器插件。另一个选项需要 Extras API(已弃用)才能运行。
- Electron Hub - 复用你的 Electron Hub API 密钥来访问云端语音(GPT-4o Mini TTS、Microsoft 神经语音等),并支持按模型控制。
- ElevenLabs - 需要付费订阅。请从 ElevenLabs 获取 API 密钥。
- Google Translate - 由 Google 提供的免费语音,每种语言各一个,质量差异较大。
- Google Gemini TTS - 需要从 Vertex AI 或 AI Studio 获取 API 密钥,使用 Gemini TTS 模型。
- Kokoro - 免费,使用 kokoro.js 在你的浏览器中本地运行模型。不过,某些浏览器在该设备选项下可能不支持 WebGPU。
- MiniMax - 需要从 MiniMax 获取 API 密钥。设置说明请参阅 MiniMax TTS 页面。
- Novel - 需要付费的 NovelAI 订阅,由 NovelAI 的 TTS 引擎生成。
- OpenAI - 需要付费的 API 密钥,使用 OpenAI 的 TTS 模型。
- Pollinations - 免费访问 OpenAI TTS 模型,但存在速率限制。官网。
- Silero - 免费,在你的 PC 上运行,质量差异较大。需要安装专用 API 服务器或使用 Extras API(已弃用)。
- System - 如果存在的话,使用你操作系统的 TTS 引擎。质量因操作系统而异。
- XTTS - 免费,需要安装专用 API 服务器。设置说明请参阅 XTTS 页面。
复选框
- Enabled - 打开/关闭 TTS 播放
- Auto Generation - 让 TTS 在新消息进入聊天时自动开始播放
- Only narrate "quotes" - 将 TTS 播放限制为仅包含
"引号"内的文本。这会*包含星号行内的 "quotes"*(内部变量名 =narrate_quoted_only) - Ignore *text, even "quotes", inside asterisks* - TTS 不会播放
*星号*内的任何文本,即使其中包含 "quotes"(内部变量名 =narrate_dialogues_only) - 同时勾选“仅朗读引号”和“忽略星号”复选框会导致 TTS 仅朗读不在星号内的 "quotes",并忽略其余所有内容。
- Narrate only the translated text - 这会让 TTS 仅朗读翻译后的文本。
- Apply regex - 在将文本发送给 TTS 提供商之前,对其应用提供的正则表达式。可用于从输入文本中移除不需要的部分,例如 TTS 引擎处理不佳的 emoji 或非母语字符。
给定示例文本:*Cohee approaches you with a faint "nya"* "Good evening, senpai", she says.
下表展示了该文本在 Ignore *text, even "quotes", inside asterisks* 与 Only narrate "quotes" 不同布尔状态组合下会如何被修改:
滑块
这些会根据你选择的 API 而变化。
按钮
- Apply - 在设置 TTS API 以及编辑语音映射之后必须点击此按钮。
- Refresh - 从所选 TTS API 重新加载语音列表。
- Available voices - 加载一个弹出窗口,显示所选 API 可用的所有语音,并允许你用示例对话进行预览。
使用 TTS
- 勾选 “Enable” 复选框,否则什么都不会发生。
- 如果你希望每次聊天中出现新消息时 TTS 都自动开始播放,请勾选 “Auto-generation” 复选框。
- 可选:点击任意消息右上角的扩音器图标,按需播放。
- 点击右下方的 “Stop” 按钮(位于魔法棒菜单内)可停止任何播放。
语音映射
你必须提供一个供 TTS 使用的语音映射,否则它将不知道为每个角色使用哪种语音。要设置语音映射,首先打开一个你想为其分配语音的角色的聊天,并且/或者选择一个要为其分配语音的用户人格,然后从下拉列表中选择某个 TTS 提供商列出的语音。如果你没有看到语音和/或角色列表,请确保你的 TTS 提供商已正确配置,并点击 “Refresh”。某些提供商(如 OpenAI-compatible 或 NovelAI)需要你手动填充语音列表。