前言¶
在 DeepSeek Harness(DSH)里换模型,官方选择器会把各厂商的模型平铺在一个列表里,仅按厂商分组显示标题。厂商一多、同名模型又可能出现在不同账号或开放平台下时,找模型和区分推理档位都要在一屏里完成,既占视线也不利于按习惯隐藏不用的线路。
下面介绍社区插件 dsh-model-provider-picker:它把 composer 里的模型位改成「先选厂商、再选模型」,选中后再按需选推理等级,并在设置里提供按厂商/模型隐藏的可见性规则。数据仍走官方 modelDirectories 服务,与 /model 命令读到的是同一份目录,只是多了一层过滤与交互结构。
这是什么¶
dsh-model-provider-picker 由 cjc-github 维护,归类为模型推理相关插件,当前 GitHub 仓库星标为 1,许可证 MIT,package 版本 1.0.1。它是一个 DSH profile 插件(Host 半身 + Client 半身),通过 profile 的 package.json 与 cordis.patch.yml 挂载,面向 Web / 桌面 GUI 的 composer 模型位与设置面板。
核心功能¶
两级模型列表¶
composer 的模型位显示为 厂商 · 模型名 推理等级(厂商名更淡、过长后缀省略;推理等级字体更小更淡)。点击后弹出选择器,默认只显示厂商及该厂商下可见模型数量;点厂商整行,在其下方展开该厂商的模型列表。
推理等级第二屏¶
点选提供推理等级的模型后,选择器切换到第二屏,在该模型名下选择「关闭」「开启」等档位。不提供等级的模型点一下即选中,不进入第二屏。推理等级严格绑定「厂商 + 模型」,同名模型在不同厂商下各自保留档位,互不串台。
搜索¶
选择器顶部搜索框支持三类关键词:模型名或模型 id(列出命中模型并保留厂商)、厂商名(展开该厂商全部模型)、推理等级名(如 max,列出提供该等级的模型)。搜索期间厂商自动展开,折叠状态被忽略。
可见性设置¶
设置面板新增 「模型选择器」 分区:每个厂商一个主开关,关闭后该厂商及全部模型不出现在选择器里;展开厂商后每个模型有独立开关,可只隐藏某一个模型;模型旁标注「N 档强度」,便于隐藏前确认是否有推理等级。规则立即写回 Host,选择器实时同步。
隐藏规则持久化在 Host 设置文档的 model-provider-picker 命名空间下,例如:
model-provider-picker:
hiddenProviders: [raccoon]
hiddenModels: [raccoon/sn-glm-5.2]
hiddenProviders 为整厂商隐藏,hiddenModels 为单模型隐藏,格式为 provider/model。
安装与启用¶
本插件没有资料中的 dsh plugin add github:... 一类命令,需作为 profile bundle 安装。
方式一:本地目录引用(开发)¶
在 DSH 的 profile 目录(通常是 <DSH_HOME>/profiles/web)执行:
pnpm add link:/path/to/dsh-model-provider-picker
把包名加入 package.json 的 dsh.profile.bundles:
{
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-model-provider-picker"
]
}
}
}
link: 建立 junction/符号链接,改源码后重启 Harness 即可生效。
方式二:打包安装¶
pnpm pack
pnpm add file:/path/to/dsh-model-provider-picker-1.0.0.tgz
激活¶
重启 Harness(关闭并重新打开 DSH Desktop,或重启 dsh web 进程)。插件列表出现 dsh-model-provider-picker 即加载成功;设置面板会出现「模型选择器」分区。Client 半身为 window.__ModuleLoader__.load(...) bundle,改代码后需重启宿主并刷新页面才能拿到新 bundle。
典型用法¶
- 在 composer 点击当前模型位,从厂商列表中选厂商,再选具体模型。
- 若该模型有推理等级,在第二屏选择档位;无等级则一步完成。
- 在设置 →「模型选择器」中关闭不用的厂商或单个模型,列表即时更新。
- 模型较多时,用搜索框按模型名、厂商名或等级名过滤。
开发与自测可参考仓库内命令:
npm test
也可在浏览器打开 prototype/index.html 查看与 lib/client.js 共用规则语义的交互原型。
适用场景与注意¶
适合谁: 经常在 DSH Web/桌面端切换多厂商模型、希望按厂商折叠列表并单独管理推理档位与可见性的用户。
权限与安全: 插件随当前 DSH 进程与 profile 运行,会读写 Host 设置中的可见性规则。安装前建议查看 GitHub 仓库 源码与 MIT 许可证,确认 bundle 列表与 cordis.patch.yml 符合你的 profile 策略。
已知限制(资料原文):
- 只影响 Web / 桌面 GUI;纯 Host 侧模型路由不受影响,被隐藏的模型仍可通过直接构造请求使用。
- 依赖官方 model-selection 插件的
conversation.input.modelslot 与modelDirectories服务;上游变更可能导致选择器等待而不渲染(设置页仍可用)。 - 当前不做键盘导航(无官方实现的 ↑/↓ 循环、Tab 焦点移交等)。
- 可见性规则存在本机 Host 设置里,随 profile 走,不跨设备同步。
DSH 生态强调「一切皆插件」;SkillHub 目录页 为社区收录,与 DeepSeek / 幻方无官方从属关系。
结尾¶
若你希望 composer 里「先厂商、后模型、再档位」,并自行决定哪些厂商/模型出现在列表里,dsh-model-provider-picker 在不动官方目录数据源的前提下提供了这一套 UI 与配置。详情与截图见仓库 README;安装与 bundle 配置以 README 为准。
- 目录页:https://www.skillhub.cn/plugins/cjc-github/dsh-model-provider-picker
- GitHub:https://github.com/cjc-github/dsh-model-provider-picker