前言¶
在 DSH Web 中使用模型時,調用可能來自不同供應商、不同模型和不同會話。只看單次回答,很難判斷當月用量、緩存命中、費用估算和延遲變化。dsh-token-stats 是面向 DeepSeek Harness / DSH Web 的插件,用於把 llm/stream 調用的真實 usage 記入賬本,並在界面上提供全局統計。
下面介紹它的功能、安裝命令和常用入口。
這是什麼¶
dsh-token-stats 是一個全局 Token 用量統計插件。資料頁顯示 owner 爲 1148281964,許可證爲 MIT;GitHub 與社區目錄鏈接見文末。由於已抓取資料中 package.json 的 repository 字段爲佔位符,本文不把 owner 字段當作完全確認的維護者歸屬。
它主要用於集中展示 DSH Web 中的 token 用量:記錄真實 usage,聚合供應商、模型、會話、日期維度,估算費用,並給出緩存命中率、成功率、平均耗時、首字延遲等指標。
核心功能¶
真實 usage 與賬本¶
- 從
llm/stream調用採集真實 usage:輸入、輸出、緩存讀、緩存寫、推理 tokens。 - 構建跨重啓持久的 JSONL 賬本,啓動/熱重載時從賬本重建。
- 默認賬本目錄爲
<profile>/data/token-stats/,可用DSH_TOKEN_STATS_DIR覆蓋。 - 統計口徑爲真實 usage;輸入 = 未緩存 + 緩存讀 + 緩存寫。這與 DSH 內置 token-meter 的估算口徑不同。
聚合與指標¶
- 按供應商、模型、會話、日期聚合,支持當月和近 31 天趨勢。
- 統計緩存命中率、成功率、平均耗時、首字延遲(TTFT)。
- 會話維度的分佈基於最近 500 條保留窗口聚合,總量
totals爲完整賬本。
費用估算¶
- 提供費用估算。
- 可從 OpenRouter 拉取最新模型價格,並重算曆史費用。
- 可用
DSH_TOKEN_STATS_PRICES覆蓋價格 JSON。 - 費用爲估算值,實際結算以網關/廠商賬單爲準。
界面展示¶
- 右下角可拖動 FAB 懸浮球;點擊展開面板,支持「全局 | 當前會話」切換。
- 點擊面板右上角的全屏入口,可打開居中大屏彈窗。
- 大屏彈窗展示 KPI、環形圖、趨勢、供應商/模型表格、近期調用明細。
- 當前會話跟隨基於 DOM 探測 UI 選中會話行並匹配標題;會話列表不可見或標題歧義時,回退到最近活躍會話。
模型工具與 HTTP API¶
- 提供模型工具
token_stats,支持可選sessionId參數。 - 提供以下 HTTP 端點:
GET /token-stats/api/query
GET /token-stats/api/sessions
POST /token-stats/api/refresh-prices
所有端點校驗 Origin(僅本機),HEAD 不返回 body。
歷史回掃¶
- 提供
backfill-history.mjs腳本,可冪等補錄插件安裝前調用。 - 僅補錄成功且帶 usage 的調用;耗時/首字延遲無法回補。
- 費用按當前價格表重算。
- 導入前自動備份賬本。
安裝與啓用¶
插件面向 DSH Web profile。資料給出的 CLI 安裝命令是:
dsh plugin --profile web add dsh-token-stats
資料顯示 peerDependencies 要求 @deepseek-ai/cordis ^4.0.1。該包爲純 JavaScript,無 prepare 構建腳本;資料還說明 github: 安裝無需 allowedBuilds 配置。
安裝前建議檢查源碼與 MIT 許可證。插件會以當前 dsh 進程權限運行,因此只在你信任其代碼的 DSH 實例中啓用。
典型用法¶
瀏覽器面板¶
1、在右下角點擊 FAB 展開面板,可拖動位置。
2、在面板中切換「全局 | 當前會話」統計範圍。
3、點擊面板右上角的全屏入口,打開居中大屏彈窗。
4、在大屏彈窗中查看 KPI、環形圖、趨勢、供應商/模型表格和近期調用明細。
設置頁¶
進入「設置 → Token 統計」,可以打開與 FAB 相同的面板與大屏彈窗。
更新價格¶
在大屏彈窗中點擊“更新價格”入口,從 OpenRouter 拉取最新模型價格,並重算曆史費用。
模型工具¶
在對話中調用模型工具 token_stats,用於讓模型直接查詢統計結果。可傳可選參數:
{"sessionId": "..."}
HTTP API¶
可調用以下端點:
GET /token-stats/api/query
GET /token-stats/api/sessions
POST /token-stats/api/refresh-prices
這些端點校驗 Origin(僅本機),且 HEAD 請求不返回 body。
歷史回掃¶
插件安裝前的調用可用腳本補錄:
node backfill-history.mjs
node backfill-history.mjs --dry-run
node backfill-history.mjs --force
腳本用於冪等補錄插件安裝前的調用;導入前自動備份賬本。
適用場景與注意¶
適合以下場景:
- 需要在 DSH Web 中查看全局 token 用量和趨勢。
- 需要按供應商、模型、會話、日期比較用量。
- 需要估算費用、觀察緩存命中率、成功率、平均耗時和 TTFT。
- 需要讓模型通過
token_stats查詢統計結果。
注意事項:
- 費用是估算值,不等於最終賬單;以網關/廠商賬單爲準。
- 統計口徑是真實 usage,與 DSH 內置 token-meter 的估算口徑不同。
- 當前會話跟隨依賴 DOM 探測和標題匹配;失敗時回退最近活躍會話。
- 會話維度分佈基於最近 500 條保留窗口,總量
totals是完整賬本。 - 歷史回掃無法補回耗時和首字延遲,且費用按當前價格表重算。
- DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。
參考¶
- 社區目錄:https://www.skillhub.cn/plugins/1148281964/dsh-token-stats
- GitHub:https://github.com/1148281964/dsh-token-stats