前言¶
在 DeepSeek Harness 裏配了 dsh-pet 桌寵時,氣泡裏會冒出短句,但默認只有文字。若希望這些臺詞被朗讀出來,又不想把整段助手回覆都交給 TTS,就需要一個只盯桌寵氣泡、範圍明確的插件。市場裏也有「朗讀助手回覆」類插件,職責不同;下面介紹的是維護者 jimmyfenwick 發佈的 dsh-pet-tts(分類:聯網工具),用微軟 Edge 在線神經音色合成 mp3,並通過瀏覽器播放。
這是什麼¶
dsh-pet-tts 是 DeepSeek Harness 插件:前端監聽 Web UI 裏 class 爲 dsh-pet-bubble 的 DOM 節點;宿主側在私有 Python 虛擬環境中調用開源 edge-tts 客戶端生成音頻。它只念桌寵氣泡,桌寵不說話時保持安靜;不充當通用「讀助手正文」工具。
倉庫:jimmyfenwick/dsh-pet-tts
目錄頁:skillhub.cn 插件頁
當前 package 版本:0.1.0,MIT 許可。
依賴與環境¶
使用前需滿足 README 列出的條件:
- 帶 Web UI 的 DeepSeek Harness(
dsh web或桌面版網頁視圖),在 0.2.1-rc.5 上驗證過。 dsh-pet用於產生氣泡(可選;不裝桌寵也能用控制台 API)。- Python 3.9+ 在
PATH上,或通過DSH_PET_TTS_SYSTEM_PYTHON指定解釋器。 - 網絡可訪問
speech.platform.bing.com;首次安裝還需一次性訪問 PyPI(或鏡像)以安裝edge-tts。 - Node.js 20+。
核心功能¶
自動跟讀氣泡¶
頁面腳本監視 .dsh-pet-bubble;有內容時向宿主請求合成並播放。單條氣泡文本上限 300 字符,更長會被截斷——設計上是短句氣泡,不是長文朗讀。
音色預設¶
內置多組預設(默認 anime-girl),語速、音高、音量與 dsh-pet-dfeiyu-mo 同源,換插件後聽感可保持一致。例如默認預設使用 zh-CN-XiaoyiNeural,另有 anime-girl-hi、anime-boy、netstar、xiaoyi-raw 等,完整表格見 GitHub README。
瀏覽器控制台 API¶
不依賴桌寵時,可在 DevTools 裏直接調用:
dshPetTTS.setPreset('anime-girl-hi') // 切換預設,寫入 localStorage
dshPetTTS.say('主人,我回來了') // 立即念一句
dshPetTTS.say('你好', { voice: 'en-US-AriaNeural', rate: '+10%' })
dshPetTTS.mute(true) // 靜音;mute(false) 恢復
await dshPetTTS.voices() // 宿主側已知的微軟音色列表
await dshPetTTS.health() // { ready, python, edgeTts, dataRoot }
宿主 HTTP 路由¶
前綴 /dsh-pet-tts/,便於腳本或自定義前端:
GET /dsh-pet-tts/ping→{ ok, defaultPreset, presets }GET /dsh-pet-tts/health→ 含venv等健康信息GET /dsh-pet-tts/presets→ 完整預設表GET /dsh-pet-tts/voices→ 微軟當前返回的全部音色GET /dsh-pet-tts/say?text=…&preset=…→audio/mpeg(可選voice、rate、pitch、volume)
合成結果緩存在 ~/.dsh/dsh-pet-tts/cache,鍵爲文本與參數組合,重複臺詞不再請求合成。
安裝與啓用¶
安裝命令以 README 爲準。任選其一:
dsh plugin --profile <你的檔名> add github:jimmyfenwick/dsh-pet-tts
或從 release tarball:
dsh plugin --profile <你的檔名> add https://github.com/jimmyfenwick/dsh-pet-tts/releases/latest/download/dsh-pet-tts.tgz
裝完後重啓或 reload 宿主。在頁面內先點一次(或按鍵)——瀏覽器在用戶手勢前會攔截自動播放,這不是插件缺陷。再讓桌寵說話或調用 dshPetTTS.say。
首次合成時插件會在 ~/.dsh/dsh-pet-tts/venv 創建虛擬環境並安裝 edge-tts(約 30 MB,一次性,不污染全局 Python)。宿主機日誌可見 [dsh-pet-tts] creating virtualenv … / installing edge-tts …。
配置項¶
| 環境變量 | 含義 |
|---|---|
DSH_PET_TTS_ROOT |
數據目錄,默認 $DSH_HOME/dsh-pet-tts |
DSH_PET_TTS_PYTHON |
直接使用該解釋器,跳過虛擬環境 |
DSH_PET_TTS_SYSTEM_PYTHON |
用來創建虛擬環境的基解釋器 |
若 pip install 連不上 PyPI,插件會先重試清華鏡像再試上游;也可預先裝好 Python 環境並設置 DSH_PET_TTS_PYTHON 以跳過在線安裝。
適用場景與注意¶
適合:已在 DSH Web UI 中使用 dsh-pet,希望氣泡臺詞有語音反饋;或需要 Edge 神經音色、可切換預設的桌寵 TTS。
不適合:朗讀助手完整回覆——請選用市場內專門的回覆朗讀插件。
權限與安全:插件以當前 DSH 進程權限運行,會創建本地 venv、訪問微軟朗讀端點並可能拉取 PyPI 包;安裝前建議瀏覽倉庫源碼與 MIT 許可證。DeepSeek Harness 社區插件目錄(如 skillhub.cn)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
限制(README 原文要點):
- 合成依賴網絡,無離線模型。
- 首次發聲需用戶手勢;僅
dsh-pet-bubble類節點觸發自動朗讀。 - macOS / Linux 爲主驗證環境;Windows 代碼路徑存在但未實測。
- 使用微軟 Edge 公開朗讀接口,未獲微軟背書,可能變更或限流;商業用途需自行覈對微軟條款。
卸載:
dsh plugin --profile <你的檔名> remove dsh-pet-tts
可選刪除 ~/.dsh/dsh-pet-tts(虛擬環境 + 緩存)。
結尾¶
dsh-pet-tts 把桌寵氣泡與 Edge 在線 TTS 接在一起:範圍窄、默認安靜,需要時再出聲。更多預設、路由與限制見 GitHub README;安裝入口也可從 SkillHub 目錄頁 進入倉庫鏈接。