前言¶
在使用 DeepSeek Harness(DSH)WebUI 进行开发或推理时,当本地与远程的模型数量增加,默认的模型选择器下拉列表会变得难以导航。goodandready/dsh-model-search 旨在解决这一问题,它向 DSH 的模型选择器注入了一个实时的搜索入口,支持多词检索、缩写匹配以及键盘快捷操作,无需切换上下文即可快速定位模型。
插件简介¶
goodandready/dsh-model-search 是一个 DSH Web 插件,由开发者 GooDAnDReaREADY 维护。它通过非侵入式的 DOM 操作集成到 WebUI 中,提供模型过滤、键盘导航和一键更新功能,兼容 Dark/Light 主题。
安装与启用¶
在终端中执行以下命令,将其添加到 Web 配置文件中:
dsh plugin --profile web add @goodandready/dsh-model-search
执行完成后,重启 DSH 或刷新浏览器界面,搜索框即可在模型选择器中生效。
核心功能¶
多词与分隔符感知搜索¶
插件支持通过空格、逗号、斜杠或分号分隔多个搜索词,系统会对模型名称、技术标识符或提供者组进行组合匹配。
缩写与子序列匹配¶
支持对模型名称的非连续子序列进行匹配。例如,输入 dsr 可直接匹配 deepseek-reasoner,输入 gpt4o 可匹配 openai/gpt-4o-mini。
@provider 语法¶
支持使用 @ 前缀限定提供者。输入 @ollama 仅显示 Ollama 注册的模型;输入 @ollama qwen 则进一步筛选该提供者下的 Qwen 模型。
键盘导航矩阵¶
插件提供完整的键盘操作支持,使用户能够脱离鼠标进行操作:
| 按键 | 操作 |
|---|---|
ArrowDown |
将焦点移动到下一个可见的匹配模型 |
ArrowUp |
将焦点移动到上一个可见模型;若在顶部则返回搜索框 |
Enter |
立即选中当前高亮或首个可见模型 |
Escape |
清空搜索框;若框为空则关闭下拉菜单 |
核心集成与兼容性¶
- 非侵入式 DOM 操作:仅切换元素的可见性(
display: none),不破坏 React 虚拟 DOM 结构。 - 抗上游变更:独立于 DSH 核心模块的 CSS 哈希变更。
- 主题原生样式:完全使用官方 DSH 设计令牌,自动适配深色与浅色模式。
- 多语言支持:内置英语与中文,当激活
@goodandready/dsh-russian-lang时动态加载俄语。
一键更新与设置¶
插件集成了原生的设置卡片,位于 DSH 设置 -> 插件 -> 插件设置(dsh-model-search 命名空间下)。
- 应用内更新:自动检测 npm 仓库的新版本,支持一键更新(含预发布版本检查)。
- 安全机制:采用循环回退安全策略与单次点击保护。
典型用法示例¶
openrouter/claude-3-5reasoner; 32b@ollama llama3dsrgpt4o@openai@ollama qwen
注意事项与依赖¶
- Node 版本:插件要求运行环境为 Node.js 20 及以上。
- 性能:搜索过程具备零 CPU 开销,不会影响聊天流式输出的性能。
- 版权:MIT 许可证,允许自由使用与修改。