用 dsh-reasoning-effort 给 DeepSeek Harness 加上模型和推理强度滑块

前言

DeepSeek Harness(命令是 dsh)把模型、工具、会话和界面都做成插件,官方说法是「一切皆插件」。开发者预览阶段,网页端已经能换模型,也能给支持思考的模型设 reasoning effort。实际用起来入口却常常拆开:换模型走原生选择器,调思考强度要么敲 /model,要么去改 settings.yaml。用过 Codex 的人会更明显——那边是滑块,这边还是菜单加命令。

社区插件 dsh-reasoning-effort 把这两件事收进输入框下方的一个控件:点开后上面是推理强度滑块,下面仍是熟悉的模型列表。档位不写死成三档,而是读当前模型在目录里公开的 reasoning.efforts。本文按插件目录页、GitHub README、v0.6.0 发行说明和 DeepSeek Harness 官方文档核对后整理。

这是什么

dsh-reasoning-effort 是一款面向 DeepSeek Harness Web 界面的模型与提供方插件,由 HanaAyane 维护,许可证 MIT,主要语言 TypeScript。社区插件目录把它归在「模型与提供方」,收录日期 2026-08-15;截至 2026-08-16,GitHub 仓库 52 星,并出现在该目录首页的精选列表里。

它解决的问题很具体:在不改配置、不离开当前会话的前提下,切换模型和调节思考强度。插件默认启用,和 dsh 自带的 /model 命令读写同一份会话模型状态。当前 main 与发行 Tag 均为 0.6.0,README 标明兼容 DeepSeek Harness packages 0.1.0-rc.6、Node.js 22.19+、React 18.xpackage.json 里客户端平台标成 web,滑块挂在网页输入区,不是终端 TUI。

写生态背景时需要分清两件事。DeepSeek Harness 是 DeepSeek 开源的智能体框架,源码在 deepseek-ai/deepseek-harnessdeepseek-harness-plugin.com 是独立的社区目录,用来检索和安装第三方插件,与 DeepSeek / 幻方没有官方从属关系,不能当成官方应用商店。

核心功能

输入框下方的模型和强度入口

第一次打开插件时,DSH 输入框下方会出现新的模型入口,按钮上同时显示当前模型和当前强度。点击后弹层分成两块:

  • 上方是推理强度滑块。拖动或点击轨道,释放后吸附到最近的有效档位。
  • 下方仍是 DSH 原生模型选择入口,点模型行就能继续换模型。

插件默认打开。不需要时,到 设置 → 通用设置 关掉「推理强度滑块」总开关,原生模型选择器会立刻回来,不必卸载。

档位完全跟模型走

滑块显示的档位来自当前模型在 DSH 模型目录中公开的 reasoning.efforts——档数、名称和顺序都由模型(更准确说是适配器目录)决定,插件只读、自动适配。v0.5.0 起不再要求模型恰好提供 off / high / max 三档;发行说明写明,这一版的核心实现由 Howardzhangdqs 贡献。

README 用常见的三档组合举例:

档位 适合场景 体验倾向
off 简单问答、改写、快速操作 更快
high 日常编程、分析和多步骤任务 速度与推理平衡
max 复杂调试、规划和高难度任务 更充分的推理

DeepSeek 系模型通常公开 off / high / max;GLM coding 系(如 GLM-5.2)公开 off / low / medium / high / xhigh 五档。v0.5.0 发行说明还提到 GLM-5.3(Low / High / Xhigh)、GPT-5(Minimal / Low / Medium / High)以及 o3 / o4-mini 等,只要目录里公开了两档及以上,滑块就会出现。

少于两档、或没有声明任何档位时,菜单会显示「当前模型未提供推理强度档位」。滑块只提交模型已经公开的 effort 值,不会绕过模型或部署本身的能力限制;提交前会用重新加载的目录数据再校验一次,避免拖动过程中切模型把档位发错。

自定义 provider 的只读指引

