前言¶
跑 DeepSeek Harness(DSH)的機器往往長時間開着 GPU、反覆調模型和插件。你想知道「現在多少瓦」「今天大概花多少電費」時,常見做法是另開任務管理器、nvidia-smi 或 LibreHardwareMonitor,再手算電價——和對話、側欄是兩套界面。
下面介紹的 dsh-power-monitor 是社區維護的 DSH 客戶端插件:在左側邊欄賬號行上方顯示實時牆插功耗、今日/本月用電量與電費估算,併爲模型提供 power_status 工具。數據在本機採集,插件本身不聯網。
這是什麼¶
- 名稱:dsh-power-monitor(npm 包名同倉庫名)
- 維護者:tcmyxc
- 分類:客戶端(
dsh.client,注入側欄與會話 UI) - 許可證:MIT(見倉庫)
- 版本:package.json 標註
0.1.0;運行環境要求 Node>=20 - 一句話:在運行 DSH 的這臺電腦上,彙總 GPU/CPU 等功耗,按電價估算電費,並展示在側欄。
社區目錄頁:SkillHub - tcmyxc/dsh-power-monitor。源碼與說明:GitHub - tcmyxc/dsh-power-monitor。目錄站爲社區生態站點,與 DeepSeek / 幻方無官方從屬關係;DSH 側插件按「一切皆插件」方式擴展能力。
測什麼、數據從哪來¶
插件按部件組合讀數,全部在本機完成:
| 部件 | 來源 | 精度 |
|---|---|---|
| NVIDIA GPU | nvidia-smi(顯卡板載功耗) |
實測 |
| CPU / GPU | LibreHardwareMonitor Web 服務器(默認 127.0.0.1:8085) |
實測 |
| CPU(無 LHM 時) | 使用率 × TDP 模型:空閒功耗 + (TDP − 空閒功耗) × 負載 |
估算 |
| 主板、內存、硬盤、風扇 | 配置項 baseWatts |
估算 |
| 電源轉換損耗 | 各部件直流功耗 ÷ psuEfficiency 換算爲牆插交流功耗 |
估算 |
nvidia-smi 爲本地子進程;LibreHardwareMonitor 僅訪問本機 HTTP 接口,不訪問外網。
側欄界面¶
側欄展開時,賬號行(頭像 / 用戶名 / 設置)正上方有一張佔滿寬度的實時功耗卡:當前瓦數、今日電費、今日電量與本月電費,以及最近數分鐘的迷你曲線。點擊卡片可展開分項:CPU / GPU / 其他硬件佔比,今日 / 本月 / 本次運行的電量與電費,數據來源說明,以及電價、CPU TDP、其他硬件功耗等校準輸入框。
側欄收起時,卡片縮爲約 40px 寬的緊湊樣式(閃電圖標 + 瓦數),懸停可查看完整讀數。詳情標題欄提供 EN / 中 切換,僅作用於該卡片;未手動選擇時跟隨應用語言,選擇結果保存在瀏覽器本地。
校準與狀態持久化¶
面板中修改的電價、CPU TDP、其他硬件功耗會立即生效,並寫入本機狀態文件(無需重啓插件):
- Windows:
%LOCALAPPDATA%\dsh-power-monitor\state.json - macOS:
~/Library/Application Support/dsh-power-monitor/state.json - Linux:
$XDG_STATE_HOME/dsh-power-monitor/state.json(默認~/.local/state/...)
該文件還保存最近約兩個月的每日瓦時(Wh)累計,因此 DSH 重啓後今日 / 本月電費仍可連續計算。
配置 cordis.patch.yml¶
安裝時寫入的配置僅作首次運行默認值;側欄面板改過的同名項會覆蓋文件中的值。
# 鍵名與默認值(摘自 README)
tariff: 0.56 # 電價,元/千瓦時(或對應貨幣單位 per kWh)
currency: CNY # CNY / USD / EUR / GBP / JPY
cpuTdp: 125 # CPU 功耗上限(W),用於估算
cpuIdle: 12 # CPU 空閒功耗(W)
baseWatts: 30 # CPU/GPU 之外的基礎功耗(W)
psuEfficiency: 0.9 # 電源效率,用於換算牆插功耗
intervalMs: 2500 # 採樣間隔(毫秒)
enableNvidia: true
nvidiaSmiPath: '' # nvidia-smi 不在 PATH 時手動指定
enableLhm: true
lhmUrl: http://127.0.0.1:8085/data.json
stateFile: '' # 覆蓋狀態文件路徑
historyPoints: 90 # 迷你曲線保留點數
若希望降低週期性調用 nvidia-smi 的開銷,可將 enableNvidia 設爲 false(見下文限制說明)。
模型工具 power_status¶
插件註冊無參工具 power_status,返回當前牆插功耗、分項來源、今日 / 本月 / 本次運行的電量與電費。適合在對話裏讓模型回答「現在電腦多少瓦」「今天電費多少」一類問題,而無需你自行拼湊多條命令輸出。
安裝與啓用¶
- 在 SkillHub 插件頁 或 GitHub README 查看當前推薦的 DSH 安裝方式與命令(請以頁面原文爲準,勿沿用其他倉庫的命令)。
- 安裝前確認本機滿足 Node
>=20;若使用 NVIDIA 獨顯且開啓enableNvidia,需保證nvidia-smi可用;若依賴 LibreHardwareMonitor,需在本機啓動其 Web 服務器並覈對lhmUrl。 - 插件以當前 DSH 進程權限運行,會週期性執行
nvidia-smi、讀取本機傳感器接口。安裝前應自行審閱源碼與 MIT 許可證,再決定是否啓用。 - 按
package.json中的dsh.client定義,客戶端在 Web 平臺immediately注入側欄,安裝並重啓 DSH 後應能在側欄看到功耗卡。
典型用法¶
側欄查看與校準
- 展開 DSH 左側邊欄,在賬號行上方查看實時瓦數與今日 / 本月電費。
- 點擊卡片,按需修改電價、
cpuTdp、baseWatts等;修改會寫入上述state.json。 - 無 LHM 時,根據實際 CPU 型號調整 TDP 與空閒功耗,可減小估算誤差。
配合 LibreHardwareMonitor(可選)
- 在本機運行 LibreHardwareMonitor,並開啓 Web 服務器(默認端口 8085)。
- 保持
enableLhm: true與默認lhmUrl,插件從http://127.0.0.1:8085/data.json讀取 CPU/GPU 實測功耗。
在對話中查詢
讓模型調用 power_status(無參數),根據返回的牆插功耗與電量、電費字段作答。
適用場景與注意¶
適合誰
- 長時間在本機跑 DSH、希望功耗與電費與對話界面同屏的開發者。
- 希望在智能體上下文中引用「當前機器功耗 / 今日電費」、且數據源在本機閉環的場景。
已知限制(摘自 README)
- 無 LHM 時 CPU 僅能按負載與 TDP 估算;虛擬機、降壓 / 超頻或功耗牆會導致偏差。
- 集顯、AMD GPU 功耗取決於 LHM 是否暴露對應傳感器。
- 電費按單一電價計算;階梯或峯谷電價請自行折算爲平均值填入
tariff。 - 採樣週期內會按
intervalMs啓動nvidia-smi;若介意進程開銷,可關閉enableNvidia並更多依賴 LHM。
結尾¶
dsh-power-monitor 把本機功耗採集、日電費估算和側欄展示收到一個 DSH 客戶端插件裏,並用 power_status 把同一套數據交給模型。需要階梯電價、遠程機房監控等能力時,仍需自行擴展或配合其他工具。
- 目錄頁:https://www.skillhub.cn/plugins/tcmyxc/dsh-power-monitor
- GitHub:https://github.com/tcmyxc/dsh-power-monitor