dsh-thinking-levels-settings: 为 DSH Web 自定义提供商配置模型推理档位

前言

DeepSeek Harness(DSH)支持通过 llm-pi-ai 提供商接入自定义模型。在 Web 界面中,官方默认的设置通常难以直接针对每个模型精细化管理推理档位(reasoningEfforts),这通常需要手动编辑配置文件。

dsh-thinking-levels-settings 是一个官方形态的 client-plugin 插件,它为 DSH Web 的「设置 → 思考级别」新增了一页。它允许你为自定义提供商的每个模型配置推理档位,并通过官方 Settings 通道将配置持久化到本地文件。

核心功能

该插件主要提供以下能力:

  • 按模型配置推理档位:插件会从 DSH 的 settings schema 中发现可用的档位词表(如 off / minimal / low / medium / high / xhigh / max)。如果发现失败,会回退到内置的七个档位。DSH 未来新增档位无需升级插件即可跟随。
  • 三种推理模式:
    • 继承目录:省略配置字段,沿用提供方目录对该模型的能力声明。
    • 非推理:写入 reasoningEfforts: false,模型菜单中不提供任何档位。
    • 启用档位:逐档声明协议值(除 Off 外至少需要一个档位,由 DSH 硬校验)。
  • 输入能力勾选:支持勾选 text 或 image。两个都不勾选则等同于继承目录;这主要是对端点的断言,由提供方拒绝不支持的输入。
  • 预设档位协议:提供 DeepSeek / OpenAI / Grok 三套协议的预置映射(按当前可用档位取子集)。
  • 双层折叠界面:提供方分组与模型行两级折叠。折叠状态下仍显示档位摘要与输入能力徽章,折叠状态会记录在浏览器本地存储中。
  • 搜索与筛选:支持按模型名、ID 或提供方搜索。提供快捷筛选(全部/支持图片),以及更多筛选项(已配置/未配置/非推理/未保存),筛选仅展开命中的分组。
  • 实时预览与保存:展开区实时预览模型菜单将提供的档位。点击「保存全部」写入所有未保存改动,每次保存克隆整段数组以确保数据安全,并使用 expectedRevision 校验冲突。
  • 导出与导入:支持导出当前配置或草稿为 JSON 文件,导入时仅用于确认草稿,不会直接写入配置文件。

安装与启用

安装该插件需要 DSH CLI 环境以及 Web profile。

1. 安装插件

使用官方 CLI 安装(方式 A):

dsh plugin --profile web add -w github:blackteaYES/dsh-thinking-levels-settings#master

注意:-w 参数在 pnpm 版本低于 10.5.0 时是必需的,但在新版本中带上也无害。master 分支由 CI 自动维护为预构建产物,无需本地构建。

2. 升级检查

如果你的 DSH 版本在 2.0 或更低,升级前需要清理被污染的 profile(旧版依赖会导致 Cannot read properties of undefined (reading 'parse') 等错误)。请先运行移除命令,并检查 ~/.dsh/profiles/web 目录下是否残留 @deepseek-ai 相关目录。

3. 启用

安装完成后重启 dsh,在浏览器中硬刷新(Ctrl+Shift+R),进入「设置 → 思考级别」即可看到新增的管理页面。

使用说明

在「思考级别」页面中,插件会自动探测并展示已配置了 llm-pi-ai 提供方的列表。

  1. 选择一个提供方,展开其下的模型列表。
  2. 点击模型旁的编辑图标,配置推理模式、启用档位及输入能力。
  3. 使用顶部的搜索框筛选模型,或使用快捷筛选按钮快速查看状态。
  4. 配置完成后,点击工具栏的「保存全部」按钮。
  5. 如需备份或迁移配置,可点击「更多 ▾」选择导出/导入 JSON。

注意事项

  • 前置条件:必须在 profile 中配置了自定义的 llm-pi-ai 提供方,否则页面会提示没有可编辑的提供方。
  • 持久化路径:配置会写入 ~/.dsh/settings.yaml,重启后保留。
  • 写入策略:设置通道不支持数组下标操作,插件采用克隆数组后整体写入的策略,避免数据损坏。
  • 国际化:插件接入了 DSH 自带的 locale 服务,支持中英文切换。

总结

dsh-thinking-levels-settings 解决了在 DSH Web 界面下精细化管理自定义模型推理能力的痛点。通过提供友好的 GUI 界面和预设协议,它降低了手动维护 YAML 配置的门槛,适合需要在多个模型间统一或差异化配置推理强度的场景。

查看插件目录
查看源代码

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

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

小夜