構建富有表現力的語音體驗需要捕捉人類語音中的習慣和細微差別,而這要求更豐富、更廣泛的數據集。Qwen3-TTS本身已經具備出色的零樣本語音克隆能力,僅憑几秒音頻就能克隆音色。但若要實現更豐富的克隆效果,就需要在更大規模的句級示例語料上進行微調。
閉源服務商通常將這種能力稱為“專業語音克隆”,以區別於“即時語音克隆”。它需要更前置的數據整理步驟,包括尋找合適的配音演員並錄製大量語料。作者在Baseten的開源ml-cookbook中發佈了一份修改版的Qwen3-TTS官方訓練配方,可以在Baseten Training上創建單説話人微調檢查點,並方便地部署到Baseten Cloud。
文章對比了三種語音克隆方式。ICL模式將參考音頻和參考文本作為前綴加入每次請求,在推理時學習音頻與文本的關係,音色條件更強,但需要約數百token的prefill開銷,且可能因注意力機制的非確定性導致音色不一致。僅説話人嵌入模式通過ECAPA-TDNN生成約10個token的嵌入,TTFA更低、併發能力更強,但音色還原度因嵌入維度降低而稍遜。微調的核心目標是在不引入ICL額外開銷的情況下,學習更豐富的文本-音頻對齊關係。具體做法是通過有監督微調訓練大量文本-音頻配對,並讓模型基於一批樣本累計的説話人嵌入進行生成,最終將音色信息寫入模型權重。
數據集構建方面,作者使用ASR模型對長音頻進行轉寫,並同時生成字符級時間戳,再根據時間戳在結束標點處切分音頻和文本,得到句級訓練對。示例使用LJ Speech數據集,其中包含約24小時單説話人音頻,但作者只用其中約1.5小時(800個片段)進行微調,以模擬真實產品中數據受限的場景。
訓練細節上,Qwen3-TTS採用多碼本RVQ表示音頻特徵,每秒12幀、每幀16個碼本。訓練損失為交叉熵,分為talker loss(第一碼本,承載大部分語音學和韻律信息)和sub-talker loss(其餘15個碼本,捕捉更細粒度的聲學細節),權重默認為0.3。為獲得更穩定的説話人目標,作者計算64個訓練片段經凍結説話人編碼器後的嵌入質心,而不是使用單個參考片段。單個片段的嵌入相互之間餘弦相似度約0.7,而與質心的相似度達0.85以上,因此質心嵌入更可靠。訓練還加入了線性warmup和餘弦學習率衰減,因為TTS微調對學習率敏感,過高的學習率會損害音色質量,而平緩的調度既能避免早期過沖,也能防止後期過擬合。
實驗結果顯示,微調運行在單張H100上約1小時,完成8個epoch。微調模型的TTFA約為130ms,與僅説話人嵌入模式持平,比ICL的約154ms快約16%。不過,在1.5小時數據上,微調並未在相似度或MOS風格質量上明顯勝過零樣本。其優勢主要體現在操作層面(無需參考音頻、擴展時延遲穩定)和感知層面(在零樣本克隆顯得平淡的提示上更具表現力)。隨着數據集增長到幾小時以上,微調帶來的提升會更為顯著。
未來方向包括將DPO、GRPO等強化學習獎勵信號引入後訓練,以及使用EmergentTTS、TTSDSv2等自動評估指標來替代昂貴的人工評估。發音和情感的更精細控制也是重要研究方向,這些通常屬於閉源API功能,如何將類似能力微調進開源模型值得探索。