dsh-voice-prompt-compressor:本地化語音轉寫文本壓縮工具

DSH 插件生態通常用於擴展 DeepSeek Harness 的能力。在語音轉寫場景下,轉錄文本往往包含大量填充詞、重複內容以及禮貌用語,這會佔用較多 Token 並影響上下文理解。dsh-voice-prompt-compressor 旨在解決這一痛點,提供一種確定性的本地化文本壓縮方案。

定位

該插件由開發者 yuzh1090 維護,採用 MIT 許可證。它是一個 DeepSeek Harness (DSH) 插件,核心功能是將冗長的語音轉寫文本壓縮爲 Token 高效的提示詞,整個過程完全在本地運行,不產生網絡請求,也不消耗 LLM Token。

核心功能

  • 本地確定性壓縮:通過歸一化、去除填充詞、去除禮貌用語、去重等步驟進行壓縮。整個過程不聯網,不調用 LLM,不消耗 Token。
  • 雙語詞庫:內置中英文填充詞、猶豫詞和禮貌用語詞表;支持通過 CJK 字符比例自動檢測語言。
  • 工具與技能:註冊了 compress_voice_text 工具和 voice-prompt-compressor 技能。Agent 可以直接調用工具,或通過技能自動觸發。
  • 配置可調:支持通過配置項調整壓縮模式(mode)和是否保留禮貌用語(keepPoliteness)。

安裝

使用官方安裝命令:

dsh plugin --profile web add dsh-voice-prompt-compressor

注意:源碼倉庫中的 dist/ 目錄未提交,安裝前需先克隆倉庫並構建:

npm install
npm run build

安裝完成後,刷新 Web 頁面即可。插件在新的會話中即可生效。

用法

技能模式(推薦)

用戶在聊天中粘貼長篇大論的語音轉寫文本。Agent 會自動加載 voice-prompt-compressor 技能,調用 compress_voice_text,並將壓縮後的文本組織爲四個部分的結構化提示詞(Context / Goal / Constraints / Deliverables)。

工具模式

Agent 可以直接調用 compress_voice_text 工具,傳入以下參數:

  • text (string, 必填):待壓縮的語音轉寫文本。
  • language (string, 可選):詞庫語言,默認 auto(通過 CJK 比例檢測)。
  • mode (string, 可選):壓縮強度,默認爲配置項。可選值:light、balanced、aggressive。
  • keepPoliteness (boolean, 可選):是否保留禮貌用語,默認爲配置項。

返回結果示例:

{
  "compressed": "…",
  "originalLength": 512,
  "compressedLength": 210,
  "estimatedTokensSaved": 76,
  "ratio": 0.59,
  "removedCategories": {
    "fillers": 18,
    "repeats": 3,
    "politeness": 2
  }
}

技術細節

插件採用純機械、確定性的處理管道:

  1. 歸一化:全角字符轉半角,統一空白字符。
  2. 去填充詞:移除填充詞和話語標記(如“嗯”、“那個”、“就是說”、“um”、“like”等)。在 balanced 模式下,有歧義的代詞僅在標點或空格旁移除;在 aggressive 模式下會移除更多代詞及猶豫詞(如“說實話”)。
  3. 去禮貌用語:移除禮貌性填充(如“麻煩你”、“please”、“thanks”等),除非配置中設置了保留。
  4. 去重:合併相鄰的重複內容(如“不對不對” → “不對”)。

壓縮過程僅做文本處理,不重寫原意,技術要求、約束條件和業務規則均會逐字保留。

開發

插件依賴 Node.js 環境(>= 18)。主要依賴包括 @deepseek-ai/schemastery 和 yaml。開發涉及構建 TypeScript 項目,使用 npm install 安裝依賴,使用 npm run build 構建產物,並使用 npm test 進行測試。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