前言¶
在 DeepSeek Harness(DSH)里切换模型,通常依赖会话窗口右下角的模型下拉框。当 profile 里配置了多家 pi-ai 提供商、模型条目变长时,在下拉里翻找、对照能力并不顺手。社区插件 dsh-model-picker(模型速选器)在模型下拉框左侧增加一个入口,弹出按提供商分组的全量选择窗口,并与原生下拉共用同一条 per-session 模型目录与 selectModel 路径,选完后下拉框会立刻回写。下面介绍它做什么、怎么装、以及能力标签与配置的关系。
这是什么¶
dsh-model-picker 由维护者 faxble 发布,分类为客户端插件(platform: web,web 与 desktop profile 均可使用)。定位一句话:在 composer 模型座位旁提供「模型速选」弹窗,支持搜索、筛选、最近使用、推理档位,选择后立即生效。
- 目录页:https://www.skillhub.cn/plugins/faxble/dsh-model-picker
- 源码与说明:https://github.com/faxble/dsh-model-picker
- 许可证:MIT(见仓库
package.json) - 要求 DSH:
>=0.1.7-rc.1(插件元数据dsh.engines)
纯前端实现:运行时无额外构建、无运行时依赖(使用 shell 已提供的 react),不修改 DSH 核心;通过官方扩展点 conversation.input.right 注册 UI。
核心功能¶
触发与弹窗¶
- 会话窗口右下角,模型下拉框左侧出现约 28px 圆形图标按钮,风格与 composer 工具栏「+」一致(悬停、焦点环、禁用态)。
- 点击后居中弹出选择窗口,深浅色主题随 DSH 主题变量自适应。
- 子代理(subagent addressed)会话没有模型目录时,按钮自动隐藏。
选择窗口里有什么¶
- 最近使用:打开即显示上次用过的模型(最多 8 个,本地持久化),行内为
提供商 · 模型形式。 - 提供商筛选:搜索框左侧自定义下拉(全部 / 单个提供商),避免原生
<select>在深色主题下系统面板发白。 - 搜索:对模型名、模型 id、提供商名模糊匹配;↑↓ 移动高亮、Enter 选中、Esc 关闭。
- 列表:按提供商分组(DeepSeek 账号 / 官方优先),分组带色条与计数;每行显示完整模型名、能力标签、「推理」徽章、「当前」徽章、选中勾;大列表懒渲染。
- 底部:当前模型摘要、reasoning effort(推理档位) 选择器、关闭按钮。
- 状态:加载中、加载失败(可重试)、提供商加载失败(逐条提示)、当前模型不可路由(警告)、会话被占用(专用文案)。
与原生下拉同步¶
弹窗内选择模型后,调用与原生下拉相同的 ModelDirectory.select({ provider, model, reasoningEffort }),走同一套 selectModel RPC。共享 store 更新后,原生模型下拉标签自动回写——任一端切换,另一端立刻显示。
能力标签来自配置,不是猜的¶
行内的文本 / 图像等标签读取用户 pi-ai 提供商配置里声明的 models[].input(例如 [text, image]),通过 DSH settings Remote 的 settings.describe() 扫描各命名空间 providers → models[].input 建索引。配置未写 input 的提供商不显示标签。
浏览器侧 modelCatalog RPC 返回的模型对象不含 input 字段,因此要在 profile 的提供商配置里显式声明,例如:
# profile 的 cordis.patch.yml,llm-pi-ai 提供商配置内
models:
- id: deepseek-v4-flash-ga-260731
input: [text, image]
同一模型 id 在不同用户处标签可能不同,反映的是各自配置,而非插件臆测。
其他¶
界面文案中英双语,随 DSH 系统语言(zh / en)切换。附带 MRU、搜索打分排序(精确 > 前缀 > 包含)、焦点陷阱等无障碍相关行为。
安装与启用¶
插件以当前 DSH 进程权限运行;安装前建议自行查看仓库源码与 MIT 许可证。下列命令摘自项目 README。
README 方式 B(远程直接安装) 给出的命令如下(platform: web 的插件在 web 与 desktop profile 中均可生效):
dsh plugin --profile web add github:faxble/dsh-model-picker
若使用本地目录安装,README 方式 A 示例为将路径换成实际插件包目录;桌面版把 web 改为 desktop:
dsh plugin --profile desktop add /path/to/dsh-model-picker
安装后重启 DeepSeek Harness,在「设置 → 插件」中启用 dsh-model-picker,或确认已自动启用。卸载可在同一界面移除插件。
典型用法¶
日常流程无需额外配置项:
- 打开任意具备模型目录的普通会话(非 subagent addressed)。
- 点击模型下拉左侧的速选按钮,在弹窗中搜索或按提供商筛选,或从「最近使用」点选。
- 需要时在同一弹窗底部调整 reasoning effort,选中模型后关闭弹窗;右下角原生下拉应已显示同一模型。
若希望列表里出现能力标签,在对应提供商的 models 条目上补充 input 数组后,保存 profile 配置并让用户 settings 生效,再打开速选窗口即可看到变化。
适用场景与注意¶
适合谁: 经常在多家提供商、长模型列表之间切换的 DSH 用户;希望在一个窗口里搜索、看推理能力与当前选中状态,且不想与原生下拉两套状态的人。
注意:
- 依赖
@deepseek-ai/dsh-client-ui-model-selection注册的modelDirectories服务;子代理会话无目录时入口不显示。 - 客户端 inject 需包含
remote.settings(与 cordis 注入规则一致),能力标签才可读配置。 - SkillHub 为社区插件目录站点,与 DeepSeek / 幻方无官方从属关系;星标等元数据以目录页为准(当前仓库公开星标为 0)。
结尾¶
dsh-model-picker 把「找模型、切模型、调推理档位」收敛到模型下拉旁的一个入口,并与 DSH 原生模型选择共用数据与提交路径。进一步了解可访问 SkillHub 目录页 与 GitHub 仓库 中的 README(含工作原理、目录结构与开发调试说明)。