Hugging Face's logo
加入 Hugging Face 社区

并获取增强型文档体验

开始使用

模型下载统计

模型下载统计是如何生成的?

计算模型下载次数并非易事,因为单个模型存储库可能包含多个文件,包括多个模型权重文件(例如,使用分片模型)和不同格式的文件,具体取决于库(GGUF、PyTorch、TensorFlow 等)。为了避免重复计算下载次数(例如,将模型的单个下载计算为多个下载),Hub 使用一组查询文件来进行下载计数。不会从用户那里发送任何信息,并且也不会为此进行额外的调用。计数是在 Hub 提供文件以供下载时服务器端完成的。

对这些文件的每个 HTTP 请求,包括 GETHEAD,都将被计为一次下载。默认情况下,当没有指定库时,Hub 使用 config.json 作为默认查询文件。否则,查询文件取决于每个库,并且 Hub 可能会检查诸如 pytorch_model.binadapter_config.json 之类的文件。

不同库的查询文件有哪些?

默认情况下,Hub 会查看 config.jsonconfig.yamlhyperparams.yamlmeta.yaml。一些库通过指定自己的过滤器(指定 countDownloads)来覆盖这些默认值。定义这些覆盖的代码是 开源的。例如,对于 nemo 库,所有以 .nemo 扩展名结尾的文件都用于计算下载次数。

我可以为我的库添加查询文件吗?

是的,您可以在这里打开一个 Pull Request 此处。以下是一个为 VFIMamba 添加下载指标的最小 示例。查看 集成指南 以了解更多详细信息。

GGUF 文件是如何处理的?

GGUF 文件是自包含的,不与单个库绑定,因此所有 GGUF 文件都会被计入下载次数。如果用户执行整个存储库的克隆操作,这将导致重复计算下载次数,但大多数用户和接口都会为给定存储库下载单个 GGUF 文件。

diffusers 是如何处理的?

diffusers 库是一个边缘情况,其过滤器在内部代码库中配置。过滤器确保标记为 diffusers 的存储库会计算通过库加载的文件以及通过需要用户手动下载顶层 safetensors 的 UI 加载的文件。

filter: [
		{
			bool: {
				/// Include documents that match at least one of the following rules
				should: [
					/// Downloaded from diffusers lib
					{
						term: { path: "model_index.json" },
					},
					/// Direct downloads (LoRa, Auto1111 and others)
					/// Filter out nested safetensors and pickle weights to avoid double counting downloads from the diffusers lib
					{
						regexp: { path: "[^/]*\\.safetensors" },
					},
					{
						regexp: { path: "[^/]*\\.ckpt" },
					},
					{
						regexp: { path: "[^/]*\\.bin" },
					},
				],
				minimum_should_match: 1,
			},
		},
	]
}
< > 更新 在 GitHub 上