dsh-usage-vendor-stats:按廠商維度統計 DeepSeek Harness API 用量

前言

在 DeepSeek Harness(下稱 DSH)裏跑智能體,接的廠商往往不止一家:官方 API、huoshan、hebox、tokenrhythm 等。持久化會話日誌裏其實一直帶着 Token 記賬和 provider/model 來源,但默認沒有一個視圖能直接回答「這段時間各家各用了多少、緩存命中率多少、按單價折算大概多少錢」。

已有的 dsh-usage-stats 插件按工作區聚合用量,廠商維度是缺的。下面介紹的 dsh-usage-vendor-stats 補的就是這一塊:以廠商爲第一維度做用量統計。

這是什麼

dsh-usage-vendor-stats 是 DSH 的社區用量統計插件,由 kirigayakazima 維護,MIT 許可證,當前版本 0.2.0。它按「廠商(訂閱 / 官方 API)× KPI」聚合 API 使用量,提供 GitHub 風格日曆熱力圖、趨勢折線圖與日 / 月 / 小時統計看板。

數據不需要額外採集:插件激活時自動回填全部歷史會話,之後監聽會話事件做增量摺疊,插件卸載 / 重啓後數據不丟。

核心功能

廠商維度與 KPI 卡片

  • 自動發現所有使用過的廠商(如 huoshanheboxdeepseek-officialtokenrhythmopencode),可手動標記「訂閱 / 官方 API」類型並設置別名,持久化到 $DSH_HOME/storages 的 KV 單元
  • KPI 卡片:總 Token(輸入 / 緩存命中 / 輸出 / 推理分項)、緩存命中率、模型調用次數、回合數、會話數、廠商數量,附多色 Token 構成比例條

熱力圖、趨勢與看板

  • 53 周熱力圖:GitHub 綠色風格,顏色深淺按當日模型調用次數;點擊廠商 chip 篩選,懸停查看按廠商 / Token 明細
  • 趨勢折線圖:Token / 調用雙軸,默認按日,選「今天」時按小時聚合
  • 每日明細:近 30 天逐日 Token / 緩存 / 輸出 / 推理 / 命中率 / 回合
  • 每月彙總:全部歷史按月聚合

表格、鑽取與導出

  • 廠商 KPI 表:按總 Token 排序,含命中率、模型數、類型標籤;點擊行展開該廠商逐模型消耗
  • 時間預設:今天 / 7 天 / 14 天 / 30 天 / 90 天 / 全部
  • 費用估算:按廠商設置每百萬 token 單價,表格顯示折算後的預估費用列
  • CSV 導出:每日 / 每月 / 廠商表格均可導出

健康度與性能卡片

平均 TTFT(首字延遲)、生成速度(t/s)、峯值 Context、請求錯誤率、模型 / 工具總耗時,聚合自 DSH 的 sessionStats 投影。

數據口徑

  • 數據全部來自 DSH 持久化會話日誌:assistant/message 事件攜帶 usage(Token 記賬)與 message.source.{provider,model}(廠商 / 模型來源)
  • Token 統計口徑與 DSH 一致:inputTokens 爲未命中輸入,cacheReadTokens 爲緩存命中輸入,outputTokens 爲輸出,reasoningTokens 爲推理,cacheWriteTokens 爲緩存寫入
  • 緩存命中率 = 命中 /(命中 + 未命中輸入)× 100%

安裝與啓用

這是標準的 DSH 社區插件包(聲明 dsh.bundle manifest + web client 半),從 GitHub 直接安裝:

dsh plugin --profile web add "github:kirigayakazima/dsh-usage-vendor-stats"

安裝後刷新頁面即可,無需手動改配置、無需重啓。

本地開發需要手動註冊時,先創建符號鏈接,再改 patch 配置:

1、把插件目錄放在任意位置,在 $DSH_HOME/profiles/node_modules/ 下創建指向它的符號鏈接(Windows 用 junction):

New-Item -ItemType Junction -Path "$env:DSH_HOME\profiles\node_modules\dsh-usage-vendor-stats" -Target "<本目錄絕對路徑>"

2、在 $DSH_HOME/profiles/web/cordis.patch.yml 添加 insert 條目:

- insert:
    - id: usage-vendor-stats
      name: dsh-usage-vendor-stats

用戶 patch 層會被熱重載,保存後刷新頁面生效。

典型用法

1、打開側邊欄底部的「設置」找到「API 用量統計」頁,或點擊側邊欄底部的「用量統計」入口打開全屏面板。

2、熱力圖顏色 = 當日調用次數;點擊廠商 chip 或表格行可篩選 / 鑽取。

3、在「廠商管理」裏給每個廠商設置別名與類型(訂閱 / 官方 API),可選設置每百萬 token 單價用於費用估算。

經過上面的步驟,看板會按所選時間範圍展示廠商 KPI 表、逐日 / 逐月明細,點擊廠商行還能繼續鑽取到逐模型消耗。

接口與架構

Host 半(lib/index.js)掃描持久化會話日誌聚合用量,通過 webServer 服務註冊兩條數據路由:

  • GET /api/usage-vendor-stats:統計快照(廠商 / 模型 / 日 / 月 / 小時 / 彙總)
  • POST /api/usage-vendor-stats/vendor:設置廠商別名、類型與單價

Client 半(lib/client.js)是瀏覽器 bundle,註冊設置頁(settings.section 槽位)、側邊欄底部入口(sidebar.footer.action)與全屏面板(shell.overlay)。

插件無第三方運行時依賴:Host 半僅用 Cordis 服務,Client 半僅用模塊表提供的 React。日常修改 lib/client.js 刷新頁面生效;Host 半改動需重啓 DSH。

適用場景與注意

適合同時接多家廠商、想分攤和核對各家用量與成本、關注緩存命中率和響應性能的 DSH 用戶。使用前注意:

  • 插件以當前 dsh 進程的權限運行,安裝前建議先閱讀源碼確認行爲,再決定是否啓用;許可證爲 MIT。
  • 數據讀自持久化會話日誌,歷史會話在插件激活時自動回填,無需手動導入。
  • 預估費用列是按你填寫的每百萬 token 單價折算的估值。

小結

一句話回顧:dsh-usage-vendor-stats 把散落在 DSH 會話日誌裏的用量數據,按廠商維度聚合成可篩選、可導出、可估算費用的看板,安裝即用、無需改配置。

目錄頁:https://www.skillhub.cn/plugins/kirigayakazima/dsh-usage-vendor-stats
源碼倉庫:https://github.com/kirigayakazima/dsh-usage-vendor-stats

需要說明的是,skillhub 社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

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

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

小夜