前言¶
在 DSH(DeepSeek Harness)里跑多供应商、多模型时,上下文窗口、最大输出、输入模态和思考挡位往往散落在配置或引擎默认行为里,改一处要翻 settings.yaml 或对照文档,也不方便按模型逐项对比。社区插件 dsh-model-tweaks(维护者 AkotaP,分类:模型推理)在 Web 端「设置」中增加 模型能力 页面,用卡片式界面管理上述字段,并附带可自定义的全局预设列表。下面介绍它的定位、能力与安装用法;事实以 GitHub 仓库 README 为准。插件要求 DSH 0.1.7-rc.2 及以上(0.1.x);当前 npm 包版本为 0.1.0,许可证 MIT。
这是什么¶
dsh-model-tweaks 是一个 DSH Web 插件:在设置里多一个 模型能力 入口,用来管理每个模型的上下文窗口、最大输出、输入模态、思考挡位,以及插件自管的全局预设。它不替代 DSH 的模型注册流程,而是在已有 provider / 模型列表之上,把可调的推理相关能力集中到同一页,并采用「草稿 + Apply」避免误写盘。
社区目录页:https://www.skillhub.cn/plugins/AkotaP/dsh-model-tweaks(独立站点,与 DeepSeek / 幻方无官方从属关系)。
核心功能¶
模型能力页¶
位置:设置 → 模型能力。页内两个页签:模型能力 / 预设。
模型能力 页采用卡片式两级折叠:点供应商卡片标题展开该组;点模型卡片标题选中并在卡片内展开能力编辑区,再点一次可收起。
每个模型可编辑四个字段:
| 字段 | 说明 |
|---|---|
| 上下文窗口 | 与预设或自定义值联动 |
| 最大输出 | 与预设或自定义值联动 |
| 输入模态 | 仅 Text / Image(DSH 无 audio/video) |
| 思考挡位 | 下拉:Default / Global / 命名组合 / Custom… |
草稿 + Apply:只有在该模型编辑区点击 Apply 时,才会写入 settings.yaml 的 llm-pi-ai。重置为默认 只改草稿,仍需 Apply 才落盘。
选 Default 表示该字段被删除(不写 null/0/空对象),回落行为由 DSH 引擎决定;Apply 之后下拉里显示的是生效后的真实值。
预设页¶
预设 页管理四份插件自管的列表,同样是卡片布局;每张卡片底部有各自的 Apply(同样是草稿模式,改动不即时落盘)。
| 卡片 | 内置内容 |
|---|---|
| 上下文窗口 | Default, 8K, 16K, 32K, 64K, 128K, 256K, 512K, 1M(十进制 8000…1000000) |
| 最大输出 | Default, 4K, 8K, 16K, 32K, 64K, 128K, 256K |
| 思考挡位 | off, minimal, low, medium, high, xhigh, max(可增删改、上下排序) |
| 思考组合 | DeepSeek · OpenAI Standard · Simple(均以 off 开头,可新建 / 编辑 / 删除 / 跨模型复用) |
预设持久化路径:{DSH_HOME}/dsh-model-tweaks/presets.json。文件不存在或损坏时回落内置默认,不会报错。页面底部 恢复默认预设 可一键回到内置列表。一次 Apply 提交的是整份预设文档(同一份文档不允许半保存)。
安装与启用¶
安装会改动 %USERPROFILE%\.dsh 下的 profile 配置,并且需要重启 DSH(重启会打断正在跑的会话)。插件以当前 DSH 进程权限运行,安装前请自行查看源码与 MIT 许可证。
方式一:插件页
侧边栏 插件 → 添加插件,填入仓库地址 https://github.com/AkotaP/dsh-model-tweaks(同处也接受 npm 包名 dsh-model-tweaks、本地目录绝对路径和 tarball)。DSH 会先用 git ls-remote 探一次仓库再交给 pnpm,装完后在列表里确认插件为启用状态。
方式二:命令行(等价写法)
dsh plugin --profile desktop add https://github.com/AkotaP/dsh-model-tweaks
# 发布到 npm 之后可以直接用包名:dsh plugin --profile desktop add dsh-model-tweaks
装好后重启 DSH,设置里应出现 模型能力 页签。
卸载:侧边栏 插件 页卸载,或执行:
dsh plugin --profile desktop remove dsh-model-tweaks
并确认 profile 的 dsh.profile.bundles 里已移除该项。
典型用法¶
- 安装并重启后,打开 设置 → 模型能力 → 模型能力,按供应商展开,选中目标模型。
- 在编辑区调整上下文窗口、最大输出、输入模态或思考挡位;需要恢复引擎默认时,将对应项选为 Default(Apply 后会删除该字段而非写空值)。
- 确认无误后点击该模型编辑区的 Apply,配置写入
settings.yaml的llm-pi-ai。 - 若常用手动数值或思考挡位列表,切换到 预设 页,在对应卡片中增删改排序,再点该卡片底部的 Apply 提交整份
presets.json。
适用场景与注意¶
适合谁:需要在 DSH Web 里按模型细调上下文、输出上限、图文模态和思考挡位,并希望用统一预设减少重复输入的开发者。
首次保存与配置冲突:首次保存会把该 provider 的 models 整数组写进 settings.yaml 用户层(DSH 既有机制,官方 Models 页同理),之后 cordis.patch.yml 里同 provider 的模型改动会被它盖住。恢复方法:删掉 settings.yaml 里 llm-pi-ai.providers.<provider>.models 整个键。
开发与契约:仓库提供离线测试(node --test,等价 pnpm test),契约覆盖 manifest、host API 与客户端页语义;接口细节见仓库 docs/CONTRACT.md,工程说明见 docs/HANDOFF.md。
结尾¶
dsh-model-tweaks 把 per-model 的上下文、最大输出、模态与思考挡位,以及全局预设,收敛到 DSH 设置里的单一页面,并用 Apply 控制落盘时机。需要安装或源码时,可访问社区目录页 https://www.skillhub.cn/plugins/AkotaP/dsh-model-tweaks 或 GitHub:https://github.com/AkotaP/dsh-model-tweaks。