Repolode
gpustack

gpustack/gguf-parser-go

用 Go 编写的工具,可远程解析 GGUF 模型元数据,并在下载前估算内存、显存占用及最大每秒 token 数。

Star
310
Fork
31
未关闭 Issue
0
最近提交
8天前

这是什么?

GGUF Parser 用于查看 GGUF 模型文件的元数据、架构、分词器信息,并估算其内存需求。工具只读取必要的数据块,因此无需下载整个文件,即可分析托管在 Hugging Face、ModelScope 或 Ollama 上的模型。

给定上下文长度、批大小、Flash Attention 设置以及卸载层数后,它可以估算 RAM 与显存占用,并支持多 GPU 切分和 RPC 配置。提供设备指标后,还能在不实际运行模型的情况下估算语言模型的最大每秒 token 数。工具还能区分 Embedding、Reranking、Decision、LoRA 等模型类型,并支持滑动窗口注意力、MLA 及音频投影器等架构。

项目使用 Go 编写,提供 CLI 二进制文件和 Docker 镜像。

核心功能

  • 01无需下载完整文件,即可从远程 URL、Hugging Face 或 ModelScope 解析 GGUF 元数据。
  • 02可在指定上下文长度、批大小和层卸载设置下估算 RAM 与显存占用。
  • 03根据提供的设备指标估算最大每秒 token 数。
  • 04识别 Embedding、Reranking、Decision 和 LoRA 等模型文件类型。
  • 05估算结果支持多 GPU 张量切分及 RPC 远程设备。

适用场景

  • 在下载量化模型前,确认其能否放入现有显卡显存。
  • 规划基于 llama.cpp 推理时应卸载到 GPU 的层数。
  • 对比不同模型版本和量化级别的内存与吞吐估算结果。

快速上手

  1. 1

    从发布页面下载二进制文件

  2. 2

    解析本地 GGUF 文件

    gguf-parser --path ~/.cache/lm-studio/models/unsloth/DeepSeek-R1-Distill-Qwen-7B-GGUF/DeepSeek-R1-Distill-Qwen-7B-Q4_K_M.gguf

使用前须知

  • 最大每秒词元数(TPS)的估算目前仍是实验性功能。
  • 部分模型文件的命名不完全遵循 general.file_type,因此量化类型标识可能不准确。

收录于专题

标签

#gguf#llm#memory-estimation#llama-cpp#model-inspection#inference#go#llama-box#stable-diffusion-cpp

常见问题

gguf-parser-go 是什么?
用 Go 编写的工具,可远程解析 GGUF 模型元数据,并在下载前估算内存、显存占用及最大每秒 token 数。 GGUF Parser 用于查看 GGUF 模型文件的元数据、架构、分词器信息,并估算其内存需求。工具只读取必要的数据块,因此无需下载整个文件,即可分析托管在 Hugging Face、ModelScope 或 Ollama 上的模型。
gguf-parser-go 可以免费使用吗?用的什么许可证?
gguf-parser-go 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
gguf-parser-go 还在维护吗?
活跃维护中。gguf-parser-go 最近一次提交是在 2026年10月30日。
gguf-parser-go 适合用来做什么?
在下载量化模型前,确认其能否放入现有显卡显存。 规划基于 llama.cpp 推理时应卸载到 GPU 的层数。 对比不同模型版本和量化级别的内存与吞吐估算结果。
gguf-parser-go 怎么安装和运行?
从发布页面下载二进制文件 解析本地 GGUF 文件: gguf-parser --path ~/.cache/lm-studio/models/unsloth/DeepSeek-R1-Distill-Qwen-7B-GGUF/DeepSeek-R1-Distill-Qwen-7B-Q4_K_M.gguf
在哪里获取 gguf-parser-go?
源代码和安装说明在 GitHub 上:https://github.com/gpustack/gguf-parser-go

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目