折騰日記:部署ollama本地模型+本地STT+本地TTS=本地語音助手

用了三天時間研究了一套本地語言模型+本地語音模型部署,效果就和鄧超那個《勝券在握》裏面的AI電腦一樣,就是語音對話。其實任何一個在線ai都能更好的實現,所以最後不知道折騰出來意義何在。但既然折騰了,就隨便寫一個教程吧。

教程的適用環境:win10或以上版本,建議win11。需要NVIDIA顯卡,顯存至少在16G或以上,雙顯卡更佳。

前期準備:
安裝wsl2,管理員權限打開PowerShell,運行 wsl –install
安裝git,在這裡下載https://git-scm.com/install/windows
安裝docker Windows,https://www.docker.com/products/docker-desktop/
安裝ollama,官網下載https://ollama.com/

部署過程:

下載和啟動ollama模型:安裝完ollama默認會啟動圖形界面,並且在右下角有個小羊駝,我們不使用圖形界面,請安裝啟動之後在右下角退出圖形界面程序!新建一個批處理文件做為啟動程序,也就是新建一個文本,命名為 start_ollama.bat,內容如下:

雙擊批處理文件啟動ollama後台程序,然後最小化。
在官網選一個適合你適用的語言模型,比如gemma4:12b,啟動需要大概8G顯存,剩下顯存跑語音模型。
打開cmd,輸入 ollama run gemma4:12b 即可下載和啟動模型。
(你也可以在其他cmd里輸入 ollama pull 模型名稱,同時下載其他模型,ollama list可查看所有下載的模型,ollama rm 模型名稱可以刪除本地模型)
經過漫長的下載和啟動,run的這個cmd窗口會出現>>提示符,你輸入你好之類的模型可以回答。此時本地模型已經在顯卡中成功運行了。

接下來就是接入耳朵(STT)和嘴(TTS)。

打開剛才安裝的docker,界面左下角顯示engine running就可以了,點擊右上角X,它會在系統右下角托盤後台運行。
安裝web管理界面,Open WebUI。
打開一個cmd輸入下面的命令

經過一段時間等待,部署完成後,瀏覽器訪問:http://127.0.0.1:3000 即可進入界面。此時你可以在界面選擇本地模型進行文字聊天。

安裝本地 STT(語音轉文字)
打開一個cmd輸入下面的命令

如果是多顯卡請在上面的命令中改為 –gpus all -e CUDA_VISIBLE_DEVICES=1 指定顯卡

安裝本地TTS(文字轉語音)
這裡是重點,因為網上原本的ChatTTS-OpenAI-API維護日期是兩年前,已經無法使用,我重新寫了一個版本。github的頁面是 https://github.com/kujourin/ChatTTS-OpenAI-API
找一個臨時目錄,打開一個cmd依次輸入下面的命令(包含拉取我的版本)

多顯卡同理stt指定

stt和tts首次啟動需要下載模型文件,估計需要一段時間,可以通過docker logs local-chattts查看運行情況。預計需要漫長的等待。

最後的步驟就是把這三個模型連起來,STT -> 語言模型 -> TTS

打開 127.0.0.1:3000 登錄 Open WebUI(首次進入需要創建管理員賬戶)
右上角頭像,選擇管理員面板–設置–語音
STT (語音轉文字) 配置:
引擎:OpenAI
URL:http://host.docker.internal:8000/v1
密鑰:1234 (隨便填,本地不校驗但必須有)
模型:Systran/faster-whisper-large-v3
TTS (文字轉語音) 配置:
引擎:OpenAI
URL:http://host.docker.internal:5050/v1
密鑰:1234
模型:chattts
音色:nova
保存設置

回到主頁,再次右上角頭像,這次是直接點設置(用戶設置)–語音
自動發送和自動朗讀打開
重點來了,這裡的設置音色會覆蓋管理員設置。這裡可以填寫預設的(我在代碼里寫的)alloy,echo,fable,onyx,nova,test_001,test_002一直到test_010。也可以填寫任意數字1-9999等,每一個都是不同的音色。選擇自己喜歡的音色(多數都很智障)

至此全部配置完畢,甚至可以實現live對話(需要你的顯卡算力能跟上,不然會很慢)

教程完畢感謝觀看。這!才是真正的手寫教程!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *