Hugging Face 模型内存估算器
在不下载权重的情况下估算模型推理所需内存。
文档明确说明通过 Hugging Face Hub 的 HTTP Range 请求读取权重元数据,并说明 HF_TOKEN 仅用于 gated/private 模型,数据流边界基本可见;但要求使用 uvx 获取并运行未固定版本的外部 CLI,未说明令牌保护、用户确认、权限隔离、失败恢复或回滚,因此扣除 12 分。未发现凭据窃取、隐蔽外泄或破坏性默认行为。
命令、Safetensors/GGUF 分支及主要参数说明相互一致,正常路径看似可运行;但未提供版本锁定、测试套件、错误输出示例、异常输入处理或诊断指引,且本次未执行验证,按静态校准限制为 7 分。
使用场景、模型 ID、GGUF 文件、实验模式和 JSON 输出均有明确说明,覆盖 Transformers、Diffusers、Sentence Transformers、LLM/VLM;但非适用范围、估算误差边界、触发排除条件、中文支持及中国大陆网络可达性未说明,核心功能依赖 Hugging Face Hub 和 uv 获取包,故扣分。
SKILL.md 结构简洁,包含触发条件、需求、运行方式、参数和示例;仓库提供 Apache-2.0 许可证及 CI 生成校验。但该技能没有版本、变更记录、明确维护责任人或更新路径,也缺少故障排查、限制说明和输出字段解释,因此为中等分数。
命令直接生成 JSON 内存估算,且涵盖权重与可选 KV cache,目标结果具有直接可用性;但没有提交的实际运行结果、准确性验证或与其他方法的比较,估算适用边界也不完整,按静态校准仅给 5 分。
源文件提供了可审计的命令、参数和示例,仓库 CI 能验证生成文件一致性;但未见覆盖 hf-mem 关键路径的测试、真实输出、第三方复核或多源交叉证据,静态证据有限,故为 3 分。
- 运行 uvx 可能从外部源获取未固定版本的工具;应确认包来源、版本和执行环境。
- 该技能会访问 Hugging Face Hub;私有或 gated 模型涉及 HF_TOKEN,需避免在命令、日志或输出中泄露令牌。
- 文档未说明中国大陆网络可达性、失败处理、估算误差和结果字段语义;部署前应补充这些限制并进行实际验证。
这个 Skill 能做什么,适合哪些场景?
hf-mem 是 Hugging Face Skills 仓库中的独立技能,用于估算 Hugging Face Hub 上模型权重的推理内存需求。它支持 Safetensors 和 GGUF,并通过 HTTP Range 请求读取远程文件信息,无需在本地下载或加载权重。默认估算模型权重内存;使用 --experimental 时,还可为支持的 LLM、VLM 和 GGUF 模型估算 KV 缓存。它适合在部署前判断模型是否适合目标 GPU 或计算实例。
运行 hf-mem CLI,检查指定 Hugging Face Hub 仓库中的 Safetensors 或 GGUF 权重,并输出 JSON 格式的内存估算结果。对于包含多个 GGUF 精度或量化文件的仓库,可按文件估算,也可使用 --gguf-file 指定目标文件或分片路径。使用 --experimental 时,根据上下文长度、批大小和 KV 缓存精度计算额外的 KV 缓存内存。
- 用户想在运行某个 Hugging Face 模型前了解所需 VRAM 或内存时使用。
- 用户需要判断模型是否能装入指定 GPU 或云实例时使用。
- 用户提供 Hugging Face 模型 ID 或 URL,并询问推理资源需求时使用。
- 用户需要比较同一 GGUF 仓库中不同量化文件的内存估算时使用。
这个 Skill 有哪些优点和局限?
- 支持 Safetensors 和 GGUF。
- 通过 HTTP Range 请求工作,无需下载或本地加载模型权重。
- 可输出 JSON,便于自动化处理。
- 实验性模式可将 KV 缓存纳入估算,并支持上下文长度、批大小和缓存精度参数。
- 依赖 uv 和网络访问 Hugging Face Hub。
- GGUF 仓库包含多个量化文件时,可能需要手动指定目标文件。
- KV 缓存估算标记为 experimental。
- 源材料没有提供测试套件、性能数据或跨平台验证信息。
如何安装这个 Skill?
将仓库中的 skills/hf-mem/ 文件夹复制或符号链接到客户端支持的 Agent Skills 目录,例如 Codex 的 $REPO_ROOT/.agents/skills 或 $HOME/.agents/skills。README 还说明可通过 hf skills add <skill-name> 添加其他 Hugging Face 技能,但未提供 hf-mem 的独立安装包或版本信息。
如何使用这个 Skill?
先确保已安装 uv,然后运行:
uvx hf-mem --model-id <model-id> --json-output
对于指定 GGUF 文件,运行:
uvx hf-mem --model-id <model-id> --gguf-file <file-or-path> --json-output
要估算 KV 缓存,可加入 --experimental,并按需设置 --max-model-len、--batch-size 和 --kv-cache-dtype。访问 gated 或 private 模型时,设置 HF_TOKEN 环境变量或传入 --hf-token。