内置路由的档位来自 pi-ai 目录,插件完全不改。只有你在 settings.yamlllm-pi-ai 里自己声明的模型,才会在缺档位或声明与知识库不符时给出指引。这是 v0.6.0(2026-08-16)加上的能力。

打开模型菜单后,符合条件时会出现 查看档位声明指引

  1. 面板给出建议档位。知识库命中时,例如 GLM-5.2 是 minimal / low / medium / high
  2. 给出一段可直接复制的完整条目 YAML(含 - id: 行,原有 namecontextWindowmaxTokens 会保留),以及 settings.yaml 路径。
  3. 用这段内容整体替换对应的 - id: 条目(不要复制出第二个 llm-pi-ai: 根)并保存。DSH 一般会自动加载;未生效就重启 Web Host 再刷新页面。

内置知识库目前收录 GLM-5.2(minimal / low / medium / high)和 Kimi K3(low / high / max)。未收录的模型会得到带注释的通用模板,按端点文档填值即可。遇到「端点因 developer 角色拒绝请求」这类情况,面板会直接警告;README 举例:阿里云百炼 OpenAI 兼容端点建议改用内置 zai 路由。

插件只提供片段,不会替你改任何配置;内置目录里的档位集合(即使只有一档)也不会被标记。README 还写明:插件不新增遥测、凭据处理或服务端存储。

可选的大肥鱼滑块

首次安装默认是纯白按钮。想换成八帧奔跑小人,到 设置 → 通用设置,在「外观」下方打开 大肥鱼滑块,再回到模型入口即可。v0.4.0 把这套外观并进主线,默认关闭。

大肥鱼只替换按钮外观,不改变档位吸附、键盘控制和模型选择。静止时大约 720 ms 播放一轮,拖动时加速到大约 420 ms。系统开了「减少动态效果」后会停在稳定帧。两个开关都只保存在当前浏览器。

跟手拖动、主题和回滚

README 把交互边界写得很清楚:

  • 按钮按指针位置连续移动,释放后才吸附到有效档位,用来去掉拖动延迟。
  • 深色主题是蓝紫黑渐变,浅色是蓝白渐变,强度越高蓝色越深。
  • 波浪、冲击波、像素辐射、粒子和拖尾只出现在按钮左侧,不会越过按钮。
  • 更新失败时恢复到上一个已确认档位。

安装与启用

社区目录页给出的安装命令是:

dsh plugin add github:HanaAyane/dsh-reasoning-effort

在 DeepSeek Harness 终端里运行即可。目录页同时提醒:插件以当前 dsh 进程的权限运行,安装时可能执行代码;安装前应检查源代码仓库和许可证。如需可复现安装,请固定 commit 哈希。

仓库 README 面向 Web Profile,推荐两条命令(PowerShell / 终端均可):

dsh plugin --profile web add github:HanaAyane/dsh-reasoning-effort#main
dsh --profile web --dump-config

#main 始终装最新代码,之后可能包含未发布改动。当前 main0.6.0,与 Tag v0.6.0 一致。要钉在这一版,把 #main 改成 #v0.6.0

dsh plugin --profile web add github:HanaAyane/dsh-reasoning-effort#v0.6.0

按目录页的写法固定到本稿核对过的 commit:

dsh plugin add github:HanaAyane/dsh-reasoning-effort#f94622b46078ac8c064f91bdc10ab27e8cf32270

插件在 Web Host 启动时载入。安装命令跑完后,结束当前 Host 再重新启动,然后刷新 DSH 页面。不要让 Agent 替你关掉正在跑的 Host。确认是否载入:

dsh --profile web --dump-config

输出里应出现 name: dsh-reasoning-effort。卸载:

dsh plugin --profile web remove dsh-reasoning-effort

卸载后同样重启 Web Host,原生模型选择器会自动恢复。

典型用法

第一次打开滑块

  1. 新建或打开一个会话。
  2. 点击输入框下方显示「模型 + 当前强度」的按钮。
  3. 拖动滑块或点击轨道,释放后吸附到最近档位。
  4. 点击滑块下方的模型行,进入 DSH 原生模型列表。

之后用 /model 改模型和强度,滑块会跟着变,因为两边读写的是同一份会话模型目录。

给自定义模型补档位

模型不在 pi-ai 自带目录里时(README 以 GLM-5.3 为例),菜单会提示未提供档位。可以按指引粘贴,也可以自己在 ~/.dsh/settings.yaml 声明。仓库文档里的 zai coding 路由示例如下:

llm-pi-ai:
  providers:
    zai-coding-cn:
      models:
        - id: glm-5.3
          name: GLM-5.3
          contextWindow: 1000000
          maxTokens: 131072
          reasoningEfforts:   # 键=滑块显示的档位名,值=实际发给 API 的 reasoning_effort
            low: "low"
            high: "high"
            xhigh: "max"
          compat:             # zai 路由检测默认不发 reasoning_effort,需要显式打开
            thinkingFormat: "zai"
            supportsReasoningEffort: true

几点来自 README 的约束:

  • 档位名用 DSH 体系(off / minimal / low / medium / high / xhigh),值是端点实际接受的 reasoning_effortoff 不声明即不可选,适合无法关闭思考的模型。
  • 已收录在 pi-ai 目录中的模型(如 GLM-5.2)会自动继承档位,不必手写。
  • 上游目录收录该模型后,手写声明可以删掉;手写条目始终优先于目录。
  • 最终取值由 host 校验并发送,插件不会绕过限制。

要给插件自己的知识库追加条目,写到它的命名空间,用户条目优先于内置:

dsh-reasoning-effort:
  entries:
    - id: my-model
      provider: "*"          # provider 路由名,* 通配
      model: "my-model-id"   # 模型 id,* 通配
      note: 说明文字
      efforts:               # 档位名 → 端点实际接受的取值
        low: "low"
        high: "high"
        max: "max"
      compat:                # 仅 openai-completions 路由需要
        thinkingFormat: "openai"
        supportsReasoningEffort: true

安装后看不到滑块

按 README 依次确认:

  1. 安装后已经重启 DSH Web Host。
  2. 设置 → 通用设置 → 推理强度滑块 处于启用状态。
  3. 当前模型在目录中公开了至少两档推理强度,且部署没有关闭 thinking。未声明档位的模型,用上一节补声明。

适用场景与注意事项

适合经常在 DSH 网页界面里换模型、按任务调思考强度的人,尤其是已经接了自定义 provider(自建网关、第三方兼容端点)却发现滑块不出现的情况。日常问答用低档、复杂调试用高档,不必先改 YAML。只在终端 profile 里跑 dsh、不用 Web UI 的话,这套客户端控件用不上。

使用前注意这几条已经核对过的边界:

  • 插件以当前 dsh 进程的权限运行,安装时可能执行构建脚本。安装前检查 GitHub 仓库和 MIT 许可证;生产环境建议固定 Tag 或 commit。
  • 客户端平台是 web。档位指引的 RPC 也只挂在 Web profile 上。
  • DeepSeek Harness 仍处于开发者预览,上游 UI 或服务变更可能要求插件同步更新。当前目标版本是 0.1.0-rc.6
  • 滑块不能给模型「发明」思考能力。目录没有档位、部署关掉了 thinking,界面就不会出现可拖的档。
  • 插件不改内置目录、不写 settings.yaml、不新增遥测或凭据处理。自定义档位要你自己粘贴。

小结

dsh-reasoning-effort 把 Codex 风格的「模型 + 推理强度」收进 DeepSeek Harness 输入框下方:档位跟模型目录走,和 /model 同步,失败会回滚。v0.6.0 又给自定义 provider 加了只读的 YAML 指引,仍然不替你改配置。社区目录安装命令和仓库地址如下,装之前先看源码和许可证。

  • 目录页:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-reasoning-effort/
  • GitHub:https://github.com/HanaAyane/dsh-reasoning-effort
  • 当前发行版:https://github.com/HanaAyane/dsh-reasoning-effort/releases/tag/v0.6.0
羽毛球分组比赛记分
小程序二维码

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

小夜