全解讀:從實(shí)時(shí)變聲 GUI 到 RMVPE 與 DML 多端推理)
Retrieval-based-Voice-Conversion-WebUI 迭代演進(jìn)全解讀從實(shí)時(shí)變聲 GUI 到 RMVPE 與 DML 多端推理【免費(fèi)下載鏈接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data 10 mins!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI本文以倉(cāng)庫(kù)內(nèi) docs/kr/Changelog_KO.md2023 年 4 月至 10 月期間的韓文更新日志為主干逐條還原每個(gè)版本背后的真實(shí)改動(dòng)并結(jié)合當(dāng)前倉(cāng)庫(kù)快照中的實(shí)現(xiàn)代碼定位對(duì)應(yīng)功能落點(diǎn)。閱讀本文后你將能按時(shí)間線理解 RVC 的架構(gòu)演進(jìn)動(dòng)機(jī)訓(xùn)練效率、推理精度、跨平臺(tái)支持并能直接從 gui_v1.py、config.py、train-index-v2.py、rmvpe.py 等源碼入口復(fù)現(xiàn)這些設(shè)計(jì)而不是把更新日志當(dāng)作過(guò)期的流水賬。需要先說(shuō)明的一點(diǎn)是這份日志本身按最新在前倒序排列且所記錄的功能以 2023 年為時(shí)間基準(zhǔn)本文在梳理時(shí)會(huì)保留其倒序結(jié)構(gòu)同時(shí)以當(dāng)前倉(cāng)庫(kù)快照作為佐證來(lái)源。凡是從源碼結(jié)構(gòu)推得的結(jié)論文中均使用從當(dāng)前源碼看對(duì)應(yīng)實(shí)現(xiàn)位于等表述避免把舊版行為與現(xiàn)版行為混淆。更新日志總覽與倉(cāng)庫(kù)中的并行版本該日志不是倉(cāng)庫(kù)唯一的變更記錄。在 docs 目錄下同一份 Changelog 同時(shí)維護(hù)了中文Changelog_CN.md、英文Changelog_EN.md、日文、法文、韓文、土耳其文、葡萄牙文等多語(yǔ)言版本本文對(duì)應(yīng)的韓文版正是 5 月 28 日更新中新增韓文更新日志的產(chǎn)物。各條目整理為下表日期主題關(guān)鍵詞核心方向2023-10-06go-realtime-gui / gui_v1.py實(shí)時(shí)變聲界面全面優(yōu)化熱更新、懶加載、降噪2023-08-13RMVPE、PyTorch/ONNX/DirectML音高提取換代 AMD/Intel 顯卡支持2023-06-18v2 預(yù)訓(xùn)練、minibatch-kmeans、ONNX 導(dǎo)出數(shù)據(jù)量與索引效率擴(kuò)展2023-05-28/14/13UVR5 模型、音量包絡(luò)、Harvest 緩存音頻處理與推理體驗(yàn)打磨2023-04-09/16/28訓(xùn)練效率、多語(yǔ)言、faiss 升級(jí)訓(xùn)練體系與硬件適配2023-10-06實(shí)時(shí)變聲界面 go-realtime-gui.bat / gui_v1.py 全面成型日志指出實(shí)時(shí)變聲用的go-realtime-gui.bat/gui_v1.py此前已經(jīng)存在本次的核心工作是與 0813 版本相比的性能與體驗(yàn)優(yōu)化具體集中在三點(diǎn)。界面操作優(yōu)化參數(shù)熱更新、模型懶加載與音量包絡(luò)日志列出的三項(xiàng)界面級(jí)改進(jìn)都能在當(dāng)前 gui_v1.py 中找到對(duì)應(yīng)實(shí)現(xiàn)參數(shù)熱更新調(diào)整參數(shù)無(wú)需中斷推理再重啟。從源碼看GUI 通過(guò)事件循環(huán)對(duì)滑塊/開(kāi)關(guān)事件做增量處理例如index_rate事件直接調(diào)用self.rvc.change_index_rate(values[index_rate])gui_v1.py 約 L628-L631而底層 tools/rvc_for_real-time 思路對(duì)應(yīng)的實(shí)時(shí)實(shí)現(xiàn)類 提供了change_key、change_index_rate這類運(yùn)行時(shí)改參數(shù)的方法避免重建整個(gè)推理對(duì)象。模型懶加載 / 復(fù)用已加載的模型不必重新載入。實(shí)時(shí)推理類RVC.__init__接收l(shuí)ast_rvc參數(shù)當(dāng)last_rvc非空且pth_path與當(dāng)前一致時(shí)直接復(fù)用hubert特征提取器與net_gsynthesizer等已加載權(quán)重只有當(dāng)路徑變化時(shí)才走set_synthesizer()/set_jit_model()重新加載。這正是切換模型才重載、不切換則零開(kāi)銷的實(shí)現(xiàn)依據(jù)。音量包絡(luò)參數(shù)新增按輸入音頻動(dòng)態(tài)校準(zhǔn)輸出音量的參數(shù)。gui_v1.py 中對(duì)應(yīng)rms_mix_rate滑塊L128 附近self.rms_mix_rate: float 0.0推理末端當(dāng)rms_mix_rate 1時(shí)用 librosa 分別計(jì)算輸入與輸出的 RMS 短時(shí)能量曲線再按pow(rms1/rms2, 1 - rms_mix_rate)對(duì)輸出加權(quán)約 L931-L963。從表達(dá)式可推斷該值越接近 1輸出越接近合成結(jié)果本身的包絡(luò)越接近 0輸出越貼合輸入音頻的音量起伏。日志同時(shí)提醒若輸入背景噪聲較大建議關(guān)閉該功能避免把噪聲能量傳染給輸出。內(nèi)置降噪效果與速度優(yōu)化GUI 的降噪并非簡(jiǎn)單的前置濾波而是引入了一個(gè)獨(dú)立的譜門模塊 tools/torchgate/torchgate.pyTorchGate基于 STFT 做譜掩碼支持 stationary / non-stationary 模式含頻率與時(shí)間維度平滑gui_v1.py 中通過(guò)I_noise_reduce輸入端降噪與O_noise_reduce輸出端降噪兩個(gè)開(kāi)關(guān)啟用前者會(huì)同步參與音量包絡(luò)的 RMS 計(jì)算后者直接作用于合成輸出。速度優(yōu)化方面日志所述推理速度大幅提升與代碼中流式緩存cache_pitch/cache_pitchf、SOLA 重疊拼接及phase_vocoder相位聲碼器銜接gui_v1.py L964-L997等機(jī)制吻合。同一類型的輸入輸出設(shè)備如 MME日志特別強(qiáng)調(diào)實(shí)時(shí)變聲的輸入與輸出設(shè)備應(yīng)選擇同一 API 類型例如同為 MME。從 GUI 設(shè)備枚舉邏輯update_devicesgui_v1.py L1010 附近按 hostapi 列出設(shè)備看混用不同類型設(shè)備會(huì)導(dǎo)致時(shí)鐘源不一致與延遲抖動(dòng)這是使用層面的硬性約束。1006 整體更新RMVPE 低音優(yōu)化與推理界面布局日志將 1006 的整體更新概括為兩項(xiàng)一是繼續(xù)改進(jìn) RMVPE 音高提取效果尤其是男性低音區(qū)提升明顯二是優(yōu)化推理界面布局。前者與 0813 的 RMVPE 主線一脈相承見(jiàn)下一節(jié)后者屬于 WebUI 的可用性迭代。2023-08-13RMVPE 音高提取換代與 AMD/Intel 顯卡DML支持0813 是日志中信息量最大的一次發(fā)布分為常規(guī) Bug 修復(fù)與關(guān)鍵更新兩部分。常規(guī)修復(fù)清單及其背后的設(shè)計(jì)約束日志列出的修復(fù)項(xiàng)中多數(shù)都能在現(xiàn)行工程結(jié)構(gòu)里看到長(zhǎng)期沉淀的痕跡訓(xùn)練輪數(shù)下限調(diào)整日志原文記錄總 epoch 相關(guān)下限被調(diào)整分別調(diào)至 1 與 2 兩處配合訓(xùn)練更小數(shù)據(jù)集、更快收斂的方向。不使用預(yù)訓(xùn)練模型時(shí)的訓(xùn)練錯(cuò)誤修復(fù)保證無(wú) pretrain 的冷啟動(dòng)路徑可用。伴奏人聲分離后清理顯存避免 UVR5 干聲分離后顯存持續(xù)占用。檢查點(diǎn)保存路徑由絕對(duì)路徑改為相對(duì)路徑讓模型可在不同機(jī)器/目錄間遷移。支持含空格的路徑訓(xùn)練集目錄與實(shí)驗(yàn)名均不再因空格報(bào)錯(cuò)。從 configs/config.py 的加載邏輯看配置與路徑均基于os.path拼接本身具備空格兼容性。文件列表不再?gòu)?qiáng)制要求 utf8 編碼降低非 UTF-8 環(huán)境的數(shù)據(jù)處理門檻。解決實(shí)時(shí)變聲過(guò)程中 faiss 檢索導(dǎo)致的 CPU 消耗實(shí)時(shí)路徑必須把逐幀檢索的代價(jià)壓到最低。當(dāng)前實(shí)時(shí)推理代碼中 faiss 索引在初始化時(shí)一次性reconstruct_n出big_npy檢索后按index_rate與特征加權(quán)融合見(jiàn) tools/rvc_for_realtime.py 的infer流程避免每幀重復(fù)做高開(kāi)銷操作可視為該問(wèn)題的工程化答案。關(guān)鍵更新RMVPE 訓(xùn)練與全鏈路替換日志稱團(tuán)隊(duì)訓(xùn)練并集成了開(kāi)源音高提取模型 RMVPE并將其用于RVC 訓(xùn)練、離線推理、實(shí)時(shí)推理三條鏈路同時(shí)支持PyTorch / ONNX / DirectML三種后端。RVC 倉(cāng)庫(kù)中可交叉印證的點(diǎn)包括RMVPE 權(quán)重資源目錄 assets/rmvpe推理代碼按assets/rmvpe/rmvpe.pt加載完整權(quán)重文件需按倉(cāng)庫(kù)提供的腳本下載實(shí)時(shí)/離線推理側(cè)對(duì) RMVPE 的調(diào)用封裝如get_f0_rmvpe底層實(shí)現(xiàn)位于 infer/lib/rmvpe.py訓(xùn)練側(cè) F0 提取腳本獨(dú)立成模塊infer/modules/train/extract/extract_f0_rmvpe.py并額外提供 DirectML 變體 extract_f0_rmvpe_dml.py與日志中通過(guò) Onnx_Dml 在 GPU 上做 RMVPE 推理呼應(yīng)WebUI 的 F0 方法下拉中可切換 harvest / crepe / rmvpe / pm 等infer-web.py的extract_f0_feature入口會(huì)根據(jù)所選方法分流。AMD / Intel 顯卡支持torch_dml日志明確通過(guò)torch_dml為 AMD 與 Intel 顯卡提供 (1) 實(shí)時(shí)變聲、(2) 推理、(3) 人聲伴奏分離能力訓(xùn)練暫不支持 DML只能退回 CPU 訓(xùn)練同時(shí) RMVPE 推理可經(jīng) ONNX_DML 上 GPU。當(dāng)前倉(cāng)庫(kù)保留了一整套對(duì)應(yīng)資產(chǎn)啟動(dòng)腳本區(qū)分 CUDA 與 DMLgo-web.bat vs go-web-dml.bat、go-realtime-gui.bat vs go-realtime-gui-dml.batDML 依賴清單與 Conda 環(huán)境定義requirements-dml.txt、environment_dml.yaml后端適配集中在 configs/config.py通過(guò)--dml命令行參數(shù)arg_parse進(jìn)入 DML 分支將device切換為torch_directml.device(...)并把半精度強(qiáng)制置為False文件同時(shí)負(fù)責(zé)在 CUDA 版與 DML 版 onnxruntime 之間切換 DLL。實(shí)時(shí) GUI 中針對(duì) DML 特殊處理的代碼路徑如privateuseone in str(device)的判斷也出現(xiàn)在 torchgate 與 crepe/fcpe 等模塊里說(shuō)明 DML 平臺(tái)有專門的低內(nèi)存/CPU 回退策略。2023-06-18v2 預(yù)訓(xùn)練模型、大數(shù)據(jù)量索引與 ONNX 導(dǎo)出v2 新增 32k / 48k 預(yù)訓(xùn)練與 non-f0 修復(fù)日志顯示 v2 路線新增 32k 與 48k 采樣率的預(yù)訓(xùn)練模型并修復(fù) non-f0不帶音高條件模型的推理錯(cuò)誤。當(dāng)前 configs 的version_config_list同時(shí)包含v1/32k、v1/40k、v1/48k、v2/48k、v2/32k五檔配置 JSONconfigs/config.py L24-L30各版本權(quán)重目錄 assets/pretrained 與 assets/pretrained_v2 并列存在——這正是 v1/v2 雙版本并行時(shí)代的產(chǎn)物。訓(xùn)練集超 1 小時(shí)minibatch-kmeans 加速索引當(dāng)訓(xùn)練集時(shí)長(zhǎng)超過(guò) 1 小時(shí)索引構(gòu)建步驟改用MiniBatchKMeans以加速。實(shí)現(xiàn)位于 tools/infer/train-index-v2.py腳本會(huì)先判斷樣本量若超過(guò)閾值則打印Trying doing kmeans ... shape to 10k centers.提示并以MiniBatchKMeans(n_clusters10000, ...)對(duì)高維特征做聚類中心化cluster centers 替代原始向量參與 faiss 索引從算法上把大規(guī)模特征庫(kù)的建庫(kù)/檢索成本壓下來(lái)。相比之下單文件腳本 tools/infer/train-index.py 承載的是早期輕量版流程可對(duì)照閱讀版本差異。數(shù)據(jù)處理異常值自動(dòng)剔除與 ONNX 導(dǎo)出標(biāo)簽頁(yè)日志還包含兩條數(shù)據(jù)處理鏈路更新數(shù)據(jù)預(yù)處理階段自動(dòng)剔除異常值防止爆音/空數(shù)據(jù)污染特征提取新增 ONNX 導(dǎo)出選項(xiàng)標(biāo)簽頁(yè)WebUI 中提供模型導(dǎo)出入口底層由 tools/export_onnx.py 與infer-web.py的export_onnx函數(shù)實(shí)現(xiàn)并與 infer/lib/infer_pack/models_onnx.py、infer/modules/onnx/export.py 及配套的 tools/onnx_inference_demo.py 演示腳本構(gòu)成完整的導(dǎo)出—推理鏈路。日志還坦誠(chéng)記錄了若干嘗試過(guò)但未采用的技術(shù)路線這些信息對(duì)理解模型設(shè)計(jì)邊界極具價(jià)值為特征檢索引入時(shí)序維度和 PCA 降維均無(wú)顯著效果NSF 聲碼器因依賴 PyTorch 算子而難以完整支持 ONNX 推理對(duì)訓(xùn)練輸入做音高/性別/EQ/噪聲等隨機(jī)增強(qiáng)也未見(jiàn)收益。同期還標(biāo)注了后續(xù)計(jì)劃集成小型聲碼器 Vocos-RVC、訓(xùn)練階段引入 Crepe 音高識(shí)別、將 Crepe 精度與 REC-config 同步以及支持 F0 編輯器。2023-05批量轉(zhuǎn)換、UVR5、音量包絡(luò)與 Harvest 緩存5 月 28 日多功能并發(fā)更新新增 v2 Jupyter Notebook倉(cāng)庫(kù)根目錄的 Retrieval_based_Voice_Conversion_WebUI_v2.ipynb與 v1 版 Retrieval_based_Voice_Conversion_WebUI.ipynb 并列即其產(chǎn)物同一批更新還包含依賴模塊調(diào)整與多語(yǔ)言更新日志本韓文日志即當(dāng)時(shí)新增。無(wú)聲/氣聲保護(hù)模式改善清音段與呼吸聲的還原質(zhì)量。支持 crepe-full 音高檢測(cè)當(dāng)前實(shí)時(shí)推理類get_f0_crepe中torchcrepe.predict(..., full, ...)即使用 full 模型配合torchcrepe.filter.median/mean與周期性掩碼pd 0.1置零抑制抖動(dòng)。UVR5 人聲分離支持去混響de-reverb與去回聲de-echo模型對(duì)應(yīng) infer/modules/uvr5 模塊體系vr.py / mdxnet.py 兩條推理后端與 assets/uvr5_weights 權(quán)重目錄。索引文件名帶實(shí)驗(yàn)名與版本避免多實(shí)驗(yàn)相互覆蓋。批量變聲與 UVR5 分離可手動(dòng)選擇導(dǎo)出格式倉(cāng)庫(kù)提供了獨(dú)立批量腳本 tools/infer_batch_rvc.py。v1 的 32k 訓(xùn)練模型支持終止結(jié)合 6 月日志中 v2 重新引入 32k 看這是 v1 產(chǎn)線的收尾動(dòng)作。5 月 13/14 日預(yù)處理的隱性成本優(yōu)化修復(fù)訓(xùn)練集預(yù)處理的偽多進(jìn)程 Bug并把多進(jìn)程n_cpu的作用范圍從僅 F0 提取擴(kuò)展到數(shù)據(jù)預(yù)處理 F0 提取——日志原文記錄了該參數(shù)語(yǔ)義的遷移Harvest 算法增加中位濾波半徑調(diào)節(jié)現(xiàn)行g(shù)et_f0中signal.medfilt(f0, 3)即濾波應(yīng)用導(dǎo)出音頻支持后處理重采樣自動(dòng)檢測(cè) logs 目錄下的索引文件并提供下拉列表省去手動(dòng)輸入索引路徑WebUI 標(biāo)簽頁(yè)新增常見(jiàn)問(wèn)題與解答倉(cāng)庫(kù)同時(shí)在 docs 下以多語(yǔ)言維護(hù) FAQ如 docs/cn/faq.md、docs/en/faq_en.md 等此即FAQ 頁(yè)的資料沉淀相同輸入音頻路徑下緩存 Harvest 音高日志特別解釋該緩存的價(jià)值——Harvest 全流程長(zhǎng)、重復(fù)提取代價(jià)高若不緩存第一次推理后調(diào)整音色/索引/中位濾波半徑等參數(shù)時(shí)等待會(huì)極長(zhǎng)音量包絡(luò)以輸入音量包絡(luò)混入或替換輸出包絡(luò)可緩解輸入靜音或輸出帶噪的問(wèn)題默認(rèn)關(guān)閉值 1 為關(guān)閉輸入底噪大時(shí)不建議開(kāi)啟按指定頻率保存小模型ckpt 抽取適合想觀察不同 epoch 效果、又不想每次手動(dòng)抽取小模型再清理大檢查點(diǎn)的場(chǎng)景模型檢查點(diǎn)處理邏輯集中在 infer/lib/train/process_ckpt.py通過(guò)環(huán)境變量規(guī)避服務(wù)器全局代理導(dǎo)致的連接錯(cuò)誤支持 v2 預(yù)訓(xùn)練模型當(dāng)時(shí)僅 40k 公開(kāi)測(cè)試另兩檔采樣率因未完全訓(xùn)練而暫緩?fù)评砬跋拗瞥^(guò) 1 的過(guò)載音量并微調(diào)了數(shù)據(jù)預(yù)處理參數(shù)。2023-04訓(xùn)練效率調(diào)優(yōu)與 WebUI 多語(yǔ)言起步4 月 9 日訓(xùn)練參數(shù)重構(gòu)與顯存利用率日志給出了一組訓(xùn)練顯存利用率數(shù)字A100 由約 25% 提至約 90%V100 由 50% 提至約 90%2060S 由 60% 提至約 85%P40 由 25% 提至約 95%訓(xùn)練速度隨之顯著提升。圍繞它發(fā)生了三處語(yǔ)義變更total_batch_size語(yǔ)義改為每張 GPU 的 batch_size——這是分布式/DDP 訓(xùn)練常見(jiàn)的口徑統(tǒng)一total_epoch上限由 100 提至 1000默認(rèn)值由 10 提至 20修復(fù) ckpt 抽取時(shí)音高識(shí)別錯(cuò)誤導(dǎo)致的異常推理、分布式訓(xùn)練中每個(gè) rank 各自存 ckpt 的問(wèn)題對(duì)特征提取加入 NaN 過(guò)濾并修復(fù)靜音輸入/輸出隨機(jī)產(chǎn)生噪聲的問(wèn)題——日志注明舊模型需在新數(shù)據(jù)集上重訓(xùn)才可徹底消除該問(wèn)題。4 月 16 日實(shí)時(shí)小 GUI 問(wèn)世與低頻細(xì)節(jié)處理新增本地實(shí)時(shí)變聲 mini-GUI雙擊 go-realtime-gui.bat內(nèi)容為調(diào)用runtime\python.exe gui_v1.py啟動(dòng)——這正是 10 月日志中其實(shí)早已存在、本次重在優(yōu)化的那個(gè)界面的起點(diǎn)訓(xùn)練與推理時(shí)過(guò)濾 50Hz 以下頻段并把 pyworld 的最低音高由默認(rèn) 80Hz 下探到 50Hz避免 50–80Hz 的男低音被靜音。現(xiàn)行代碼中f0_min 50 / f0_max 1100的設(shè)定可在實(shí)時(shí)推理實(shí)現(xiàn)中直接看到WebUI 語(yǔ)言隨系統(tǒng)地區(qū)自動(dòng)切換當(dāng)時(shí)支持 en_US、ja_JP、zh_CN、zh_HK、zh_SG、zh_TW不支持時(shí)回退 en_US。如今倉(cāng)庫(kù) i18n/locale 已擴(kuò)展至 ko_KR、es_ES、fr_FR、it_IT、pt_BR、ru_RU、tr_TR 等更多語(yǔ)言由 i18n/i18n.py 統(tǒng)一加載修復(fù)部分 GPU 識(shí)別失敗如 V100-16G、P4。從當(dāng)前 configs/config.py 的device_config可看到同類適配邏輯對(duì) 1060/1070/1080、P40/P10 及含16的 GPUV100 除外強(qiáng)制切回 FP32 并改寫配置同時(shí)按total_memory計(jì)算gpu_mem為低顯存設(shè)備分配更小的分塊參數(shù)x_pad/x_query/x_center/x_max。4 月 28 日f(shuō)aiss 索引換代與低顯存推理設(shè)置faiss 索引設(shè)置升級(jí)檢索更快、質(zhì)量更好去除對(duì)total_npy的依賴此后分享模型不再要求附帶total_npy輸入文件放開(kāi) GTX 16 系限制并為 4GB 顯存 GPU 提供 4GB 推理配置。當(dāng)前 config.py 在gpu_mem 4時(shí)會(huì)把preprocess_per降為 3.0 并套用最小化的分塊參數(shù)x_pad1、x_query5、x_center30、x_max32正是低顯存推理預(yù)設(shè)的落地形態(tài)修復(fù)部分音頻格式的 UVR5 人聲分離 Bug實(shí)時(shí) mini-GUI 開(kāi)始支持非 40k 及非 lazy pitch 模型。從更新日志到當(dāng)前倉(cāng)庫(kù)后續(xù)計(jì)劃與演進(jìn)收束日志末尾的后續(xù)計(jì)劃板塊同樣值得保留為研發(fā)方向參考多用戶訓(xùn)練標(biāo)簽頁(yè)最多 4 人屬于 WebUI 的并發(fā)可用性規(guī)劃訓(xùn)練集中加入氣聲 wav解決人聲呼吸被轉(zhuǎn)換成噪聲的底層數(shù)據(jù)問(wèn)題為歌聲訓(xùn)練集推出基礎(chǔ)模型當(dāng)時(shí)標(biāo)注為進(jìn)行中后續(xù)發(fā)布。與此同時(shí)若想從代碼層面驗(yàn)證上述任意一條歷史改動(dòng)建議優(yōu)先按以下路徑快速定位實(shí)時(shí)推理 UI 邏輯看 gui_v1.py推理/后端設(shè)備適配看 configs/config.py 與 tools/rvc_for_realtime.pyF0 提取harvest/crepe/rmvpe/fcpe看對(duì)應(yīng)get_f0_*方法及 infer/lib/rmvpe.py索引構(gòu)建看 tools/infer/train-index-v2.py降噪看 tools/torchgate/torchgate.py人聲分離看 infer/modules/uvr5多語(yǔ)言看 i18n。以此對(duì)照更新日志逐項(xiàng)閱讀即可把歷史變更還原為仍在演化的工程結(jié)構(gòu)?!久赓M(fèi)下載鏈接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data 10 mins!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考