Agent Skills
返回列表
🔒

可用资源检测

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/get-available-resources。

技能介绍

问题背景

在做数据分析、模型训练或大规模并行任务前,你往往不知道当前机器到底能扛多少:内存够不够装下数据集、有没有可用的 GPU 以及该用哪套后端、并行该开几个 worker、磁盘是否够写中间结果。凭感觉调参容易 OOM、空跑 CPU,或选错 Dask/Zarr 与 in-memory 路线。

技能如何工作

本技能通过运行 scripts/detect_resources.py 做一次系统快照,并在工作目录写出 .claude_resources.json,供后续决策引用。

检测范围包括:

  • CPU:物理/逻辑核心、架构与型号、频率
  • GPU:NVIDIA(nvidia-smi)、AMD(rocm-smi)、Apple Silicon(Metal / 统一内存)
  • 内存与交换:总量、可用量、当前占用比例
  • 磁盘:工作目录所在卷的总空间与可用空间
  • 环境:操作系统、Python 版本等

策略建议(上下文感知) 会随检测结果给出,例如:

  • 并行:8+ 核心时倾向 Dask/joblib/multiprocessing,worker 数常取「核心数 − 2」;核心较少时相应保守
  • 内存:可用内存偏紧时提示核外处理(如 Dask/Zarr);充裕时可考虑直接加载
  • GPU:识别到 NVIDIA / AMD / Apple Silicon 时分别指向 PyTorch、ROCm、MPS/Metal 等常见栈;无 GPU 则强调 CPU 侧优化
  • 磁盘:空间紧张时提醒压缩、流式或外存策略

典型用法是:在重计算任务开始前先跑检测,再读取 JSON 里的建议,再决定数据加载方式、并行度和是否上 GPU。

适用边界与注意

  • 内存读数是瞬时快照,其它进程会改变「可用内存」;关键任务前可关无关应用或多次采样。
  • GPU 未检出时,需确认驱动与 nvidia-smi / rocm-smi 等是否在 PATH,而非假定无卡。
  • 检测脚本依赖 psutil;其余多为标准库。资源会随时间变化,扩并行或加大数据量前宜重新检测。
  • 不同机器能力差异大,保留 .claude_resources.json 有助于记录「当时为何这样选架构」。

使用场景

  • 准备加载数十 GB 基因组或表格数据前,先确认内存是否够用、是否该上 Dask 或 Zarr 做核外处理
  • 在本地或服务器上启动神经网络训练前,检测 NVIDIA、ROCm 或 Apple MPS 是否可用及该选哪套框架
  • 用 joblib 或 multiprocessing 批量处理上万个小文件前,根据 CPU 核心数确定合理的工作进程数
  • 跑长时间数值模拟或生成大量中间文件前,核对工作目录磁盘剩余空间并选择是否压缩或外存

适合人员

  • 在单机或集群节点上做生物信息、统计建模的数据科学家,需要在开跑前判断内存与并行策略
  • 负责训练或微调深度学习模型的 ML 工程师,需要快速确认 GPU 型号、显存与可用后端再写训练脚本
  • 用 Python 做 ETL 或批处理的后端/数据工程师,需要在扩容 worker 或数据量前核对 CPU 与磁盘约束
  • 在新项目或新机器上搭建分析流水线的人,希望用一份 JSON 快照记录基线算力以便做架构选型