今天要分享的主題是關於「語音合成技術 - TTS」一款好用的開源軟體, 名為「GPT-SoVITS」, 它具有以下的特點:
這邊我們建議Docker的原因歡迎參考「【Docker 容器化】初探微服務時代的虛擬化技術」, 主要是讓我們的應用程式與作業系統分割乾淨, 避免互相影響, 因此我們會使用Docker來進行操作。
git clone <https://github.com/RVC-Boss/GPT-SoVITS.git>
docker compose up -d
version: '3.8'
services:
gpt-sovits-webui:
image: breakstring/gpt-sovits:latest # please change the image name and tag base your environment. If the tag contains the word 'elite', such as "latest-elite", it indicates that the image does not include the necessary models such as GPT-SoVITS, UVR5, Damo ASR, etc. You will need to download them yourself and map them into the container.
container_name: gpt-sovits-webui
environment:
- is_half=False
- is_share=False
volumes:
- ./output:/workspace/output
- ./logs:/workspace/logs
- ./SoVITS_weights:/workspace/SoVITS_weights
- ./reference:/workspace/reference
- ./iic:/workspace/iic
working_dir: /workspace
ports:
- "9871:9871"
- "9872:9872"
- "9873:9873"
- "9874:9874"
shm_size: 16G
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: "all"
capabilities: [gpu]
stdin_open: true
tty: true
restart: unless-stopped
這個步驟是一個zero-shot的示範, 使用短短的人聲樣本就能夠產生出相似的聲音。
首先我們透過 http://localhost:9874 進入到入口頁面並根據以下步驟點擊功能。
正常來說會彈跳出推理頁面, 但有些瀏覽器或作業系統環境並不會自動跳出, 沒關係, 我們可以根據前面標題的站台介紹來自行開啟 http://localhost:9872/ 這個頁面, 預計您會看到以下畫面。
在這邊我們可以上傳我們的範例音檔, 並在右側文字框輸入期望輸出的語音文字。
填上相關參數之後, 按下推理之後就能夠產生音訊資料了, 這邊就不針對參數進行細部說明了, 有興趣的朋友可以自行使用ChatGPT或者閱覽官方文檔去進行細緻的微調。
今天的主題著重在使用Docker進行伺服器的架設, 並簡易的玩玩TTS服務, 後續我們會針對各個功能進行詳細的介紹, 歡迎追蹤我們的頻道, 讓我們共同學習更多關於 GPT-SoVITS 的知識。