前言¶
DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。在 Web 端進行模型推理或交互時,頻繁切換輸入框或點擊按鈕會打斷工作流。dsh-voice-assistant 是一個爲 DSH Web 設計的插件,旨在解決 Web 端輸入繁瑣的問題。它由 supersyh-sss 維護,提供關鍵詞喚醒、語音聽寫、口述編輯和中文朗讀功能。
核心功能¶
該插件主要提供以下能力:
- 關鍵詞喚醒:支持自定義喚醒詞(默認爲“小鯨”),具備同音字和近音字的容錯能力。
- 語音聽寫:喚醒後可連續口述,逐句自動填入輸入框。
- 口述編輯命令:命令以“執行”開頭(如“執行發送”),防止誤觸。正文中的常見詞不會觸發命令。
- 中文朗讀:模型回覆完成後,會自動用中文朗讀,支持打斷。
- 本地離線識別:默認使用 sherpa-onnx WASM 引擎,在瀏覽器本地運行,支持離線使用。
- 熱配置:支持在設置頁即時調整喚醒詞、識別引擎等,無需重啓。
安裝與啓用¶
使用 npm 全局安裝插件,並註冊到 DSH Web profile。
npm i -g dsh-voice-assistant
dsh plugin --profile web add github:supersyh-sss/dsh-voice-assistant
安裝後重啓 dsh web,插件會自動加載。確認 ~/.dsh/profiles/web/package.json 中的 dsh.profile.bundles 包含 dsh-voice-assistant 即可。
典型用法¶
- 喚醒:對着麥克風說“小鯨”。
- 聽寫:喚醒後口述內容,內容會自動填入輸入框。
- 命令:說出“執行發送”以發送消息,或“執行清空”以清空草稿。
- 朗讀:模型回覆完成後,會自動用中文朗讀。
技術細節¶
- 識別引擎:默認使用
sherpa-onnx WASM進行本地推理,國內網絡無需代理。如果本地資源加載失敗,會自動回退到瀏覽器原生的 Web Speech API。 - 容錯機制:支持同音字(如“小京”)和近音字(如“秀經”,需在嚴格模式下二次確認)容錯。
- 防誤觸設計:所有命令必須以“執行”開頭。例如“發送”只會作爲內容輸入,而“執行發送”纔會觸發發送動作。
注意事項¶
- 該插件依賴瀏覽器麥克風權限。
- 首次使用本地識別需要下載約 38MB 的資源文件。
- 資源服務器默認使用 jsDelivr CDN,若國內訪問受限,可在設置頁手動指定資源地址。
結尾¶
該插件適合需要在 Web 端進行長時間對話或需要解放雙手的開發者。更多細節可參考插件目錄或 GitHub 倉庫。