前言¶
DeepSeek Harness (DSH) 採用插件化架構。在模型推理場景下,手動輸入存在延遲,且無法處理複雜的連續語音指令。dsh-voice 插件旨在解決這一問題,它爲 DSH Web UI 提供了零延遲的流式聽寫和語音留言功能,並支持多提供商的後備鏈路,確保語音輸入的穩定性和實時性。
插件介紹¶
dsh-voice 是一款開源插件,專注於語音交互。該插件由 GooDAnDReaREADY 維護,採用 MIT 許可證。它通過瀏覽器客戶端與主機端配合,實現語音轉文字,並將結果注入到 DSH 的對話流程中。
核心功能¶
該插件主要提供以下能力:
- 流式聽寫與 VAD:利用語音活動檢測(VAD),在自然停頓時切割語音片段,實現實時打字。
- 語音留言與自動發送:支持語音留言功能,錄音結束後進入取消倒計時(默認 4 秒),倒計時結束自動發送,倒計時內可取消。
- 觸覺按鍵說話:支持鼠標按住/釋放手勢,或鍵盤快捷鍵(如 Ctrl)進行按鍵說話,鬆開或按下 Esc 即可發送或取消。
- 零延遲瀏覽器字幕:使用 Chrome Web Speech API,在瀏覽器本地提供實時浮動字幕,無網絡延遲。
- 多提供商後備鏈:內置 Deepgram、Groq、HuggingFace、whisper.cpp 等提供商的後備鏈,當主服務不可用時自動切換。
- 上下文詞典注入:自動從對話草稿中提取代碼變量和標識符,提高技術術語的識別準確率。
- 嵌入式音頻播放器:在聊天和編輯器中提供音頻預覽、進度條和播放控制。
- 硬件降噪開關:支持瀏覽器級別的硬件噪聲抑制、回聲消除和自動增益控制。
- 提供商健康監控:提供實時的延遲(毫秒)、成功率和錯誤信息儀表盤。
- 零 API 泄漏:API 密鑰在主機端通過
ctx.credentials解析,絕不發送至瀏覽器客戶端。 - 離線本地 Whisper:支持啓動本地 whisper.cpp 服務器進行離線轉錄。
- SenseVoice-ONNX / Sherpa-ONNX:支持 0.8.11 版本的 SenseVoice-ONNX 和 Sherpa-ONNX 引擎,提供非自迴歸的快速語音識別。
- 實時音頻流:通過 WebSocket 橋接實現低延遲音頻流傳輸。
- 音頻可視化:支持液體波形、動態光球等音頻可視化效果。
安裝與啓用¶
該插件通過 npm 發佈。安裝後,它將作爲 DSH 生態系統的一部分運行。
典型用法¶
- 流式聽寫:點擊麥克風圖標,說話,插件會在停頓時自動將語音片段輸入到編輯器中。
- 語音留言:點擊波浪圖標,錄音結束後等待倒計時結束,消息將自動發送。
- 按鍵說話:按住波浪圖標(鼠標)或 Ctrl 鍵(鍵盤)開始錄音,鬆開或按下 Esc 取消。
適用場景與注意¶
- 語言支持:在未安裝翻譯插件的情況下,Web UI 界面默認爲英文。
- 隱私安全:所有 API 密鑰均在主機端解析,瀏覽器端僅負責採集音頻和展示字幕,符合安全要求。
- 客戶端構建:瀏覽器客戶端的代碼通過
npm run build:client命令從lib/client-src/*.js片段編譯生成。
總結¶
dsh-voice 通過 VAD 切割、多提供商後備和本地化部署(如 whisper.cpp),爲 DeepSeek Harness 提供了完整的語音輸入解決方案。其零延遲特性和主機端密鑰管理機制,適合對實時性和安全性有較高要求的開發場景。