前言¶
在使用 DeepSeek Harness(DSH)開發智能體時,若遇到模型生成卡頓,界面常僅提示“深度潛水中”,無法區分是模型在處理還是單純的延遲。dsh-live-token-stats 插件通過實時流式數據與官方分詞表,在 composer 下方展示具體的 Token 狀態帶,幫助開發者判斷模型是否“溺水”。
核心功能¶
該插件主要解決流式輸出的透明度問題,提供以下能力:
- 實時分詞與計算:實時讀取流式返回並使用 DeepSeek BPE 分詞,實時計算 token/s(TPS)與輸出 token 數。
- 溺水檢測:實時檢測首字延遲(TTFT),用於判斷模型是否溺水。
- 偏差對賬:對比本地估算與官方 usage 的偏差。
- 自動掛載:自動掛載爲 bundle 層插件,無需編輯 DSH 源碼。
安裝與啓用¶
安裝該插件會自動掛載爲 bundle 層插件,重啓 DSH web 後生效。
從 GitHub 安裝:
dsh plugin --profile web add github:better-er/dsh-live-token-stats
從 npm 安裝:
dsh plugin --profile web add dsh-live-token-stats
典型用法¶
在 profile 的 cordis.yml 或 overlay 中配置以下參數:
enabled:總開關,默認true。tokenizerMode:分詞模式,默認'bpe'。'bpe':使用內置 DeepSeek V4 詞表做真實 BPE 切分,與官方 usage 最接近。'density':回退到雙密度字符估算(需配置asciiTokenPerChar和cjkTokenPerChar)。rateWindowMs:實時 TPS 的滑動窗口毫秒數,默認3000。debug:診斷日誌開關,默認false。
配置示例:
- id: dsh-live-token-stats
config:
enabled: true
tokenizerMode: bpe
rateWindowMs: 3000
debug: false
適用場景與注意¶
- 依賴版本:依賴 dsh 0.1.5-rc.2 或更高版本。
- 估算偏差:工具調用因額外計費消息模板,本地估算會低於實際值(實測單工具約 +40~60 token)。
- 安裝機制:
peerDependencies僅作兼容門禁,不參與本地安裝。 - 源碼結構:源碼在
src/目錄,構建產物在lib/目錄。