發表文章

目前顯示的是 9月, 2026的文章

用手機錄音,用您的聲音訓練專屬TTS語音引擎

用手機錄音,訓練專屬 Home Assistant Piper 語音 手機唸出畫面上的句子,電腦用 GPU 自動訓練,最後得到能放進 Home Assistant 的 .onnx 語音檔。全程雙擊一個檔案就能啟動,不需要手動安裝任何東西。 實測環境:Windows 11 ・ Intel 13600K ・ RTX 3070 8GB ・ piper-tts 1.8 📱 手機開網頁 唸句子錄音 ➜ 💻 電腦伺服器 接收錄音 ➜ 🧠 GPU 訓練 Piper VITS ➜ 📦 匯出 .onnx + .json ➜ 🏠 放進 HA 語音助理使用 0 準備 把下面 5 個檔案放進 同一個資料夾 (例如 TTS claude ): TTS claude/ ├─ start.bat ← 雙擊這個 ├─ start.py 自動安裝環境並啟動 ├─ train_server.py 接收錄音、呼叫訓練與匯出 ├─ monotonic_core.py 免編譯器的對齊模組 └─ piper_recorder.html 手機錄音網頁 需要 Windows 11、NVIDIA 顯示卡(含驅動)、手機與電腦連 同一個 Wi-Fi 。 沒有 Python 也沒關係, start.bat 會用 winget 自動安裝 Python 3.12。 1 啟動伺服器 雙擊 start.bat 。第一次會自動建環境、安裝 CUDA 版 PyTorch 與 piper(約 3GB,10~30 分鐘),之後秒開。 裝置:NVIDIA GeForce RTX 3070 [1] 先確認連得上(不能錄音):http://192.168.x.x:8765 [2] 要錄音請用:https://192.168.x.x:8766 (瀏覽器警告憑證時,選「進階 → 繼續前往」) 啟動後黑色視窗會印出兩個網址 Windows 防火牆第一次會詢問,請按「允許」。手機瀏覽器必須用 https 才能使用麥克風。 2 用手機錄音 手機開 https://電腦IP:8766 。畫面會顯示一句話,按「錄音」唸完再按一次停止,可試聽、重錄,再按「下一句」。內建 30 句,也可在「自訂句子」貼上自己的稿(每行一句)。 🎙️ Piper 語音錄製器 第 3 / 30...

用你的聲音讓AI模仿並使用:Piper TTS 模型訓練與 Home Assistant 部署全攻略

 這是一份專為新手準備的「手把手」完全指南。我們將帶你走過從零開始在 Windows WSL2 (Ubuntu) 環境下,使用你的 NVIDIA 顯卡訓練專屬 Piper TTS 語音模型,並將其完美整合進 Home Assistant 的全過程。 這套流程經過無數次的排錯與實戰驗證,幫你把所有可能踩到的「坑」都填平了。準備好了嗎?我們開始吧! 🛠️ 課前準備:環境與硬體需求 硬體 :一台配備 NVIDIA 顯示卡(如 RTX 3070 或以上)的 Windows 電腦。 系統 :已安裝 WSL2 (Ubuntu) 並建立好 Python 虛擬環境 ( env )。 資料 :已準備好的錄音檔與對應的 dataset.jsonl 標註檔(放在 ~/piper_tts/training 目錄下)。建議至少準備 100-300 句話以獲得自然的抑揚頓挫。 終端目標 :一台運行中的 Home Assistant (HA)。 🚧 第一階段:排雷與環境修復 (最容易卡關的地方) Piper 官方的安裝腳本與相依套件有幾個知名的 Bug,我們必須在開始訓練前手動修復它們,否則你連進度條都看不到! 避坑 1:補齊遺失的 TensorBoard 基礎套件 在替換套件版本的過程中,記錄訓練數據的套件常會莫名遺失,請先執行: Bash pip install six 避坑 2:VITS 底層 C 語言對齊模組 (monotonic_align) 的路徑 Bug 這是官方程式碼寫死造成的錯誤。編譯器找不到相對路徑會直接崩潰。請 完整複製並執行 以下這四步指令,手動建立幽靈資料夾騙過系統: Bash # 1. 進入缺少 C 語言編譯檔的資料夾 cd ~/piper_tts/piper/src/python/piper_train/vits/monotonic_align # 2. 手動建立編譯器在找的相對路徑,並執行編譯 mkdir -p piper_train/vits/monotonic_align python3 setup.py build_ext --inplace # 3. 建立程式碼 Bug 中寫錯的子資料夾,把編譯好的核心檔 (.so) 放進去 mkdir -p monotonic_align cp piper_train/vits/monoton...