dsh-spark-scope:在 DSH 側欄一眼看全 DGX Spark 節點與推理負載

前言

用 DeepSeek Harness(DSH)寫智能體或調模型時,推理往往跑在 DGX Spark 集羣上,模型服務、decode/prefill 速率和各節點 GPU 狀態通常要另開 Spark Scope 儀表盤才能對照。下面介紹社區插件 dsh-spark-scope:把 Spark Scope 迷你窗口裏的 Glance 視圖嵌進 DSH 左側邊欄底部,在 dsh web 或 Desktop 裏工作時不必頻繁切頁,也能持續看到節點與模型服務概況。

這是什麼

dsh-spark-scope(GitHub:juliankang4/dsh-spark-scope)由維護者 juliankang4 發佈,在 DSH 插件目錄中歸類爲客戶端插件。它依賴獨立項目 Spark Scope 提供的數據,在 DSH 側欄展示與 Spark Scope 迷你窗口一致的監控摘要:decode、prefill、各 DGX Spark 節點狀態等。插件當前版本 0.0.4,許可證 MIT;與 DSH 的適配在 README 中註明曾用 dsh 0.2.0-rc.2 / 0.2.1-rc.2 測試。

核心功能

側欄監控卡片

卡片位於側欄底部(在 dsh-cost-meter 等頁腳項之上),主要內容包括:

  1. 頂部:模型名、響應中的節點數、decode 與 prefill 速率及五分鐘 sparkline。
  2. 中部:運行中與排隊請求、KV cache 佔用、近五分鐘 TTFT / TPOT p95、前綴緩存命中率。
  3. 底部:每個節點的 GPU 溫度、功耗、負載與顯存;節點超過四個時,行佈局爲兩列。

模型名旁圓點:Spark Scope 報告集羣健康時爲綠色,其他狀態爲橙色;Spark Scope 無響應或數據超過 20 秒未更新時爲紅色。無讀數時顯示 —。右上角按鈕可將卡片摺疊爲單行(模型名 + decode 速率),瀏覽器會記住摺疊狀態;側欄整體收起時卡片隱藏。

與推理後端差異

卡片只展示推理引擎實際上報、且與 Spark Scope 相同標籤的指標。例如 oMLX 自服務啓動起的平均 decode/prefill 不帶 sparkline;llama.cpp 用平均 decode 時間代替 TPOT、用 context 佔用代替 KV cache;讀取 oMLX 需要 API key 時,卡片會提示。多模型服務並存時,行爲類似 Spark Scope 的 “All at once”:速率與請求會彙總,並列出各服務及其 decode 與狀態;(servers 1/2) 表示僅部分服務上報該速率。離散 GPU 顯存標爲 VRAM;Mac 節點無 GPU 溫度/功耗,彙總功耗會註明覆蓋節點數,如 (5/6 nodes)。

數據如何進入 DSH

插件在 dsh web 服務器上增加路由 /plugins/dsh-spark-scope/state。頁面可見時,卡片約每 2 秒請求該路由;dsh 再以 5 秒超時向 <你配置的地址>/api/state 拉取數據。插件只讀,不會修改 Spark Scope 或節點。該路由與 dsh 自有 API 使用相同的登錄與 Host 校驗,僅已登錄的 dsh 頁面可讀;超過 2 MB 的 Spark Scope 響應會被 dsh 忽略。詳見 dsh SAFETY.md。

主題與語言跟隨 dsh(含中文;韓文可配合 dsh-locale-ko),縮放可與 dsh-ui-scale 一致。

安裝與啓用

除安裝插件外,還需要已運行的 Spark Scope 服務,安裝方法見 spark-scope#installation。

Web 側使用官方命令(勿自行拼接 github:owner/repo):

dsh plugin --profile web add dsh-spark-scope

Desktop:打開 Plugins → Add plugin,輸入 dsh-spark-scope 並安裝。

配置 Spark Scope 地址

在 DSH Settings 的 Spark Scope 標籤頁填寫儀表盤地址後按 Enter。支持局域網地址(如 http://spark-scope.local:8787)或 tailnet 地址(如 https://spark-scope.example.ts.net);省略 scheme 時會自動補 http://。清空字段可隱藏卡片。

若當前打開的 dsh 頁面無法保存設置,輸入框會禁用並說明原因;dsh 0.2.0 僅允許在運行 dsh 的那臺機器上保存該設置。

數據由 dsh 進程請求,而非瀏覽器直連,因此地址必須能從運行 dsh 的計算機訪問。Spark Scope 默認只響應 localhost、IP 或自身主機名;若使用反向代理等其他主機名,需在 Spark Scope 服務端配置 SPARK_SCOPE_ALLOWED_HOSTS。

也可在 profile 的 cordis.patch.yml 中寫入:

- id: spark-scope
  name: dsh-spark-scope
  config:
    url: http://spark-scope.local:8787

配置字段如下(以 README 爲準):

字段 默認 說明
url 空 Spark Scope 地址(http 或 https);留空則隱藏卡片

適用場景與注意

適合:已在 DGX Spark 上跑 vLLM、SGLang、oMLX、llama.cpp 等,並用 Spark Scope 做集羣與模型服務監控;希望在使用 DSH 寫提示、跑智能體時,側欄持續顯示 decode/prefill 與節點健康,減少切到獨立儀表盤。

注意:

  1. 插件隨 當前 dsh 進程拉取內網或 tailnet 地址,安裝前宜閱讀倉庫源碼與 MIT 許可證,並按 dsh 安全文檔部署。
  2. 瀏覽器裏打開的 dsh 若與運行 dsh 的機器不是同一臺,Settings 能否保存 url 受 dsh 版本與策略限制,需按界面提示操作。
  3. 社區插件目錄 skillhub.cn 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態強調「一切皆插件」,本插件爲客戶端擴展,不改變 DSH 核心行爲。

鏈接

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

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

小夜