Mac mini M4安裝人聲複製模型F5-TTS

一開始測試了cosyvoice的模型,不過因為不支援Mac M系列,

GPU不支援以外,還會出現各項錯誤,安裝會遇到的問題會較多,

主要是因為這個模型使用的下載地址都是對岸的,所以不好部署。


這次安裝比較好部署F5-TTS

https://github.com/SWivid/F5-TTS


全新的MAC mini M4因為沒有系統轉移,所以一開始會缺

Xcode command line,請到apple 官網下載,需要登入apple

帳號,選Additional tools 


登入後選Command Line Tools for Xcode 16.3 beta


因為沒有安裝Xcode開發軟體,選這個就可以了。

下載完成就點選安裝即可。


打開終端機,安裝Homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"


安裝Anaconda,和Docker類似,屬於模擬容器軟體,

選MAC 64-Bit (Apple silicon) Command Line Installer (707.3M)這個下載

,有試過使用圖形安裝,不過中間會卡很久,後來還是用命令行安裝。


官網安裝說明

下載回來會是一個副檔名sh的檔案,Anaconda3-2024.10-1-MacOSX-arm64.sh

回到終端機輸入bash,將剛剛下載回來的檔案拖入終端機,就會自動跳出

檔案路徑,下面是我外接硬碟的路徑。

bash /Volumes/KC3000/Download/Anaconda3-2024.10-1-MacOSX-arm64.sh 

會詢問要不要安裝,按下Enter繼續


接著出現的各種說明,按著鍵盤的下鍵,因為很長要按到跑完



最後會問你要不要同意?這麼長一段都按完了,還不同意嗎???

輸入yes,會詢問你安裝的預設位置,一般路徑會在個人資料夾中,

/Users/你的名稱/anaconda3/



依照介紹先建立容器新容器的名稱為f5-tts,需要python版本是3.10

conda create -n f5-tts python=3.10

建立完成後,可以查看建立的容器

conda env list

這時候可以看到f5-tts的資料夾所在位置



接著進入到容器裡面

conda activate f5-tts


之後要安裝PyTorch,這裡需要到官網

目前M4比較建議安裝Preview版本


pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu


安裝完成後,就可以下載f5-tts了


pip install git+https://github.com/SWivid/F5-TTS.git


啟動Gradio

f5-tts_infer-gradio

設定port,host為預設

f5-tts_infer-gradio --port 7860 --host 0.0.0.0

啟動

f5-tts_infer-gradio --share



這時候可以正常運行

接著打開瀏覽器,輸入127.0.0.1:7860





最簡單的使用方法,就是在Mac mini插入麥克風,點選Batched tts欄位,

按下麥克風符號錄製自己的聲音,建議用正常的語速講一段話即可,

下方的Text to Generate,可以輸入想要模擬生成的一段話,按下Synthesize

就會開始生成模擬。



以Mac mini M4的生成速度並不算快,生成這樣的一段語音大約55秒,

運算時間也要4~5分鐘




advanced settings調整

第一欄是自動判斷錄製的語音,會自動生成文字,如果有不同可以自行更改

,另外就是Speed語速調整,會比較影響語音生成是不是夠自然。


錄製好的聲音,在右測有個下載的符號,按一下就可以存到電腦裡。


回到頁面最上端切換到

Multiple Speech

可以導入多組不同的聲音,之後透過像是劇本的方式產生對話


Voice Chat

用你的導入的聲音,讓問題生成應答對話


上面這兩個應用,生成的速度就更長一點,整體的模擬效果,還在

可接受範圍,但是仔細聽還是多少能聽出奇怪的地方。





關閉終端機,就可以結束模擬。

重新開始就開啟終端機

重新進入

conda activate f5-tts

開始模擬即可

f5-tts_infer-gradio --share



之後不想要了就可以移除容器

退出容器

conda deactivate

移除f5-tts容器

conda remove -n f5-tts --all


需要移除conda可以參考官網說明

沒有留言:

張貼留言