dsh-token-speed:DSH 客戶端實時速度監控插件

前言

DeepSeek Harness (DSH) 採用插件化架構,允許開發者擴展功能。在模型推理調試或性能監控場景中,直觀地查看實時輸出速度(tok/s)以及分步的詳細指標(如 TTFT、累計 tokens)有助於定位性能瓶頸。dsh-token-speed 是一款運行在 DSH Web 客戶端的插件,它通過一個可拖拽的環形錶盤將速度數據可視化。

核心功能

這款插件固定在 Web GUI 右下角,提供以下能力:

  1. 實時速度顯示:生成期間,錶盤指針與中央數字隨流式輸出實時爬升。速度基於輸出文本量 × 實測字符/token 比率估算。
  2. 每步精確校準:每步結束後,利用 provider 上報的 usage.outputTokens 和 timing(firstToken → completed)計算真實 tok/s,並據此反向校準字符/token 比率。
  3. 詳情面板:點擊錶盤展開,可查看實時速度、上一步的精確數據、輸出 tokens、TTFT 以及當前窗口內的累計輸出。
  4. 狀態指示:通過顏色或狀態標記生成中、工具執行中或空閒狀態。
  5. 可拖拽與記憶:支持按住拖動調整位置,位置記憶在 localStorage 中。
  6. 純瀏覽器端:不修改宿主狀態,僅作爲只讀訂閱者讀取會話數據。

安裝與啓用

插件通過本地鏈接方式安裝進 DSH profile。以 desktop profile 爲例,操作步驟如下:

  1. 在本地倉庫中創建或克隆 dsh-token-speed,並在 DSH profile 的 package.json 中添加依賴:
// ~/.dsh/profiles/desktop/package.json
{
  "dependencies": {
    "dsh-token-speed": "link:/Users/<you>/Documents/DSH/dsh-token-speed"
  }
}
  1. 進入 profile 目錄並安裝依賴:
cd ~/.dsh/profiles/desktop
pnpm install
  1. 生效規則:
    • cordis.patch.yml 裏的 insert 行由 profile 的 HMR watcher 熱加載,修改後通常無需重啓。
    • 若修改 lib/client.js 源碼,需整頁刷新(Cmd+R)才能生效。

典型用法

安裝完成後,插件會自動掛載到界面右下角。在模型生成過程中,觀察錶盤指針和數字的變化;點擊錶盤可查看上一步的具體速度和 tokens 統計;按住錶盤可將其拖動到屏幕任意位置。

架構與注意事項

該插件的數據來源和作用域限制是關鍵實現細節:

  • 數據源:插件不使用 session 作用域的 useChat 或 useProjection,也不能在 root 作用域讀取 session snapshot(該作用域僅包含 .subagent/.queue/.value)。正確的入口是使用 ctx.uiConversation.binding(sessionId).target('chat') 獲取數據。
    • legacy.partial:用於實時速度來源,包含進行中的 {turn, step, blocks}。
    • legacy.nodes:用於精確 tok/s 來源,包含已結算節點的 usage.outputTokens 和 timing。
    • legacy.runningCalls:非空即代表工具執行中。
  • 依賴服務:依賴 slots(槽位註冊)和 uiConversation(會話聊天數據)。
  • 生態背景:此插件隸屬於 DSH 生態,由社區維護,目錄頁與 GitHub 鏈接見文末。

結尾

dsh-token-speed 通過環形錶盤和詳情面板,爲 DSH 用戶提供了輕量級的推理速度監控方案。它利用瀏覽器端能力,在不侵入宿主邏輯的前提下,提供了精確到每一步的性能數據。

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

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

小夜