dsh-model-billing:在 DSH Web GUI 里排模型顺序并估算 token 费用

前言

在 DeepSeek Harness(DSH)里切换模型时,右下角选择器的顺序往往跟个人习惯或成本策略对不上;多提供方并存时,更难一眼比较「这一轮大概花了多少」。官方账单在 provider 侧,会话里只有 usage 日志,若不做换算,很难在对话过程中感知累计开销。

dsh-model-billing 面向 DSH Web 客户端:接管(或可关闭)输入框右下角的模型选择器,让你自定义已配置模型的展示顺序,并为每个模型维护三档「元 / 百万 tokens」价格;结合会话日志里的 provider usage,按轮次和整段会话做费用估算。DeepSeek 官方模型的峰谷价内置为只读,第三方模型需自行填写,未定价的模型不会计入金额。

维护者:likaileave。分类:模型推理。许可证:MIT。当前 npm 包版本:0.1.2(与 GitHub Release 同号,两渠道并列发布、不承诺自动同步)。

这是什么

dsh-model-billing 是 DSH Web GUI 插件(设置页标题为「模型与费用 / Models & Cost」)。它在 Host 侧提供价格与顺序配置,在客户端调整模型选择器展示,并在每轮结束、输入框下方展示估算费用与缓存命中率;金额来源于会话日志中的 usage,实际结算以各 provider 账单为准。

项目声明:代码、文档和图标由 AI 辅助生成,并经人工审核、修改和测试。

核心功能

自定义模型顺序

在「设置 → 模型与费用」中用 ↑ / ↓ 调整已配置模型的顺序。模型选择器按该顺序展示,跨提供方也保持你排的顺序,并按提供方名称分组。若关闭「选择器接管」,可恢复 DSH 内置模型选择器;此时价格与费用统计仍可用。

选择器接管依赖 ctx.modelDirectories;该服务不可用时,插件不会强行覆盖内置选择器。

三档 token 价格

每个非 DeepSeek 模型可填写每百万 tokens 的:

  • 缓存命中输入
  • 缓存未命中输入
  • 输出

0 是有效价格;留空表示未设置。未填完整三档价格的模型界面会标记「未定价」或「部分未定价」,不产生金额。插件不预置第三方模型价格,也不自动抓取官网价。

DeepSeek 官方价(内置、只读)

deepseek-flash 与 deepseek-v4-pro 使用 DeepSeek 官网峰谷价,只读展示,无需填写。每条 usage 按事件发生时的北京时间在高峰 / 空闲价之间选取;DeepSeek 用量与第三方模型一起进入统计。

高峰时段(北京时间,中国法定节假日除外):周一至周五 9:00–12:00、14:00–18:00;其余时间、周末和法定节假日全天为空闲。空闲价为高峰价的一半。内置价查询于 2026-10-19,来源为 DeepSeek 模型 & 价格。官网调价或节假日变化后,需更新仓库 host.js 中的 DEEPSEEK_PRICES 与 DEEPSEEK_HOLIDAYS(当前内置 2026 年节假日)。

模型 时段 缓存命中 缓存未命中 输出
deepseek-flash 高峰 0.04 2 8
deepseek-flash 空闲 0.02 1 4
deepseek-v4-pro 高峰 0.30 9 27
deepseek-v4-pro 空闲 0.15 4.5 13.5

(单位:元 / 百万 tokens。)

逐轮与会话展示

  • 轮尾:每轮结束后可显示本轮使用的模型、该轮费用与缓存命中率;可在设置中开关模型名、提供商、费用、token、缓存命中率、文字标签,并调整字号、间距、字重。
  • 本会话:输入框下方显示本会话累计估算、最近一轮费用和缓存命中率;展开后可按轮次、按模型查看明细。

估算口径

缓存命中输入 × 命中价
+(未缓存输入 + 缓存写入)× 未命中价
+ 输出 × 输出价

缓存写入按缓存未命中价计,为三档价格模型下的近似处理。一轮内多次模型尝试(重试、失败等)分别计入;若失败调用未返回 usage,则无法计入。只统计当前载入 Host 的会话;/model 命令仍由 DSH 实现,顺序不保证与右下角选择器一致。

安装与启用

需要 DSH ^0.2.0-rc.2。安装或更新后刷新 Web 页面;设置位于「模型与费用」。desktop 请换成你实际使用的 profile。

npm:

dsh plugin --profile desktop add dsh-model-billing

dsh-market: 搜索 dsh-model-billing 安装。

GitHub Release 手动安装:

  1. 从 Releases 下载 dsh-model-billing.tgz。
  2. 执行:
dsh plugin --profile desktop add ./dsh-model-billing.tgz

从源码目录安装:

git clone https://github.com/likaileave/dsh-model-billing.git
dsh plugin --profile desktop add ./dsh-model-billing

模型顺序与价格保存在:

~/.dsh/model-billing.json

若设置了 DSH_HOME,则为 $DSH_HOME/model-billing.json。写入采用临时文件再原子替换;文件损坏时回退为空配置,不会在未保存时覆盖原文件。

典型用法

  1. 安装插件并刷新 Web 页面,打开「设置 → 模型与费用」。
  2. 用 ↑ / ↓ 排好常用模型顺序,确认右下角选择器已按该顺序、按提供方分组展示。
  3. 为各第三方模型填写三档价格(建议用你实际结算价,而非猜测默认值)。
  4. 正常对话;在轮尾和输入框下方查看逐轮费用、缓存命中率与会话累计;需要明细时展开会话统计面板。
  5. 若不需要自定义选择器,在设置中关闭接管,保留费用统计即可。

适用场景与注意

适合在 DSH Web GUI 中长期多模型切换、希望本地统一排序并在会话内快速感知 token 成本的开发者。第三方价格为静态配置,不会随官网调价自动更新;不同平台的缓存折扣、阶梯价、活动价差异大,插件不做自动推断。

DSH 插件以当前 dsh 进程权限运行,安装前建议阅读 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境与合规要求。社区目录 SkillHub 插件页 与 DeepSeek / 幻方无官方从属关系,属社区生态分发入口。

链接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye