dsh-compact-selected-model:压缩会话摘要时使用当前选定的模型

DeepSeek Harness (DSH) 的核心设计理念之一是插件化。在使用过程中,会话压缩是保持上下文长度可控的关键操作。默认情况下,DSH 在执行 /compact 或自动压缩时,使用的是上一轮对话中回答问题的模型。如果你在 Web UI 中切换了模型,但随后运行 /compact,系统仍会使用旧模型生成摘要。dsh-compact-selected-model 插件解决了这个问题,它让压缩操作使用当前选定的模型。

插件介绍

这是 DeepSeek Harness 的一个客户端插件,用于在压缩会话摘要时,使用当前选定的模型,而非上一轮的模型。该插件由 DenAbr 维护,采用 MIT 许可证。

安装与兼容性

在安装前,请确保你的 DeepSeek Harness 版本在 0.1.7-rc.2 到 0.2.x 之间。

1、运行安装命令:

npx @deepseek-ai/dsh plugin --profile web add dsh-compact-selected-model

2、安装完成后,重启 dsh web 服务。

核心功能与原理

插件支持 /compact 命令以及自动压缩功能。其工作逻辑如下:

  • 模型选择机制:在 Web UI 中选择模型时,DSH 会向会话添加一个 model/selection 事件。该选择会一直保持待处理状态,直到下一次请求使用它。
  • 请求拦截:插件会监听 llm/stream 事件。当检测到一个请求的 purpose 为 'compaction',且会话中有待处理的模型选择时,插件会将该请求发送给选定的模型。
  • 覆盖策略:如果 compaction-basic 中显式设置了 summarizationModel,插件将不会介入,保持原有行为。

注意事项

在使用过程中需注意以下几点:

  • 日志显示差异:会话日志中的 compaction/summary 事件仍会显示旧模型名称,因为记录该事件的是 compaction-basic 组件。实际的请求去向可在主日志中查看。
  • 自动压缩阈值:自动压缩的阈值仍基于上一个模型的上下文窗口计算。
  • 运行模式限制:该插件依赖会话控制器的 modelSelection 投影,因此在无头(headless)运行模式下不起作用。
  • 失败处理:如果选定的模型失败(例如触发了速率限制或上下文窗口不足),压缩操作也会随之失败。此时需要切换回可用的模型并重新运行 /compact。

典型用法

在 Web UI 中切换模型后,直接运行 /compact 即可。插件会使用当前选定的模型来生成会话摘要。

总结

该插件为 DSH 用户提供了更灵活的会话压缩控制能力,允许根据当前意图选择最合适的模型来处理摘要生成。

  • GitHub 仓库: https://github.com/DenAbr/dsh-compact-selected-model
  • 插件目录: https://www.skillhub.cn/plugins/DenAbr/dsh-compact-selected-model
羽毛球分组比赛记分
小程序二维码

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

小夜