前言¶
DeepSeek Harness 内置了压缩策略,默认值通常是写死的(例如当前模型上下文窗口的 80%)。开发者有时需要更灵活的控制,例如设定一个绝对的 token 上限,或者自定义比例。dsh-context-compressor 是一个外置插件,提供了这些配置能力。
核心功能¶
- 用户设置绝对上下文上限:你可以设定一个具体的 token 数作为会话的上限。
- 自动压缩会话:一旦会话达到配置的阈值,插件会自动触发压缩。
- 独立的设置页:插件自带设置界面,无需修改配置文件。
- 工具结果剪枝:在压缩前先进行确定性剪枝,作为廉价手段。
- Pre-step hook 集成:在每一步边界进行检测和处理。
安装¶
安装前请确认环境满足要求。使用官方提供的安装命令:
dsh plugin --profile desktop add https://github.com/AllShadowAnan/dsh-context-compressor/releases/download/v1.1.0/dsh-context-compressor-1.1.0.tgz
如果是通过本地链接安装,需要先执行 pnpm install,因为软链接不会自动安装依赖。
安装完成后,活动 profile 需要刷新浏览器页面或重启应用才能生效。
配置与使用¶
插件自带一个独立的设置页。你可以选择两种触发模式之一:
- 绝对上限:设定一个具体的 token 数。适用于成本与延迟上限控制。
- 按窗口比例:设定一个占模型上下文窗口的百分比(如 80%)。适用于需要自定义相对阈值的情况。
设置页包含以下主要选项:
- 启用触发条件:总开关。
- 触发方式:绝对上限或按窗口比例。
- 上下文上限:绝对模式下生效,设为 0 表示不设上限。
- 触发比例:比例模式下生效,取值范围 5–95。
- 保留最近:保持原文的尾部长度,用于摘要。
- 单步最多压缩次数:同一步内最多压缩的轮次。
可以通过以下命令检查插件状态:
curl http://127.0.0.1:19387/dsh-context-compressor/status
注意事项¶
- Token 计数是估算值:计量器使用固定密度启发式对请求镜像计价,请将触发阈值视为预算线,而非精确计数。
- 比例模式依赖模型声明:如果模型未声明上下文窗口,比例模式将保持惰性。
- 需要挂载压缩栈的 profile:桌面端与 web 端通常满足,但最小 profile 可能不支持。
- 本地安装需 pnpm:使用
link:安装时必须执行pnpm install。 - 修改源码需重启:修改插件源码后必须重启应用才能生效。
参考资源¶
- 插件目录:https://www.skillhub.cn/plugins/AllShadowAnan/dsh-context-compressor
- 源码仓库:https://github.com/AllShadowAnan/dsh-context-compressor