dsh-turn-usage:在 DSH 里按轮显示推理开销(¥)

前言

用 DeepSeek Harness(DSH)跑长会话时,token 用量条往往能看到规模,却很难立刻对应「这一轮对话大概花了多少钱」。峰谷时段、缓存命中与否、模型不同,单价会变;若还开了原生 DeepSeek 搜索,那部分调用又不进同一条会话账本。下面介绍社区插件 dsh-turn-usage(维护者 WhAIthere),它在 Web 界面里把单轮花费和本轮 / 今日 / 会话合计标出来,并按模型与时间(高峰、节假日)计价;搜索费在配合 Host 插件时可并入显示。

这是什么

dsh-turn-usage 是 DSH 的 Web 插件(分类:模型推理),自带 Host 半边:从官方会话节点的 node.usage 与 Host 内存里的会话事件算钱,只读、不写盘改数据(账本落盘是 Host 侧留档,插件本身不联网)。版本 0.1.0,许可证 MIT,要求 Node >= 20。

目录页:skillhub.cn/plugins/WhAIthere/dsh-turn-usage
源码:github.com/WhAIthere/dsh-turn-usage

社区插件目录由 SkillHub 等站点维护,与 DeepSeek / 幻方无官方从属关系;安装前请自行查看源码与许可证。插件以当前 dsh 进程权限运行。

界面上会看到什么

每条回复的操作行

在「复制」「分支」等操作之间(插件槽位,靠 order 排序),会出现类似:

复制 · … · 开销 0.2066 ¥ · 分支 · 用量 12.4K tok · 用时 42s · 10:32

鼠标悬停可看该轮分桶明细(命中/未命中输入、输出、模型、峰谷说明等),并注明估算值,非账单。

输入框上方通栏

居中常驻一行,例如:本轮 0.0123 ¥ · 今日 0.0456 ¥ · 会话 0.7890 ¥(半透明底衬与描边)。只统计当前打开的会话;切走不渲染,切回来为最新。单轮超过 ¥0.5 时「本轮」会变红。子代理不计入。

原生 DeepSeek 搜索(可选)

官方 DeepSeek 搜索的模型调用不进会话账本;配套 Host 插件 dsh-search-audit 旁路记到 ~/.dsh/search-usage.jsonl。本插件经 GET /api/turn-usage/search-usage 取数,在每条回复后标 (搜索 0.0180 ¥),通栏显示对话 + 搜索总价(约 2 秒轮询),搜索明细在悬停里。是否显示由客户端看到的 web_search 工具调用决定;有调用但无记账时显示 (搜索 数据缺失)。

核心功能(已文档说明的能力)

  1. 按轮计价:一轮多步会求和;历史轮在节点仍加载时同样有值。按该轮 node.time 选价表行(lib/client.js 的 PRICES,带生效起止);高峰为工作日北京时间 09:00–12:00、14:00–18:00,周末与内置 2026 法定节假日全天算空闲。
  2. 模型识别:默认从 usage.routes / provenance.model 自动认;认不出用默认 deepseek-flash。价目表未收录的模型不显示(不按 0 计)。
  3. Host 合计:GET /api/turn-usage/totals?session=<id> 供脚本消费;会话合计由 Host 读 ownEvents() 逐轮求和;「今日」是本会话今天的花费(北京日期),不是全站所有会话。
  4. 开关:chip(每条回复开销)、dock(通栏)、search(并入搜索费),存于 ~/.dsh/turn-usage.json,经 /api/turn-usage/config 读写,改动立刻生效。
  5. 不含:余额、跨会话历史统计、子代理(独立会话)。

安装与启用

README 中的安装示例使用本地目录路径(已注册可跳过,直接重启):

# 安装(已注册过就跳过,直接重启)
dsh.cmd plugin --profile desktop add "C:\Users\57870\Desktop\753\0-ds_harness_0\tool\dsh-turn-cost"
dsh.cmd plugin --profile web     add "C:\Users\57870\Desktop\753\0-ds_harness_0\tool\dsh-turn-cost"

# 改过代码 / 刚从市场里打开:必须重启 dsh web,然后浏览器 Ctrl+Shift+R

卸载:

dsh.cmd plugin --profile desktop remove dsh-turn-usage
dsh.cmd plugin --profile web     remove dsh-turn-usage

不需要 API key、不需要改 settings。从市场安装时以你本机实际插件路径为准,勿凭仓库名自行拼接未在文档出现的命令。

可选配置

插件页开关

插件管理 → dsh-turn-usage:chip、dock、search 默认均为开;关掉后对应 UI 不再显示或不再并入搜索费。

强制指定计价模型

在 profile 的 cordis.patch.yml 里用同 id 覆盖:

- id: turn-cost
  config:
    model: deepseek-v4-pro

2027 及以后节假日

内置表到 2026;之后可在 ~/.dsh/turn-usage-holidays.json 追加放假日(键 YYYY-MM-DD 北京时间),Host 经 config 下发,客户端约 30 秒内生效。只需列放假日;调休上班日仍按假期低谷价算。

典型用法与扩展

  • 只看对话 token 开销:安装并启用 chip / dock 即可。
  • 搜索费并入总价:安装 dsh-search-audit 且记账文件非空;保持 search 为开。可用性由 Host 在 /api/turn-usage/config 的 available 字段探测。
  • 外部统计源(预留):向 ~/.dsh/turn-usage-external.json 写入 {"sessions":{"<sessionId>":1.23}} 后,「全面统计」选项可用(文档标明该拓展尚未完全实现 agent 接入)。

Agent 无需 skill,只需知道上述 API 与文件路径即可参与统计。排障 Host 路由时可查看 ~/.dsh/turn-usage-route.log。

适用场景与注意

适合需要在 DSH Web 里即时感知单轮与当前会话成本的开发者或重度用户。数值为估算,跨峰谷切换点的一轮可能有偏差;free-search 等已在会话账本里的工具不会重复计搜索插件口径。

单测(资料原文):

node tests/run_tests.mjs      # 220 项断言,退出码 0 = PASS

原理与约束见仓库内 DESIGN.md、CODE.md。

结尾

dsh-turn-usage 把 DeepSeek 推理与可选原生搜索开销拉到操作行和输入框通栏,并按会话隔离合计,便于在长对话里控制花费预期。安装与细节以 README 为准:

  • 目录页:https://www.skillhub.cn/plugins/WhAIthere/dsh-turn-usage
  • GitHub:https://github.com/WhAIthere/dsh-turn-usage
羽毛球分组比赛记分
小程序二维码

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

小夜