前言¶
DeepSeek Harness(DSH)的社区生态强调「一切皆插件」;社区目录是独立站点,与 DeepSeek / 幻方没有官方从属关系。dsh-model-garden 是面向 DSH Web UI(dsh web)的静态 profile 插件。
它提供一个表格化模型选择器,用来处理模型数量较多时难以搜索、排序、筛选本地模型,以及看不到价格、上下文窗口、实时任务成本和会话成本明细的问题。
这是什么¶
下面先交代它由哪两部分组成:
- 客户端:
client.js,注册conversation.input.modelslot(priority-1,shadowing the native seat)并渲染模型选择器。 - 宿主端:
index.js,在 harnesswebServer服务上提供三个同域 JSON 路由。
仓库地址:
https://github.com/mrdevlorx/dsh-model-garden
许可证:MIT
运行要求:package.json 声明需要 Node >=22
运行依赖:宿主端需要 web 栈(webServer 服务);在最小/TUI profile 中保持 inert,不阻塞启动。
核心功能¶
模型列表¶
- 即时搜索模型名称和描述。
- 按名称、上下文或价格排序;第三点击恢复按供应方分组视图。
- 收藏模型并切换只显示收藏;收藏保存在
localStorage。 - 根据真实 endpoint 的
baseURL判断本地 provider,并可筛选本地模型。 - 供应方分组可折叠;折叠状态按 provider 保存。
- 选择器挂载期间自动刷新模型目录,默认间隔 5 分钟且可配置。
价格与上下文窗口¶
- 使用
models.dev价格,按每 1M tokens 显示输入/输出价格;价格缓存 24 小时。 - 本地模型保持未定价。
- 订阅路由通过
PROVIDER_ALIASES解析为按量参考价格。 - 从宿主
llm服务读取上下文窗口,并在需要时回退到models.dev。
成本与推理设置¶
- 面板打开时始终显示实时每任务用量和成本(
in / out / cache)。 - 悬停近似成本可打开会话成本明细,支持复制摘要或导出排序后的 CSV。
- 为支持推理级别的模型提供推理强度选择器;选择模型时始终从最强推理级别开始。
- 详情提示显示描述、价格、上下文窗口、最大输出和推理强度。
- 使用 harness 设计令牌适配浅色和深色主题。
安装与启用¶
1、使用 DSH 插件 CLI 安装:
dsh plugin --profile <profile> add dsh-model-garden
2、安装后重启 DSH server,并在浏览器硬刷新(Cmd/Ctrl+Shift+R)。
3、验证宿主路由是否可用:
curl -s http://127.0.0.1:3080/model-garden/catalog | head -c 200
这一步检查 /model-garden/catalog 返回的是 JSON 数据,而不是 HTML。
典型用法¶
宿主端点¶
宿主端提供以下同域 JSON 路由:
GET /model-garden/cost?session=<sessionId>
GET /model-garden/cost-history?session=<sessionId>&limit=<n>
GET /model-garden/catalog
/model-garden/cost:用于获取会话相关的用量/成本数据。/model-garden/cost-history:用于获取会话成本明细,可通过limit限制返回步骤数量。/model-garden/catalog:用于获取模型目录;选择器挂载期间会自动刷新。
从手动安装升级¶
如果之前用手动方式安装过旧 model-garden 依赖,先做两步:
1、移除旧 model-garden 依赖。
2、从 profile 的 cordis.patch.yml 删除手动 - insert: 行。
之后再按上面的插件 CLI 安装命令安装,避免插件重复挂载。
手动安装¶
如果不用插件 CLI,而用 npm 管理 profile:
1、添加依赖。
2、在 profile package.json 的 dsh.profile.bundles 中列出 dsh-model-garden。
3、重新安装并重启 DSH server。
适用场景与注意¶
适合在 DSH Web UI 中使用多个 provider、本地模型、订阅路由,并且希望在选择模型时看到价格、上下文窗口、实时成本和会话成本明细的人。
安装前注意:
- 插件以当前
dsh进程权限运行,安装前应检查源码与许可证。 - 宿主端需要 web 栈;最小/TUI profile 中插件保持 inert。
package.json声明需要Node >=22。- 本地模型保持未定价;订阅路由的参考价格依赖
PROVIDER_ALIASES解析。
结尾¶
dsh-model-garden 的价值在于把 DSH Web UI 的模型选择从「能选」扩展到「能筛、能排、能看成本」。它不改变 DSH 的插件化运行方式,只是在 Web 端提供一组可搜索、可排序、可追溯成本的模型选择界面。
仓库地址:
https://github.com/mrdevlorx/dsh-model-garden