跳到內容

文字轉語音(本機引擎)

TomoriBot 把語音視為自訂端點功能。本機引擎在 bot 之外以 HTTP 伺服器運行,並實作 POST /synthesize;複製引擎會收到文字加上設定好的參考音訊樣本,而支援 VoiceDesign 的引擎還能收到自然語言指示。

可用引擎

設定流程

  1. 從上面的卡片挑一個引擎,並從 servers/tts/ 設定它的包裝。
  2. /providers 中選擇 新增自訂端點,並使用 API 相容性 tts-clone
  3. 選取已儲存的端點,並用它的模型下拉選單加入它的 Speech 模型、語音來源模式與腳本標記風格。
  4. 開啟 /config > 模型 > 切換模型,選取註冊好的 Speech 模型。

人格語音流程

對複製引擎而言,請為每個人格加入並指派一個語音樣本:

  1. 準備一段乾淨、10 到 20 秒、只有一位說話者且沒有背景音樂的片段。
  2. 開啟 /config,在模型 > TTS 參數與語音 底下上傳該樣本。任何音訊格式都接受;TomoriBot 會將它轉成單聲道 WAV。
  3. 在引擎能因此受益時提供對應的逐字稿。Fish S2 Pro 會把儲存的參考逐字稿轉送進複製請求,而 VoxCPM2 會用它做更高保真度的 Ultimate Cloning。
  4. 開啟 /config,在人格 > 語音 底下選擇人格與語音樣本。

對 Qwen3-TTS、MOSS-VoiceGenerator、IrodoriTTS 或 VoxCPM2 VoiceDesign 而言,請跳過音訊樣本,改用 /config 中的人格 > 語音 為該人格儲存一段自然語言的語音描述。CosyVoice 3 使用帶參考樣本的複製模式,並透過 voice_instructions 接受單次的語氣指示。

使用 ElevenLabs 的人應該在 /providers 中選擇 新增供應商ElevenLabs,它會同時註冊語音與轉錄端點。

TomoriBot 會在合成之前,從生成的語音腳本中移除 Discord 自訂表情符號語法,例如 :pepega:<:pepega:123456789012345678>。Unicode 表情符號同樣會被移除,除非語音端點使用表情符號標記,那是為 IrodoriTTS 設計的。當某個端點的腳本標記風格設為 方括號標籤 時,例如 Chatterbox Turbo 與 Fish S2 Pro,方括號標籤會被保留。

VoxCPM2 使用 純文字 腳本標記風格。它的語音設計與說話風格控制會透過 TomoriBot 的 instruct 欄位傳遞,而 VoxCPM2 的包裝會將它們轉成該模型原生的括號自然語言控制語法。

CosyVoice 3 同樣使用 純文字 腳本標記風格。它將有逐字稿的參考對應到零樣本複製、沒有逐字稿的參考對應到跨語言複製,並將 voice_instructions 對應到它的指示條件路徑。行內的方括號標籤會被移除,因為 CosyVoice 的指示適用於整段語句。

引擎比較

若要逐項對照實測延遲基準、音訊試聽播放,以及比較所有支援 sidecar 的詳細功能矩陣,請看 TTS 引擎比較