前言¶
在 DeepSeek Harness(DSH)裏跑模型推理時,慢答覆往往要同時看三件事:GPU 是否在頂滿、當前會話佔用了多少上下文、最近幾次請求各消耗了多少 token。拆開用 nvidia-smi、系統監視器和聊天裏的零散信息,上下文很容易丟。PriRex Monitor 是 DSH 的 Web 插件,在側邊欄增加 Monitor 入口,在主面板用一頁把硬件採樣與會話 token 統計放在一起,並通過 SSE 約每 500 ms 推送更新。
這是什麼¶
插件包名 prirex-monitoring-deepseek-harness(PriRex Monitor),由 Prirex 維護,許可證 MIT,當前版本 1.0.2。分類上屬於模型推理相關能力:爲 DSH Web 界面提供本機 GPU/CPU 負載、顯存、溫度、功耗、能耗、生成速度與上下文佔用等實時遙測,數據來自主機採樣與會話事件流中的 token 累計。
社區目錄見 SkillHub 插件頁;源碼與說明在 GitHub 倉庫。目錄站點爲社區生態,與 DeepSeek / 幻方無官方從屬關係。
架構與數據從哪來¶
插件分兩半,職責在 README 裏寫得很清楚:
| 部分 | 文件 | 作用 |
|---|---|---|
| Host | index.js |
按固定間隔採樣傳感器、累計 token 用量,暴露兩條本地 HTTP 路由 |
| Browser | client.js(由 client.template.js 構建,倉庫已提交產物) |
側邊欄入口與監控頁,僅用 React.createElement,樣式跟隨 DSH 主題 token |
Host 把快照通過 JSON 與 SSE 兩種方式提供給頁面:平時走 SSE 保持實時;流不可用時客戶端每 2 秒回退輪詢 JSON。
頁面上能看到什麼¶
主面板以卡片形式展示當前機器與會話狀態,主要包括:
- Speed:當前會話 tokens/s;
0 tok/s表示模型空閒。 - GPU load:利用率 %,帶 40 點迷你折線。
- VRAM:已用 / 總量(GB)。
- GPU temperature:攝氏度;超過配置的
overheatC時折線進入警示色。 - Power:當前功耗 / 上限(W)。
- PCIe:鏈路代數與寬度(如
Gen4 x16)。 - CPU:總負載 %。
- Disk:有字節速率上報時顯示讀吞吐;Windows 無對應 provider 時改爲顯示系統盤剩餘空間。
卡片下方還有:自 Host 啓動以來的 能耗(Wh,由 GPU 功耗積分)、GPU 風扇 %、GPU 時鐘(MHz)、context fill 環(已用 / 窗口 token)、以及 recent requests 表(時間、狀態、模型、input/cache-read/output tokens、cache share 等)。
頁面右上角提供 RU / EN / ZH 語言切換,選擇寫入瀏覽器 localStorage,標題、卡片標籤、狀態、表頭及數字/時間格式會隨語言重渲染。
GPU 數值優先通過 nvidia-smi 讀取(Windows 上 systeminformation 對部分字段不完整);無 NVIDIA 工具時回退 systeminformation,AMD/Intel 仍可獲得負載、溫度、功耗與顯存等。
安裝與啓用¶
環境要求:帶 Web 界面的 DSH,Node.js ≥ 20。安裝過程不需要本地構建(client.js 已提交)。
從 GitHub 安裝:在 DSH 中打開 Plugins → Install bundle → GitHub,倉庫名填寫:
Prirex/PriRex-Monitoring-DeepSeek-Harness
從本地目錄安裝:Plugins → Install bundle → local path,指向插件所在文件夾;DSH 會以目錄 junction 鏈到 node_modules/prirex-monitoring-deepseek-harness。
注意:上述兩種方式不要同時佔用同一槽位。若先做了本地鏈接再裝 GitHub 版,pnpm 可能無法替換 junction 並報 [ERR_PNPM_EPERM] importPackage。需先關閉 DSH,再移除 junction(項目文件夾不受影響),例如在 PowerShell 中:
cmd /c rmdir "%USERPROFILE%\.dsh\profiles\desktop\node_modules\prirex-monitoring-deepseek-harness"
捆綁的 cordis.patch.yml 會自動插入 prirex-monitor 配置行,一般無需手改 patch 文件即可啓用。
配置項¶
默認值在 index.js;可在 profile 的 cordis.patch.yml 中覆蓋,例如:
- id: prirex-monitor
name: prirex-monitoring-deepseek-harness
config:
refreshMs: 500 # 採樣間隔,下限 200 ms
overheatC: 80 # 超過該溫度時溫度折線警示色
ratesUsdPerMillion: # JSON 快照中 tokens.costUsd 所用單價
input: 0.27
output: 1.1
插件宣傳「零配置」是指不寫文件也能跑;只有需要改採樣頻率、過溫閾值或成本估算單價時才動 cordis.patch.yml。
典型用法¶
- 按上一節完成安裝並啓動 DSH Web。
- 在側邊欄打開 Monitor,主面板進入遙測頁。
- 在聊天里正常推理;觀察 Speed、context 環與 recent requests 是否隨會話更新。
- 需要對照硬件時看 GPU/CPU/顯存/功耗卡片;若 SSE 斷開,頁面會自動改爲每 2 秒拉取 JSON。
本地 HTTP 路由(僅本機、同源設計):
| 路由 | 格式 | 說明 |
|---|---|---|
/api/prirex-monitor/telemetry |
JSON | 僅 GET / HEAD |
/api/prirex-monitor/stream |
SSE | 每次新樣本推送,retry: 2000 |
適用場景與注意¶
適合在 DSH 桌面/Web 環境做推理調優、排查「卡在某一步」、或快速確認當前會話 token 與上下文佔用,而不必切到多個系統工具。
安全與設計要點(來自項目說明):
- 路由僅
GET/HEAD;校驗Origin與Host,拒絕跨站Sec-Fetch-Site。 - 無出站網絡、無任意文件系統訪問;
nvidia-smi以固定參數 spawn。 - 遙測更新與失敗隔離,不應干擾會話提交。
權限:插件在 當前 DSH 進程權限 下采樣本機並調用 nvidia-smi / systeminformation。安裝前建議閱讀源碼與 MIT 許可證,確認接受本機指標被插件讀取並通過本地 API 暴露給同一 DSH Web 會話。
非 NVIDIA 環境能力會少於完整 nvidia-smi 路徑;Windows 磁盤卡片展示的是剩餘空間而非字節速率,屬於平臺回退行爲而非故障。
結尾¶
PriRex Monitor 把「實機傳感器 + 當前會話 token / 上下文」收進 DSH 側邊欄的一頁,用 SSE 保持近實時,並支持中/英/俄界面。若你已經在用 DSH Web 做推理,值得用社區目錄或 GitHub 安裝後常駐打開 Monitor,對照硬件與請求表定位性能問題。