dsh-usage-cost:DeepSeek 会话用量与成本实时监控插件

在使用 DeepSeek Harness (DSH) 进行开发或使用大模型时,会话的 token 消耗与成本是常需关注的指标。DSH 本身不提供显式的用量展示,手动统计较为繁琐。dsh-usage-cost 插件通过在状态栏和详情面板提供实时数据,解决了这一需求。

插件定位

这是一个本地化的用量监控工具。由 lhh666-6 维护,开源协议为 MIT。它不涉及任何数据上传,所有计算均在本地完成,数据通过 projection 模式持久化。

核心功能

插件提供常驻状态栏胶囊与详情面板,数据来源分为流式估算与请求结束后的权威校准。

  • 常驻胶囊显示:注册到会话标题栏右侧,实时显示模型名、输入/输出 token、本次会话成本。流式输出期间数字会实时滚动,估算值带 ~ 标记。
  • 详情面板:点击胶囊展开,显示输入/输出 token、缓存命中/未命中 token、总 token、本次成本、耗时、tokens/s、数据状态(估算中/已校准/未完成),以及今日/本月累计成本。
  • 本地实时估算与权威校准:流式期间使用 gpt-tokenizer 进行估算,按每 50 个 chunk 或每 100ms 节流;请求结束后使用 DeepSeek 返回的 usage(prompt_tokens/completion_tokens/prompt_cache_hit_tokens/prompt_cache_miss_tokens)进行校准。
  • 数据持久化:本次会话数据通过 session projection 落盘;今日/本月/按模型的累计数据写入 $DSH_HOME/usage-cost/aggregates.json,重启不丢失。
  • 自定义价格表:支持自定义价格表配置,默认价格以人民币/百万 token 为单位。

安装与启用

使用官方的 dsh plugin 命令安装:

dsh plugin --profile desktop add dsh-usage-cost
dsh plugin --profile web add dsh-usage-cost

安装后重启 DSH(或切换一次 profile),发起对话时状态栏右侧即会出现用量胶囊。

配置价格表

默认价格(人民币 / 百万 token)如下:

模型 缓存命中 缓存未命中 输出
deepseek-chat ¥0.5 ¥2 ¥8
deepseek-reasoner ¥1 ¥4 ¥16

如需修改或添加模型,编辑 $DSH_HOME/settings.yaml:

usage-cost:
  models:
    - id: deepseek-chat
      cacheHit: 0.5
      cacheMiss: 2
      output: 8
    - id: deepseek-reasoner
      cacheHit: 1
      cacheMiss: 4
      output: 16
  chunkInterval: 50
  timeIntervalMs: 100

技术实现

插件采用双面架构,与 dsh-plugin-desktop 同一套插件系统:

  • Host 面:注册 usageCost session projection,监听 session/event 累计数据,并处理本地持久化。
  • Client 面:注册状态栏胶囊组件,通过 useProjection('usageCost') 读取实时值。

注意事项

  • 数据隐私:仅本地计算与持久化,不上传任何内容。
  • 数据完整性:流式中断或报错会保留估算并标记“未完成”,不会覆盖历史准确数据。
  • 会话隔离:切换会话时数据由投影按会话隔离,不会串数据。
  • 多币种:暂不做汇率转换,默认为人民币。
  • 模型交互:不注入任何模型可见指令、工具或请求字段,只做观察。
羽毛球分组比赛记分
小程序二维码

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

小夜