dsh-plugin-reasoning-efforts:为 DSH 第三方中转模型补全推理等级选择

DeepSeek Harness (DSH) 的聊天框里有一个「推理等级」选择器,只有当模型上报了 reasoning.efforts 能力时才会出现。官方 DeepSeek 通道自带这个能力,但通过 llm-pi-ai 手工声明的第三方中转模型(如各类公益站)默认没有,选择器也就不出现。Web 设置页又没有暴露 reasoningEfforts 字段,想配都没地方配。

本插件是给 DeepSeek Harness (dsh) 的第三方中转模型补上「推理等级」选择器。它由 chuling-lingling 维护,采用 MIT 许可证。

核心功能

  • 监听 llm-pi-ai 设置段并自动补写能力声明。
  • 默认提供 6 档推理等级选择。
  • 支持按模型族定制方言(thinkingFormat)。
  • 路由级默认等级智能写入。
  • 会话级独立设置等级。

安装与启用

  1. 确保已安装 pnpm。
  2. 确认 dsh 版本为 0.1.x。
  3. 执行安装命令。
dsh plugin --profile web add github:chuling-lingling/dsh-plugin-reasoning-efforts

安装后需重启 dsh web 才能生效,无需任何额外配置。

典型用法

  1. 启动 dsh web,打开任意会话。
  2. 点击聊天框底部的「选择模型」按钮。
  3. 在模型列表中选中转分组下的模型。
  4. 点击「推理等级」,选择想要的档位。
  5. 发送消息,等级随每次请求生效(会话级)。

等级选择是会话级的,每个会话可以独立设置。

配置 (可选)

插件默认给所有模型提供统一的 6 档等级(off / low / medium / high / xhigh / max),默认档位为 high。规则放在 ~/.dsh/settings.yaml 的 reasoning-efforts 段,全部有默认值。

reasoning-efforts:
  # 基础规则:默认匹配所有模型(.),统一 6 档 + 通用 reasoning_effort 方言
  patterns: ['.']                  # 模型 ID 匹配(不区分大小写的正则)
  levels: [off, low, medium, high, xhigh, max]
  default: high
  thinkingFormat: openai
  setCompat: true                  # 是否给匹配模型补 thinkingFormat
  providers: []                    # 只处理这些路由;空 = 全部
  # 附加规则:数组顺序即优先级,先命中先生效;都不命中才回落到基础规则
  rules:                           # 内置默认:DeepSeek 系用专属方言
    - patterns: [deepseek, reasoner]
      levels: [off, low, medium, high, xhigh, max]
      default: high
      thinkingFormat: deepseek

按模型族定制方言/档位示例(默认已覆盖全部模型;只有想给某族换方言或收窄档位时才需要):

reasoning-efforts:
  rules:
    # 保留 DeepSeek 内置规则(不写则失去 Off 的真关闭语义)
    - patterns: [deepseek, reasoner]
      levels: [off, low, medium, high, xhigh, max]
      default: high
      thinkingFormat: deepseek
    # 智谱 GLM 系改用 zai 方言(thinking: {type: enabled/disabled} + reasoning_effort)
    - patterns: [glm]
      levels: [off, low, high]
      default: high
      thinkingFormat: zai

路由默认等级说明:插件只会在「该路由上所有已获等级的模型都支持默认值」时才写路由级 reasoning(因为不支持的模型会在请求时报错)。混合路由(比如 Grok 和 GLM 同站)如果拿不到默认档,需给每条规则配一个共同支持的 default,或手动在路由上写 reasoning:。

已知边界

  • 只处理路由里手工声明的模型(models: 列表);目录路由(pi-ai 自带模型目录)本就有完整能力元数据,无需处理。
  • 插件只补缺失字段,不覆盖已有声明:想改某个模型的档位,直接编辑 settings.yaml(或删掉该模型的 reasoningEfforts 让插件按当前规则重新生成)。
  • 扩展档位(Medium / Xhigh 等)以 reasoning_effort: "<等级>" 原样发给后端;如果中转不支持某个值,选择后会在请求时报错,切回其他档即可。
  • 自定义规则的等级集合请确认中转真实支持,插件无法预先验证。

结尾

该插件通过监听配置段并按规则补写能力声明,解决了第三方中转模型在 DSH 中无法使用推理等级选择的问题。对于需要在聊天界面精细控制推理强度的用户,这是一个必要的工具。

  • 插件目录:https://www.skillhub.cn/plugins/chuling-lingling/dsh-plugin-reasoning-efforts
  • 代码仓库:https://github.com/chuling-lingling/dsh-plugin-reasoning-efforts
羽毛球分组比赛记分
小程序二维码

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

小夜