前言¶
在 DSH Desktop 的聊天框中使用語音輸入時,dsh-audio-copilot 提供了一個麥克風按鈕:點擊後說話,多引擎轉寫後自動填入輸入框。
這是什麼¶
dsh-audio-copilot 是 ai-yucheng 維護的 DSH 語音輸入插件。它的主要能力是 ASR/語音輸入:瀏覽器端進行麥克風錄音,服務端調用所選引擎轉寫,再將結果填入聊天輸入框。
該插件資料標明基於 DSH 0.1.0-rc.7 線,許可證爲 MIT。使用前置條件包括 DSH Desktop、Node.js ≥ 20,以及 ffmpeg / ffprobe 在 PATH 中。
核心功能¶
- 聊天輸入框旁提供麥克風按鈕:點擊後說話,轉寫結果自動填入輸入框。
- 支持
zhipu、local、gemini、openai四種語音轉寫引擎。 local引擎使用本地faster-whisper離線轉寫。首次使用會下載模型,約 460MBsmall或約 1.5GBmedium,之後離線可用。zhipu引擎使用 GLM-ASR-2512,支持中文普通話、四川/粵/閩/吳方言及數十種外語。- 最長錄音 28 秒,到點自動停止;更長音頻需要分段錄音。
gemini引擎遇到免費額度 429 限流時,會按提示等待後重試一次;免費檔每時段 20 次請求。zhipu引擎遇到 webm 時,服務端使用 ffmpeg 自動轉成 16kHz wav。- 轉寫失敗會給出提示;如果文本注入輸入框失敗,會自動把結果複製到剪貼板。
- 配置項有 schema 校驗。
- 轉寫文件大小上限爲 25MB,
maxAudioBytes默認26214400;ASR 超時默認120000毫秒。
安裝與啓用¶
先確認前置條件:DSH Desktop 可用,Node.js ≥ 20,ffmpeg / ffprobe 已在 PATH。
1、在 DSH 的 profile web 目錄克隆倉庫:
git clone https://github.com/ai-yucheng/dsh-audio-copilot.git
2、將插件以本地鏈接方式加入 profile。將路徑替換爲實際克隆目錄:
pnpm add dsh-audio-copilot@link:C:/絕對路徑/dsh-audio-copilot
3、在 profile 的 package.json 的 dsh.profile.bundles 數組中追加:
"dsh-audio-copilot"
典型用法¶
按所選引擎配置 API key。資料給出的示例是:使用 zhipu 時配置 ZHIPU_API_KEY,使用 gemini 時配置 GEMINI_API_KEY。
在 profile 的 cordis.patch.yml 中配置插件鍵。下面示例展示需要配置的鍵,具體端點和模型值按所選引擎填寫:
- id: audio-copilot
config:
asrEngine: zhipu
asrBaseUrl: <按所選端點填寫>
asrModel: <按所選模型填寫>
asrApiKeyEnv: ZHIPU_API_KEY
配置完成後,依次執行:
1、重啓 DSH Desktop。
2、硬刷新瀏覽器:Ctrl+Shift+R。
3、點擊聊天框工具欄的麥克風按鈕,允許瀏覽器麥克風權限。
4、說話並停止,轉寫文字自動填入輸入框。
可用以下命令驗證配置:
dsh --profile web --dump-config | grep audio-copilot
引擎說明¶
zhipu:支持中文普通話、四川/粵/閩/吳方言及數十種外語;按量計費,餘額不足會導致轉寫失敗。local:本地faster-whisper離線轉寫;首次使用需要下載模型;方言效果一般,粵語建議換zhipu引擎。gemini:免費檔每時段 20 次請求;遇到 429 限流時自動按提示等待後重試一次。openai:作爲可選轉寫引擎之一;按所選引擎配置對應 API key。
適用場景與注意¶
適合在 DSH 聊天框中使用語音輸入、希望轉寫結果直接進入輸入框的場景。若關注中文方言,可優先關注 zhipu;若需要離線或減少外部依賴,可關注 local;若使用 gemini 或 openai,需要先準備對應 API key。
由於插件以當前 DSH 進程權限運行,且會涉及本地錄音、本地 ffmpeg / ffprobe、部分外部 ASR 服務與配置校驗,安裝前應檢查源碼和許可證。本文介紹的許可證爲 MIT。
鏈接¶
- 目錄頁:https://www.skillhub.cn/plugins/ai-yucheng/dsh-audio-copilot
- GitHub:https://github.com/ai-yucheng/dsh-audio-copilot