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 进行测试。

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

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

小夜