dialogue-audio
作者 inferen-sh透過 inference.sh CLI 結合 Dia TTS 與 ElevenLabs,生成逼真的多說話者對話音訊。dialogue-audio 技能可協助你掌控說話者、情緒、節奏與對話流暢度,適用於 Podcast、有聲書、解說內容、角色場景以及其他各種對話型內容。
概觀
dialogue-audio 技能能做什麼
dialogue-audio 技能會將文字對話轉換為自然的多說話者音訊,透過 inference.sh (infsh) CLI 呼叫 Dia TTS,並在後端支援 ElevenLabs 等級的語音品質。
它特別適合用在:
- 兩個角色的對話
- 類 Podcast 的訪談或雙人對談
- 有聲書中輪流發言的場景
- 主持人/來賓形式的解說內容
- 角色對話與聲演原型
此技能特別聚焦在:
- 透過簡單標籤如
[S1]、[S2]做 說話者區分 - 在同一工作階段中維持每位說話者的 穩定聲線
- 透過用字與標點來控制 情緒與表達
- 調整對話的 節奏與來回互動的流暢度
- 提供 後製整合指引,協助你將音訊納入既有媒體工作流程
如果你希望用命令列將雙人對話腳本自動轉成精緻的對話音訊,dialogue-audio 就是為這種使用情境設計的。
適合哪些人使用
如果你是以下這類使用者,這個技能會相當合適:
- 想要撰寫或模擬對話的 Podcaster
- 需要在時間軸上加入配音軌的 音訊製作人 或 影像剪輯師
- 創作大量對話場景的 作者 或 編劇
- 偏好 CLI 與可重現流程的 開發者 或 自動化導向創作者
如果你有以下需求,此技能就 不那麼適用:
- 在單次生成中需要 兩位以上的說話者
- 希望自動完成複雜音效設計、配樂或混音
- 想用滑鼠操作的 GUI,而不是命令列工具
若有上述需求,你可能需要額外搭配 DAW 工具或多說話者 TTS 服務,再使用 dialogue-audio 來製作核心的雙聲道對話音軌。
需求條件一覽
要有效運用 dialogue-audio,你需要:
- 能使用 inference.sh CLI(
infsh) - 一個終端機或命令列環境(macOS、Linux,或具 shell 的 Windows)
- 對編輯文字 prompt 與執行 CLI 指令有基本概念
使用方式
1. 安裝 dialogue-audio 技能
你可以透過 npx 將 dialogue-audio 技能新增到 Agent 環境中:
npx skills add https://github.com/inferen-sh/skills --skill dialogue-audio
這會從 inferen-sh/skills 儲存庫抓取 dialogue-audio 的設定,並將它設為可重複使用的工作流程。
接著,先確認你已安裝 inference.sh CLI(infsh)。請依照官方說明安裝:
- CLI 安裝說明:
https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md
安裝完成後,先進行登入驗證:
infsh login
2. 理解核心工作流程
在核心流程中,dialogue-audio 會透過 infsh 呼叫 Dia TTS app:
infsh app run falai/dia-tts --input '{
"prompt": "[S1] Have you tried the new feature yet? [S2] Not yet, but I heard it saves a ton of time. [S1] It really does. I cut my workflow in half. [S2] Okay, I am definitely trying it today."
}'
這個指令會:
- 呼叫
falai/dia-tts這個 app - 傳送含有
prompt的 JSON 輸入 - 使用
[S1]和[S2]標記每次說話者輪替 - 回傳整段互動的 對話音訊
而 dialogue-audio 技能則將這個模式包裝成一個有主見的工作流程,幫助你更好地結構 prompt、乾淨處理雙說話者,並反覆微調表情與節奏。
3. 正確使用說話者標籤
Dia TTS 依賴 說話者標籤 判斷發言人:
[S1]— 說話者 1(會自動對應到 voice A)[S2]— 說話者 2(會自動對應到 voice B)
關鍵規則:
- 每一輪發言都要從對應標籤開始
- 標籤必須是 大寫:
[S1],[S2](不要用[s1]或[speaker1]) - 單次生成最多 2 位說話者
- 每位說話者在同一工作階段內會保持 聲線一致
以下是乾淨、雙人對話 prompt 的範例:
[S1] Welcome back to the show. Today we are talking about productivity hacks.
[S2] I am excited for this. Some of these tricks saved me hours every week.
[S1] Let’s start with batching tasks. Why does it work so well?
[S2] Because you stay in the same mental mode instead of constantly context switching.
4. 調整情緒、語氣與節奏
dialogue-audio 鼓勵你透過 自然的寫作線索 影響生成出來的語音表現:
- 使用 標點符號(逗點、省略號、驚嘆號等)來塑造 停頓與強調
- 用較 短的句子,營造更快節奏、俐落的對話
- 用較 長的語句 或描述性文字,營造沈穩、反思感較重的語氣
- 可適度在括號中加入 舞台指示 暗示情緒,例如:
[S1] (laughing softly) I honestly did not expect that to work.
[S2] Me neither, but I am glad we tried.
試著做些小修改並重跑指令,就能聽出語氣與節奏是如何改變的。
5. 反覆打磨對話流暢度
想讓 dialogue-audio 的成果更好,可以這樣操作:
- 先在文字編輯器裡把整段對話寫完整
- 確認每一行都標對標籤,避免多餘或遺漏的標籤
- 讓每輪發言 精簡有力;過長的獨白聽起來會比較不口語
- 複雜場景可以拆成 多次生成,之後在編輯器中剪接串起來
你可以不斷微調 prompt,然後重跑 infsh app run falai/dia-tts 指令,直到時間節奏與情緒氛圍符合你的專案需求為止。
6. 後製與整合
Dia TTS 的輸出是一個音訊檔,你可以匯入日常使用的製作工具。dialogue-audio 的重點在 語音生成,不是完整混音,但你可以:
- 將生成的對話匯入 DAW(例如 Audacity、Reaper、Logic Pro)
- 加上 背景音樂、音效 或環境音
- 調整音量、EQ、壓縮等,讓整體聲音更一致
- 在 Premiere Pro、Final Cut 或 DaVinci Resolve 等剪輯軟體中,將對話軌與 影片 對齊
因此 dialogue-audio 很適合作為大型音訊或影音流程中的基礎積木:先生成多說話者表演音軌,再用你的既有工具做最後潤飾。
7. 儲存庫中值得查看的檔案
安裝完成後,你可以到 inferen-sh/skills 儲存庫中查看技能定義,以掌握更多背景資訊:
SKILL.md— dialogue-audio 工作流程的主要說明、快速上手與使用備註
在調整設定、串接自動化或 CI 流程時,可以把這些檔案當作參考。
常見問題(FAQ)
dialogue-audio 是否只能支援兩位說話者?
是。透過 Dia TTS,dialogue-audio 技能設計為 每次生成最多兩位說話者,並使用 [S1] 與 [S2] 標籤。如果你的場景有更多角色,可以:
- 每次只聚焦其中兩位來生成,或
- 將腳本切成多段對話片段,分別生成後再於後製階段合併。
使用 dialogue-audio 一定要安裝 inference.sh CLI 嗎?
是。dialogue-audio 技能依賴 inference.sh CLI(infsh)。你必須先安裝 CLI、執行 infsh login,再用 infsh app run falai/dia-tts 搭配你的 prompt 呼叫。若沒有 infsh,就無法從這個工作流程中存取底層的 Dia TTS app。
我可以為每位說話者指定特定的 ElevenLabs 聲音嗎?
依據儲存庫文件說明,系統會為每位說話者 自動分配 聲音:[S1] 對應一種聲音,[S2] 對應另一種聲音,且在同一工作階段內會保持一致。此技能目前沒有記載可直接手動為每位說話者選聲音,因此請假設聲線選擇是由 Dia TTS / inference.sh 設定決定,而不是透過在 prompt 中填入明確的 voice ID。
我要怎麼控制對話中的情緒或強度?
對於情緒表現,dialogue-audio 主要依靠 prompt 設計 和 標點符號,而不是獨立的情緒滑桿。你可以:
- 使用更具表情的描述字眼(例如 "shouted"、"whispered"、"nervously")
- 調整標點(
...、!、?)來影響停頓長度與語氣強度 - 在必要時加入簡短括號提示,如
(whispering)或(frustrated)
可以多試幾種變化,聽聽模型的呈現差異,再找出最符合你專案氛圍的寫法。
dialogue-audio 適合用在長篇有聲書嗎?
適合,尤其是 以對話為主、且只有兩位說話者的段落。面對篇幅較長的內容,你可以:
- 依 場景或章節 合理切分腳本
- 分段生成音訊,再在 DAW 裡整理排列
- 在各段之間維持一致的標籤使用與語氣風格
如果你的有聲書包含多位旁白或複雜敘事風格,可能需要額外的 TTS 設定,搭配這個以雙說話者為主的技能一起使用。
我可以把 dialogue-audio 納入更大一套自動化流程嗎?
可以。由於 dialogue-audio 是建立在 infsh CLI 之上,非常適合放入各種腳本或自動化環境:
- 在 shell script 中整合
infsh app run falai/dia-tts指令 - 從 CI/CD pipeline 或排程工作中發動生成
- 搭配
inferen-sh/skills中其他技能,組成更大型的內容產線
這個技能對希望用文字與指令打造可重現音訊生成流程的開發者與技術使用者特別實用。
什麼情況下 dialogue-audio 不適合?
如果你有以下需求,可能要考慮其他工具:
- 單次生成需要 兩種以上不同聲線
- 希望全程使用 GUI 工作流程,不想碰命令列
- 想要自動完成混音、音樂與音效,而不是只有對話生成
在這些情況下,可以改用專業音訊工具或多說話者 TTS 服務搭配 DAW,而將 dialogue-audio 保留用在需要乾淨雙人對話作為核心音軌的情境。
我要到哪裡查看完整設定?
請開啟 inferen-sh/skills 儲存庫中的 dialogue-audio 區段:
- Repo:
https://github.com/inferen-sh/skills - Skill path:
tools/audio/dialogue-audio
建議先從 SKILL.md 開始閱讀,以了解建議用法,以及有關 Dia TTS 整合與 CLI 指令的最新說明。
