能用的聲音)
GPT-SoVITS完整指南用1分鐘語音克隆一個(gè)能用的聲音【免費(fèi)下載鏈接】GPT-SoVITS1 min voice data can also be used to train a good TTS model! (few shot voice cloning)項(xiàng)目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITSGPT-SoVITS 是一個(gè)少樣本語音克隆 TTS 項(xiàng)目。它解決的問題很具體你手里只有幾分鐘甚至幾秒的某個(gè)人聲音素材但想把這個(gè)聲音變成一個(gè)可以輸入文本、輸出語音的模型。5 秒?yún)⒖家纛l就能零樣本合成1 分鐘音頻可以微調(diào)出專屬音色模型。 先說結(jié)論值不值得用值得。它覆蓋了從音頻切片、降噪、ASR 標(biāo)注到模型訓(xùn)練、推理的完整流程全在 WebUI 里點(diǎn)完。零樣本模式下 5 秒音頻即可出語音少樣本模式下 1 分鐘干凈音頻就能訓(xùn)出相似度不錯(cuò)的個(gè)人模型。適合播客作者、獨(dú)立開發(fā)者、內(nèi)容創(chuàng)作者。上手成本是幾行 conda 命令加一個(gè)安裝腳本有 NVIDIA 顯卡的話從克隆倉庫到第一次合成成功大約 20 分鐘。 從零到出效果第一次合成走查第1步克隆倉庫并準(zhǔn)備環(huán)境git clone https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS cd GPT-SoVITS conda create -n GPTSoVits python3.10 conda activate GPTSoVits bash install.sh --device CU128 --source ModelScope --download-uvr5install.sh 一條命令會(huì)裝好 ffmpeg、cmake、對(duì)應(yīng) CUDA 版本的 PyTorch 和全部 Python 依賴并自動(dòng)下載預(yù)訓(xùn)練模型到GPT_SoVITS/pretrained_models、G2PW 中文多音字模型到GPT_SoVITS/text。Windows 用戶把腳本換成install.ps1或者直接下載官方整合包雙擊go-webui.bat就行。第2步啟動(dòng) WebUIpython webui.py瀏覽器打開后界面分成數(shù)據(jù)準(zhǔn)備1A、模型訓(xùn)練1B、推理1C等 Tab推理 Tab 會(huì)再開一個(gè)獨(dú)立頁面默認(rèn)端口 9872。第3步零樣本合成第一條語音打開1-GPT-SoVITS-TTS/1C-推理頁面SoVITS 和 GPT 下拉框里直接選預(yù)訓(xùn)練底模無需訓(xùn)練。上傳一段 5 秒左右的參考音頻填寫這段音頻對(duì)應(yīng)的參考文本再輸入你要合成的目標(biāo)文本并選擇文本語言點(diǎn)合成。幾秒鐘后就能得到用參考音色讀出的語音。第4步第一次微調(diào)把訓(xùn)練音頻放進(jìn)一個(gè)目錄在數(shù)據(jù)準(zhǔn)備 Tab 按順序執(zhí)行填音頻路徑 → 切割音頻按音量把長(zhǎng)音頻切成小段→ 降噪可選→ ASR 自動(dòng)轉(zhuǎn)寫 → 校對(duì)標(biāo)注。標(biāo)注完成后進(jìn)入訓(xùn)練 Tab依次跑 1a 文本分詞與特征提取、1b 語音自監(jiān)督特征提取、1c 語義 Token 提取然后點(diǎn) GPT 訓(xùn)練、SoVITS 訓(xùn)練。訓(xùn)練完的權(quán)重會(huì)出現(xiàn)在下拉框里切到推理頁面選上它輸入同樣的文本即可對(duì)比微調(diào)前后的效果。? 能力拆解三個(gè)核心功能零樣本合成5秒音頻即可出語音原理是把參考音頻和參考文本作為提示配合預(yù)訓(xùn)練底模直接生成。文本側(cè)有完整的前端做規(guī)范化和音素轉(zhuǎn)換中文多音字由 G2PW 模型處理。效果邊界在參考音頻5 秒音頻能定下音色基調(diào)但語速和情緒會(huì)跟著參考音頻走參考音頻里如果混著 BGM 或回聲合成質(zhì)量會(huì)明顯下降先過一遍 UVR5 人聲分離和降噪再拿去當(dāng)參考會(huì)穩(wěn)很多。它支持跨語言參考音頻用中文目標(biāo)文本可以寫英文、日文、韓文、粵語。少樣本微調(diào)1分鐘數(shù)據(jù)訓(xùn)個(gè)人模型訓(xùn)練分兩段GPTs1負(fù)責(zé)把文本映射成語義 token 序列SoVITSs2負(fù)責(zé)把 token 變成波形后者用的是 BigVGAN 聲碼器。相當(dāng)于 GPT 先學(xué)說什么SoVITS 再學(xué)怎么聽起來像這個(gè)人。效果邊界有兩點(diǎn)一是訓(xùn)練集質(zhì)量決定上限官方說明里明確 v1/v2/v2Pro 系列對(duì)平均音質(zhì)較低的訓(xùn)練集更寬容v3/v4 則要求更干凈的數(shù)據(jù)二是 v4 原生輸出 48kHz 音頻v3 只有 24kHz聽感上 v3 會(huì)更悶。推理速度官方給出的參考數(shù)據(jù)README 里給了 v2 ProPlus 版本的 RTFRTX 4060Ti 上 0.0284090 上 0.0141400 詞約 4 分鐘語音實(shí)際推理耗時(shí) 3.36 秒M4 CPU 上 0.526。換算下來8GB 級(jí)別的消費(fèi)級(jí)顯卡就能做到邊合成邊聽的體驗(yàn)CPU 能跑但明顯慢。 真實(shí)用法一個(gè)做技術(shù)播客的作者每期節(jié)目開頭都是他自己的口播。他用 WebUI 的人聲分離把一期節(jié)目里的 BGM 去掉再把 5 分鐘音頻切片、降噪、ASR 自動(dòng)轉(zhuǎn)寫校對(duì)掉幾個(gè)識(shí)別錯(cuò)的多音字湊出約 1 分鐘的訓(xùn)練集訓(xùn)了一個(gè)自己的 GPT-SoVITS 模型。之后每期節(jié)目的口播、片尾和社群通知都是模型用他自己的聲音念出來的語速和情緒通過換參考音頻來微調(diào)。一個(gè)獨(dú)立游戲開發(fā)者要給 20 個(gè) NPC 寫語音預(yù)算里沒有配音費(fèi)。他先用零樣本模式拿演員朋友手機(jī)錄的 10 秒干聲當(dāng)參考把全部臺(tái)詞過了一遍篩選掉讀錯(cuò)的段落對(duì)主角這一個(gè)角色他讓對(duì)方在安靜房間補(bǔ)錄了 1 分鐘素材做了微調(diào)主角音色明顯比零樣本更穩(wěn)NPC 們則繼續(xù)用零樣本加不同參考音頻區(qū)分開來。一個(gè)做內(nèi)部工具的后端開發(fā)者想讓團(tuán)隊(duì)的客服工單系統(tǒng)支持語音播報(bào)。他沒有重新造輪子而是直接調(diào)用倉庫里的 api.py 起一個(gè)本地推理服務(wù)工單狀態(tài)變化時(shí)把文本 POST 過去返回的合成音頻直接推給前端播放參考音頻固定用團(tuán)隊(duì)選定的一個(gè)聲音整個(gè)服務(wù)跑在一臺(tái) 12GB 顯存的服務(wù)器上。?? 踩坑實(shí)錄Q1訓(xùn)練時(shí)顯存不夠報(bào) OOM 怎么辦先把 batch_size 減半。WebUI 的默認(rèn) batch size 是按顯存大小推算的v3/v4 默認(rèn)按 顯存GB/8 給顯存緊張時(shí)手動(dòng)調(diào)小是最直接的。同時(shí)確認(rèn)走的是半精度訓(xùn)練v3/v4 的 SoVITS 訓(xùn)練 epoch 默認(rèn)只有 2最多 16別為了多訓(xùn)一點(diǎn)把參數(shù)往上堆。Q2中文合成時(shí)個(gè)別字讀音奇怪像日語發(fā)音十有八九是 G2PW 模型沒放對(duì)位置。把它解壓后重命名為G2PWModel放到GPT_SoVITS/text目錄下重啟 WebUI。install.sh 成功跑完的話這一步已經(jīng)幫你做好了手動(dòng)裝環(huán)境的人最容易漏。Q3合成出來的聲音發(fā)悶或者有金屬音這是版本混用的典型癥狀。v3 原生輸出 24kHz 音頻v4 為了修掉 v3 非整數(shù)倍上采樣導(dǎo)致的金屬音、改成原生 48kHz官方定位 v4 直接替代 v3。推理時(shí)不要混用不同版本的底模和微調(diào)權(quán)重LoRA 權(quán)重加載時(shí)如果對(duì)應(yīng)底模缺失界面會(huì)直接報(bào)底模缺失無法加載相應(yīng) LoRA 權(quán)重看到這條提示就去GPT_SoVITS/pretrained_models補(bǔ)下載對(duì)應(yīng)版本的底模。Q4服務(wù)器斷網(wǎng)ASR 用不了FunASR 系列模型默認(rèn)在首次使用時(shí)自動(dòng)下載。離線機(jī)器上把 ASR 模型、VAD 模型、標(biāo)點(diǎn)模型預(yù)先下到tools/asr/models目錄模型來源見 README 的預(yù)訓(xùn)練模型一節(jié)需要英語或日語轉(zhuǎn)寫的話把 faster-whisper-large-v3 放到同一目錄。UVR5 人聲分離的權(quán)重放tools/uvr5/uvr5_weights。Q5CPU 上能湊合用嗎能跑但要有預(yù)期。官方數(shù)據(jù) M4 CPU 的 RTF 是 0.526合成 4 分鐘語音大約要花 2 分鐘批量干活不現(xiàn)實(shí)。想快就用 GPU或者在 WebUI 里開啟 batched 推理它會(huì)自動(dòng)切換到 inference_webui_fast.py長(zhǎng)文本合成速度會(huì)好一截。結(jié)尾現(xiàn)在就可以克隆倉庫、跑一遍 install.sh先拿 5 秒音頻體驗(yàn)零樣本再錄 1 分鐘素材訓(xùn)一個(gè)自己的模型??寺〉刂穐ttps://gitcode.com/GitHub_Trending/gp/GPT-SoVITS【免費(fèi)下載鏈接】GPT-SoVITS1 min voice data can also be used to train a good TTS model! (few shot voice cloning)項(xiàng)目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考