Sovits3.0使用過程記錄
一、前言
?????????首先說明筆者是從事單片機(jī)以及嵌入式開發(fā)相關(guān)專業(yè)的大學(xué)生,平常鮮有涉及人工智能領(lǐng)域,本文是筆者基于網(wǎng)上大佬們教程以及自己在使用sovits3.0時(shí)的經(jīng)驗(yàn),予以的總結(jié),故對(duì)于專業(yè)性問題,筆者難以解決。說明:本文為筆者在使用sovits3.0過程中的記錄,筆者是使用colab進(jìn)行模型訓(xùn)練以及本地cpu進(jìn)行推理的。
二、訓(xùn)練模型
? ? ? ?首先打開github項(xiàng)目,點(diǎn)擊一鍵colab,根據(jù)項(xiàng)目的注釋一步步由上至下順序執(zhí)行即可。
? ? ? ?大佬的注釋非常清晰簡潔,故筆者這里僅記錄自己在訓(xùn)練時(shí)遇到的問題,以及一些注意事項(xiàng),而對(duì)于訓(xùn)練過程不多做記錄。
? ? ? ?1.首先是注意自己訓(xùn)練時(shí)選擇GitHub倉庫是32k還是48k,推理時(shí),需下載對(duì)應(yīng)倉庫的源碼。如下圖:

? ? ? ?2.上傳訓(xùn)練數(shù)據(jù)集壓縮包時(shí),需在google云盤里新建dataset文件夾,注意與壓縮包路徑保持一致。如下圖:

??? ????3.筆者在訓(xùn)練過程中,在數(shù)據(jù)集預(yù)處理部分,遇到了報(bào)錯(cuò)。經(jīng)過報(bào)錯(cuò)信息以及排查,發(fā)現(xiàn)問題是筆者上傳云盤的數(shù)據(jù)集壓縮包的文件結(jié)構(gòu)不對(duì),正確文件結(jié)構(gòu)應(yīng)為
dataset
├───test1(命名隨意).zip
│???????├───speak0(命名隨意).zip
│???????│???????? ????├1.wav
│???????│?????????????└….wav
│???????└───speak1(命名隨意).zip
│???????????????????? ├1.wav
│???????????????? ????└….wav
└───test2(命名隨意).zip
????????├───speak0(命名隨意).zip
??????? │???????? ├1.wav
??????? │???? ??? └….wav
????????└───speak1(命名隨意).zip
???????????????????? ├1.wav
???????????????????? └….wav
? ? ? ? ?4.訓(xùn)練過程中每1000step便會(huì)自動(dòng)保存到谷歌云盤,故我們要中斷訓(xùn)練最好是在以及保存記錄點(diǎn)后,再進(jìn)行中斷。中斷后我們?cè)龠M(jìn)行訓(xùn)練時(shí),就無需再下載預(yù)模型了。我們使用時(shí),下載config.json和G_x000.pth文件即可。
三、推理
????????先在https://github.com/innnky/so-vits-svc中下載對(duì)應(yīng)源碼。訓(xùn)練時(shí)使用32kGitHub倉庫的下載32k分支,使用48k倉庫的下載fs2分支。
????????在github項(xiàng)目下按照大佬的注釋,將待轉(zhuǎn)換文件(干人聲),若不是干人聲,請(qǐng)先將音頻分離出來,將文件放到指定文件目錄下。
????????這里由于筆者是使用的colab進(jìn)行模型訓(xùn)練,故還需要進(jìn)行額外的工作,才能正常使用inference_main.py文件。
????????1.首先,在github項(xiàng)目地址里下載hubert

這里windows操作系統(tǒng)僅需將選中的部分復(fù)制粘貼到網(wǎng)頁上即可下載。
接著便把下載好的hubert放入我們本地項(xiàng)目的hubert文件夾下。

? ? ? ? 2.第二步,安裝相關(guān)依賴,筆者以及將需要安裝的依賴整理好,注意筆者使用的是cpu推理,故使用cuda的用戶請(qǐng)看其余大佬教程,來進(jìn)行對(duì)應(yīng)的依賴安裝,使用cmd命令進(jìn)行安裝依賴即可。
pip install scikit-maad
pip install librosa
pip?install?praat-parselmouth
pip3 install torch torchvision torchaudio

????????3.安裝完依賴后,按照inference_main.py文件里的注釋,修改對(duì)應(yīng)的部分,選擇說話人(說話人應(yīng)與訓(xùn)練集保持一致,若忘記說話人,我們僅需將下載的config.json文件以txt的方式打開,即可查看說話人),點(diǎn)擊運(yùn)行,耐心等待即可得到生成的音頻文件。

四、結(jié)束
????????最后感謝大佬的開源項(xiàng)目以及@MasterSatori大佬的煉丹教程,讓我們這些外行人也體會(huì)到了AI的樂趣,最后附項(xiàng)目地址:https://github.com/innnky/so-vits-svc。