DeepSeek Harness (DSH) 插件:dsh-vitals

前言

DeepSeek Harness (DSH) 采用插件化架构,Web 界面通常需要查看底层资源占用。传统的命令行监控工具(如 btop)在 Web 侧并不直观。dsh-vitals 是为 DSH Web GUI 提供的硬件负载监控插件,旨在提供类似 btop 的可视化体验,让用户在不离开聊天界面的情况下实时查看 CPU、内存和 GPU 状态。

插件概览

名称:dsh-vitals
维护者:JoblessJoe
许可证:MIT

该插件主要提供以下能力:
* CPU 监控:显示总体利用率,以及每核心的负载情况(支持任意数量物理核心)。
* 内存监控:显示已用、可用及总量,并计算使用率。
* GPU 监控:支持 NVIDIA GPU,显示温度、利用率、功耗和显存使用情况。
* 界面集成:在会话标题栏提供迷你小组件,并在聊天视图旁提供完整的 Hardware 标签页。
* 零依赖:无运行时依赖,安装后直接可用。

安装与启用

安装过程通过 DSH 的插件管理工具完成,无需手动编辑配置文件。

  1. 确保你的 DSH 环境已安装并配置好 Web profile(web)。
  2. 执行以下命令将插件安装到 Web profile 中:
    npx @deepseek-ai/dsh plugin --profile web add dsh-vitals
该命令会自动将插件添加到 `dsh.profile.bundles` 配置中。

安装完成后,Web profile 会自动热重载。无需重启,只需刷新浏览器页面即可看到插件效果。

使用方式

刷新页面后,插件会自动在两个位置显示数据:

  1. 会话标题栏迷你小组件

    • 在聊天界面顶部的会话标题栏(”⋯” 菜单附近)会出现一个小组件。
    • 它以短条形式显示 CPU 和 GPU 的实时负载。
    • 交互:鼠标悬停可查看温度和显存信息;点击小组件可跳转到下方的完整 Hardware 标签页。
  2. Hardware 标签页

    • 在对话视图顶部,点击 Hardware 标签。
    • 该页面展示详细的硬件数据:
      • CPU:总体负载、60秒动态曲线图、最高温度、每核心负载(支持多热区详情)。
      • 内存:已用/可用/总量及利用率。
      • GPU:单张卡显示名称、温度、利用率、功耗和显存使用。

技术细节

  • 数据获取:插件通过一个独立的 GET 接口(/plugins/dsh-vitals/data)读取主机数据,该接口未受 DSH 服务器 /api 信任护栏的保护,因此启用了跨站保护,仅接受 GET 请求。
  • 平台支持:
    • Linux:使用 /proc/stat、/proc/meminfo 和 nvidia-smi。
    • macOS:使用 os.cpus()、vm_stat 和 ioreg(注意:macOS CPU 温度读取通常需要 root 权限,插件会隐藏无数据的面板)。
    • Windows:使用 os.cpus()、os.freemem() 和 nvidia-smi.exe(需 PATH 或特定目录)。
  • 构建要求:虽然安装使用的是预编译包,但若需从源码构建,需要 Node.js 20+ 环境,且无运行时 npm 依赖。

结语

dsh-vitals 是一个无需配置即可上手的系统监控插件,适合在本地模型推理时实时监控资源。更多关于兼容性或源码构建的信息,请参考 GitHub 仓库。

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

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

Xiaoye