ai-voice-cloning
作者 inferen-shai-voice-cloning 是一個基於 inference.sh 的技能,讓你可以從 CLI 執行 AI 語音產生、文字轉語音(TTS)以及語音複製。它包裝了 ElevenLabs、Kokoro TTS、DIA、Chatterbox、Higgs 和 VibeVoice 等模型,適合用於自然語音、多角色旁白,以及各種影音專案的語音轉換。
概覽
什麼是 ai-voice-cloning?
ai-voice-cloning 是一個以 CLI 為核心的 AI 語音產生與語音複製技能,建構在 inference.sh 平台之上。它讓你可以從命令列呼叫文字轉語音與語音轉換模型,包括 ElevenLabs、Kokoro TTS、DIA、Chatterbox、Higgs 和 VibeVoice。
此技能定義在 inferen-sh/skills 儲存庫中,設計用來嵌入到可以透過 infsh(inference.sh CLI)呼叫 Bash 的 Agent 工作流程。它著重在產生自然聽感的語音,以及轉換既有的語音錄音,而不是用於模型訓練或資料集管理。
主要功能
- 從 CLI 執行文字轉語音(TTS),使用
infsh app run ... - 多種 AI 語音模型一次整合(例如
elevenlabs/tts、infsh/kokoro-tts) - 透過 ElevenLabs Voice Changer 進行語音複製 / 語音變聲
- 支援多種聲線與語言(依 ElevenLabs 模型的官方說明)
- 長篇旁白,適合配音、有聲書與 Podcast
- 使用針對自然語音調校的模型,提供對話感與表情豐富的朗讀
由於 ai-voice-cloning 是一個「技能定義」,而非獨立 App,你會透過 inference.sh CLI,以及任何被允許執行 Bash 指令的 Agent 或工具來與它互動。
誰適合使用 ai-voice-cloning?
這個技能特別適合:
- 處理音訊或影音,需要快速且可腳本化的語音產生
- 建置需要說話或旁白能力的 AI agents、CLI 工具或自動化流程
- 製作 配音、解說影片、教學內容或訓練影片
- 想要在同一個 CLI 下使用 ElevenLabs 等高品質聲音與其他專門 TTS 模型
- 喜歡 命令列工作流程,不偏好純網頁 GUI
以下情境就不那麼適合:
- 需要完全圖形介面、完全不碰 CLI
- 想從原始音訊資料集自行訓練客製模型(這個技能沒有涵蓋)
- 需要完全在瀏覽器內或裝置端離線運作,而不呼叫 inference.sh 服務
常見使用情境
- 為 YouTube 或行銷影片產生旁白音軌
- 將文字腳本轉成 有聲書或 Podcast 語音
- 為對話與劇情設計多個 角色聲線
- 使用 ElevenLabs Voice Changer 對既有錄音進行 語音變聲
- 為 Agents、Bots 或互動工具加入 語音提示與系統聲音
使用方式
1. 先決條件與安裝方式
要使用 ai-voice-cloning,你需要:
- 可使用的 inference.sh CLI(
infsh) - 能連線到 inference.sh API 的網路環境
- 可執行 Bash 指令的 Shell 環境
你可以透過以下指令,把這個技能整合到你的 Agent 環境:
npx skills add https://github.com/inferen-sh/skills --skill ai-voice-cloning
這會從 inferen-sh/skills 抓取技能定義並註冊,讓你的 Agent 可以呼叫相關工具(尤其是搭配 infsh 的 Bash)。
若要在 Agent 以外、直接在 CLI 使用,需先安裝 inference.sh CLI 本身。此技能的 SKILL.md 連結到 CLI 安裝說明:
https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md
請依照該文件的步驟在你的系統上安裝 infsh。
2. 登入 inference.sh
安裝好 infsh 之後,先進行驗證:
infsh login
依照指示登入或設定認證資訊,詳細流程可參考 CLI 安裝指南中的說明。
3. 快速上手:使用 Kokoro TTS 產生語音
SKILL.md 提供了一個簡單的 Kokoro TTS 範例。登入後,你可以用以下指令產生語音:
infsh app run infsh/kokoro-tts --input '{
"prompt": "Hello! This is an AI-generated voice that sounds natural and engaging.",
"voice": "af_sarah"
}'
這個指令會:
- 呼叫
infsh/kokoro-ttsApp - 傳入包含
prompt(要朗讀的文字)與voice(聲音選擇)的 JSON - 產生合成語音作為輸出(輸出檔案位置或串流方式可參考 CLI 文件)
你可以依照相同模式替換不同的文字內容與支援的聲線。
4. 使用不同模型(ElevenLabs、DIA 等)
SKILL.md 在 Available Models 表格中列出可用模型。從目前公開內容可以預期類似以下項目:
- ElevenLabs TTS – App ID:
elevenlabs/tts - ElevenLabs Voice Changer – App ID:
elevenlabs/voice-changer - Kokoro TTS – App ID:
infsh/kokoro-tts - DIA – App ID 以
infsh/dia-...開頭 - 其他模型例如 Chatterbox、Higgs、VibeVoice 也在技能描述中被提及
若要改用不同的 App,只要在 CLI 指令中換掉 App ID 即可。例如,使用 ElevenLabs 進行 TTS 的典型用法可能是:
infsh app run elevenlabs/tts --input '{
"text": "This audio was generated using the ai-voice-cloning skill.",
"voice": "some_voice_id"
}'
請參考儲存庫文件及各模型的 README(若有提供),確認每個 App 的輸入欄位格式;不同模型可能會使用 prompt、text、voice_id 等不同欄位名稱。
5. 使用 ElevenLabs Voice Changer 進行語音變聲 / 語音複製
此技能描述中特別包含 ElevenLabs Voice Changer(App ID elevenlabs/voice-changer),用來轉換既有錄音。典型的 CLI 呼叫流程會:
- 指定一個輸入音訊檔(你的原始錄音)
- 設定目標聲線或相關參數
- 產出轉換後的音訊檔
通用的呼叫範例類似:
infsh app run elevenlabs/voice-changer --input '{
"audio_url": "https://.../your-input-audio.wav",
"voice": "target_voice_id"
}'
請查閱 inference.sh 上該 App 的文件,以確認實際支援的欄位與音訊格式。
6. 將 ai-voice-cloning 整合到 Agents 中
當你使用 npx skills add 新增 ai-voice-cloning 技能後,只要平台支援 inferen-sh/skills 格式,Agent 就能:
- 知道 Bash(infsh *) 是允許使用的工具之一
- 以
SKILL.md中的說明與範例為使用參考 - 自動生成適當的
infsh app run ...指令,用於建立或轉換音訊
若要為你的 Agent 更細緻調校行為:
- 開啟
tools/audio/ai-voice-cloning目錄中的SKILL.md。 - 檢視範例、可用模型列表以及使用情境備註。
- 在你的 Agent 設定或編排層中加入自訂的 prompt 模板、聲線選擇或後處理流程。
7. 儲存庫中值得查看的檔案
若想更深入了解此技能的定義方式與建議用法,可以查看:
tools/audio/ai-voice-cloning/SKILL.md– 核心說明、快速上手與模型列表- 儲存庫根目錄文件,如
README.md和cli-install.md– 一般 inference.sh 與 CLI 設定指南
在 tools 資料夾中也可能有其他相關文件,提供更廣泛的工具背景。
常見問題(FAQ)
ai-voice-cloning 是獨立 App 還是技能定義?
ai-voice-cloning 是 inferen-sh/skills 儲存庫中的一個技能定義。它描述了 Agent 如何透過 inference.sh CLI(infsh)來進行 AI 語音產生與語音複製。你不會得到一個圖形介面 App,而是獲得一套從命令列,或可執行 Bash 的 Agent 工作流程中,呼叫 TTS 與語音變聲模型的明確方式。
使用 ai-voice-cloning 需要先安裝什麼?
你需要:
- 已在 Shell 環境中安裝並可呼叫的 inference.sh CLI(
infsh) - 已設定好的 inference.sh 驗證(透過
infsh login完成) - 一個允許執行 Bash 指令的環境(例如本機終端機,或開放 Bash 的 Agent 執行環境)
如果你是要整合到支援 skills 格式的 Agent 平台,可選擇用以下方式安裝技能:
npx skills add https://github.com/inferen-sh/skills --skill ai-voice-cloning
支援哪些 AI 語音模型?
從技能描述與 SKILL.md 來看,ai-voice-cloning 設計用來搭配 inference.sh 上的多個模型,包括:
- ElevenLabs TTS –
elevenlabs/tts - ElevenLabs Voice Changer –
elevenlabs/voice-changer - Kokoro TTS –
infsh/kokoro-tts - DIA 系列 TTS Apps(App ID 以
infsh/dia-...開頭) - 其他如 Chatterbox、Higgs、VibeVoice 等,在描述中亦有提及
實際可用模型與參數,請以 SKILL.md 中的 Available Models 表格及 inference.sh 官方文件為準。
ai-voice-cloning 能處理長篇旁白嗎?
可以。此技能明確標示適合用於長篇旁白,例如有聲書、Podcast 和影片配音。不過,長篇內容實際處理細節(像是如何分段、最大文字長度與串接方式),會依各模型限制與 inference.sh 執行環境而定。若你要處理非常長的腳本,建議先以較短段落測試,並參考各模型文件。
這和直接使用 ElevenLabs 或其他供應商有什麼不同?
ai-voice-cloning 的特色在於:
- 以 inference.sh CLI 作為統一介面
- 讓你能在相似的
infsh app run ...指令下,切換多個 TTS 與語音變聲模型 - 自然整合到 Agent 技能、Bash 腳本與自動化流程
如果你已經直接使用某家供應商的原生 API,ai-voice-cloning 仍然有價值,特別是在你希望:
- 透過單一 CLI 同時抽象多家供應商與多種模型
- 更容易整合進 支援 skills 格式的 Agent 框架 時
ai-voice-cloning 支援即時串流音訊嗎?
目前 SKILL.md 範例主要著重在批次式的 infsh app run ... 指令,並未明確說明即時串流能力。有無支援低延遲或即時串流,取決於 inference.sh 上各個 App 的功能,而不是這個技能包裝本身。若你的應用需要即時輸出,請查閱你計畫使用的各個模型在 inference.sh 上的文件。
ai-voice-cloning 的輸出音訊格式是什麼?
實際輸出格式(例如 wav、mp3)與傳遞方式(本機檔案、URL 等),由底層的 inference.sh Apps 決定,例如 infsh/kokoro-tts 或 elevenlabs/tts。這個技能本身不會強制指定特定音訊格式,它主要是定義 Agents 如何呼叫這些模型。請參考各 App 的文件,或直接執行測試指令,了解預設輸出行為。
什麼情況下 ai-voice-cloning 不太適合?
以下情境你可能會需要別的方案:
- 你想要 完全不碰 CLI、只在瀏覽器操作的工作流程
- 你需要 離線、裝置端的 TTS,不透過外部 API
- 你的首要目標是從大量資料訓練 自有客製模型,而不是使用現成聲線
這些情況可以考慮有內建 TTS 外掛的桌面 DAW,或專門的裝置端 TTS 函式庫。如果你的需求重點是透過 CLI 或 Agents 進行腳本化、自動化的 AI 語音產生,ai-voice-cloning 會是很適合的選擇。
哪裡可以進一步了解設定與進階用法?
建議從以下幾個地方開始:
inferen-sh/skills儲存庫中的tools/audio/ai-voice-cloning/SKILL.mdSKILL.md中提到的 CLI 安裝文件:cli-install.md- inference.sh 上各 App 的模型專屬文件,例如
infsh/kokoro-tts或elevenlabs/tts
這些資源會提供最新版的指令範例、參數列表和使用說明,補充本頁快速上手內容。
