前言¶
DeepSeek Harness (DSH) 的理念是「一切皆插件」。在構建智能體時,輸入框右下角通常只有發送按鈕。dsh-voice 插件在這個位置增加了一個麥克風按鈕,點擊後說話,轉寫結果會直接追加到輸入框。這個工具由 charlie-pan 維護,解決的是在 DSH 環境下快速通過語音輸入文本的需求。
功能特性¶
插件在輸入框右下角(發送鍵左側)增加了一個麥克風按鈕。點擊開始錄音,再次點擊停止並轉寫,文字結果會追加進輸入框。主要能力包括:
- 一鍵語音輸入:點一下開始錄音、再點一下停止並轉寫。
- 三種識別引擎:通過配置切換。
webspeech(瀏覽器自帶,Edge 可用,國內 Chrome 可能不通)、xfyun(訊飛語音聽寫,中文效果好,密鑰存儲在本地服務端)、whisper(本地運行,音頻不出機器,可離線)。 - 麥克風設備選擇:下拉框列出所有音頻輸入設備,支持持久化。
- 自動增益:防止低音量語音無法檢測。
- 靜音/過短攔截:錄音不足 0.25 秒或完全靜音時直接攔截,節省配額。
- 長句完整拼接:防止訊飛分段導致只顯示後半句。
- 液態玻璃主題:按鈕樣式與 dsh-liquid-glass 主題一致。
安裝與啓用¶
在終端執行以下命令安裝插件:
dsh plugin --profile web add git+https://github.com/charlie-pan/dsh-voice.git
安裝完成後,重啓 dsh web 並進行硬刷新,打開一個會話,即可在輸入框右下角看到麥克風按鈕。
配置¶
修改插件目錄下的 client.js 文件頂部的常量:
| 常量 | 默認值 | 說明 |
|---|---|---|
ASR_ENGINE |
'webspeech' |
引擎選擇:webspeech / xfyun / whisper |
WEBSpeech_LANG |
'zh-CN' |
Web Speech 引擎語言 |
MODEL_ID |
onnx-community/whisper-small |
Whisper 模型 ID |
TRANSCRIBE_LANGUAGE |
'chinese' |
Whisper 轉寫語言 |
若使用 xfyun 引擎,需配置訊飛憑據。憑據僅存儲在本地服務端,不進瀏覽器:
- 註冊訊飛開放平臺,獲取 APPID、APIKey 和 APISecret。
- 配置環境變量
XFYUN_APPID、XFYUN_APIKEY、XFYUN_APISECRET。 - 或者在插件目錄放置
xfyun.secret.json文件(已被.gitignore忽略)。
注意事項¶
- 國內環境使用
webspeech引擎時,Chrome 可能報錯,建議使用 Edge 或改用xfyun引擎。 - 使用
whisper引擎時,務必設置TRANSCRIBE_LANGUAGE,否則可能識別出英文。 - 插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證(MIT)。