dsh-model-master
dsh-model-master(模型选择大师)for DeepSeek Harness — 15-language UI (top-15 world languages) — 保留 DSH 原生模型按钮与菜单,在原版狭小下拉列表即将弹出时无缝接管为 Spotlight 大面板。集成 TTFT/TPS 流式测速(失败如实展示、绝不编造数据)、原生渠道分组、⚡ 智能优选、全球百强榜(点击行搜本机渠道);内置推理档位 FX(官方菜单推理等级行滑条 + 档位切换芯片能量闪动);原生模型位被其它插件占用时自动出现工具行备用入口(防顶掉)。
What it is
dsh-model-master(模型选择大师)for DeepSeek Harness — 15-language UI (top-15 world languages) — 保留 DSH 原生模型按钮与菜单,在原版狭小下拉列表即将弹出时无缝接管为 Spotlight 大面板。集成 TTFT/TPS 流式测速(失败如实展示、绝不编造数据)、原生渠道分组、⚡ 智能优选、全球百强榜(点击行搜本机渠道);内置推理档位 FX(官方菜单推理等级行滑条 + 档位切换芯片能量闪动)…
How to install
Run this in the DSH web profile, then refresh the page.
$ dsh plugin --profile web add dsh-model-master@1.1.2
DSH versions accepted
>=0.2.0 <0.3.0
Author and traction
NEETnina · ★ 19 · Updated 2026-10-31
About this plugin
dsh-model-master · DSH 模型选择器 / 模型选择大师(DeepSeek Harness model picker)
= 20" />
> A Spotlight-style model switcher for DeepSeek Harness (DSH) — with real streaming speed probes, a live global leaderboard, and a 15-language UI.
把 DSH 原生那个狭小的模型下拉列表,接管成一块可搜索、可测速、可对照全球榜单的居中大面板。你的模型按钮和菜单仍然是原生的 —— 插件只在"小窗口即将弹出"的那一刻无缝接管。
也被称为 / also found as: DSH 模型选择器 · DSH 模型切换 · DSH 模型测速 · DSH 插件 · DSH model picker · DSH model selector · DSH model switcher · TTFT / TPS benchmark for DSH
📖 在线文档站: · npm:
30 秒上手
dsh plugin --profile web add dsh-model-master
装完重启 DSH(或等 HMR 自行重载)即可,无需构建步骤。完整说明见 [安装](#安装)。
深浅主题各一张,两种配色下对比度均按同一套令牌缩放。
深/浅两张为同一面板的两套主题,非不同版本。
---
目录
- [它解决什么问题](#它解决什么问题)
- [功能](#功能)
- [安装](#安装)
- [使用](#使用)
- [设计原则:绝不给假数据](#设计原则绝不给假数据)
- [配置](#配置)
- [数据与隐私](#数据与隐私)
- [HTTP API](#http-api)
- [开发](#开发)
- [发布](#发布)
- [兼容性](#兼容性)
- [致谢与许可](#致谢与许可)
- [许可证](#许可证)
---
它解决什么问题
DSH 原生的模型选择器是一份紧凑的下拉列表:模型一多就难找,看不出哪个快,也没有任何"这个模型到底行不行"的客观参照。
dsh-model-master 补齐三件事:
1. 找得快 — 全局搜索、按渠道分组、以及「⚡ 智能优选」直接给出当前分组里综合最优的那个。
2. 看得见快 — 对任意模型发起真实流式请求,测出 TTFT(首字延迟,ms)与 TPS(生成吞吐,tok/s)。
3. 有参照 — 全球百强榜,数据来自 OpenRouter 模型目录里的 Artificial Analysis 指数与 Design Arena Elo。
---
功能
接管而不取代
- 一级模型按钮、原生菜单、推理等级行全部保持原生渲染与原生行为。
- 只在两种时刻接管:已选模型时点击原生菜单里的「模型」项,或未选模型时点击按钮本身 —— 原生狭小列表换成插件面板,原生菜单自动关闭。
- 防顶掉:若其它插件占用了原生模型位导致原生按钮消失,输入框工具行会自动出现备用入口;原生恢复后自动隐藏。
真实测速(TTFT / TPS)
- 服务端发起流式请求并自己计时,浏览器不参与任何数字计算。
- 支持 ×1 快速与 ×3 稳定(取中位数),把单次测速约 17–22% 的随机波动压下去。
- 批量测速逐个进行(并发 2,单条超时上限 20s),可随时停止。
- 失败如实显示失败,并区分超时 / 不可达 / 403 / 配额 / 无密钥等原因。
全球百强榜
- 最多 100 行,按 Artificial Analysis 智能指数排序,辅以代码 / Agent 指数与 Design Arena Elo。
- 点任意行 → 跳到本机搜索同名渠道,由你自己挑渠道(不做自动匹配,避免把榜单的模型错配到你本地的另一个渠道)。
- 每日自动同步,可手动刷新;离线时展示本地缓存并明确标注。
版本更新提示
顶栏有一枚「检查更新」按钮,点一下就会去问 GitHub 有没有新版本。
按下后按钮立刻变成「正在检查更新…」并转圈;请求返回后弹一条提示把结果说清楚:
- 发现新版本 → 提示「发现新版本 x.y.z,点击查看」,按钮同时变成蓝色胶囊
有新版本 x.y.z,点击直达该 release 页面。 - 已是最新 → 提示「已是最新版本 x.y.z」。带上版本号是有意的:它证明检查确实跑过并拿到了真实结果,
而不是没反应。
- 检测不到时如实说检测不到 → 提示「无法确认是否有新版本 · 原因」。这一点是刻意的:
hasUpdate是三态
—— true / false / null(未知),网络不通、GitHub 限流、tag 无法解析时一律是 null,
绝不会把「没查到」显示成「已是最新」。理由和测速那条一样:一句没验证过的「你已经是最新的」,
和编造一个 TPS 数字是同一种谎。
三种情况都必须有可见反馈。 这是 1.1.1 修掉的问题:1.1.0 的按钮确实会发请求、也确实拿到了结果,
但界面上什么都不变 —— 除非恰好有新版本,于是「已是最新」和「无法确认」从用户视角看都是「按钮坏了」。
工程上守两条纪律:
- 不拖慢面板:
GET /update只读本地缓存并立刻返回,刷新在后台进行;只有你手点按钮
(POST /update/check)才会等待网络。
- 不滥用配额:结果缓存 6 小时,并发调用共享同一个在途请求,手动检查另有 30 秒冷却 ——
GitHub 未认证接口每小时每 IP 只给 60 次。
15 语言界面
English / 中文 / हिन्दी / Español / Français / العربية / বাংলা / Português / Русский / اردو / Bahasa Indonesia / Deutsch / 日本語 / 한국어 / Türkçe
- 顶部地球图标切换,选择持久化到
localStorage。 - 阿拉伯语 / 乌尔都语自动 RTL。
推理档位 FX
- 官方菜单「推理等级」行滑条:拖动渐变填充、星尘粒子、Max 档紫边辉光。
- 档位切换瞬间原生芯片上的一次性能量闪动。
- 尊重
prefers-reduced-motion。
---
安装
需要 DSH 与 Node.js ≥ 20。
# 装进 web profile(最常用) dsh plugin --profile web add dsh-model-master # 或装进你自己创建的 profile
Compare in this category
The five most-starred plugins in the same category.
| Plugin | Author | Stars | Version | Updated |
|---|---|---|---|---|
| dsh-our-free-model | Ebony-Vinyl | 68K | 2.1.0 | 2026-11-10 |
| next-ai-draw-io | DayuanJiang | 36.9K | 0.4.10 | 2026-11-09 |
| MemOS | MemTensor | 12.3K | 0.0.0 | 2026-11-09 |
| bisheng | dataelement | 12.2K | 0.0.0 | 2026-11-10 |
| webnovel-writer | lingfengQAQ | 7.9K | 0.0.0 | 2026-11-07 |