Hub 文件
模型下載統計
並獲得增強的文件體驗
開始使用
模型下載統計
如何計算模型的下載量?
計算模型的下載次數並非易事,因為單個模型儲存庫可能包含多個檔案,包括多個模型權重檔案(例如分片模型)以及根據程式庫(GGUF、PyTorch、TensorFlow 等)而定的不同格式。為了避免重複計算下載量(例如,將單次模型下載計為多次下載),Hub 使用一組用於計算下載量的查詢檔案。過程中不會從使用者端發送任何資訊,也不會進行額外的調用。計數是在 Hub 提供檔案下載時於伺服器端完成的。
對這些檔案的每一次 HTTP 請求(包括 GET 和 HEAD)都會被計為一次下載。預設情況下,當未指定特定程式庫時,Hub 會使用 config.json 作為預設查詢檔案。否則,查詢檔案取決於各個程式庫,Hub 可能會檢查諸如 pytorch_model.bin 或 adapter_config.json 等檔案。
不同程式庫的查詢檔案有哪些?
預設情況下,Hub 會查看 config.json、config.yaml、hyperparams.yaml、params.json 和 meta.yaml。有些程式庫會透過指定自己的篩選器(設定 countDownloads)來覆寫這些預設值。定義這些覆寫規則的程式碼是開源的。例如,對於 nemo 程式庫,所有副檔名為 .nemo 的檔案都會被用於計算下載量。
我可以為我的程式庫新增查詢檔案嗎?
可以,您可以在此處提交 Pull Request。這裡有一個為 VFIMamba 新增下載指標的最小化範例。請查看整合指南以獲取更多詳細資訊。
GGUF 檔案是如何處理的?
GGUF 檔案是獨立的,不綁定於單一程式庫,因此所有 GGUF 檔案都會被計入下載量。如果使用者執行整個儲存庫的複製(clone),這會導致重複計算下載次數,但大多數使用者和介面針對給定的儲存庫只會下載單一 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,
},
},
]
}如果我需要更詳細的模型下載數據怎麼辦?
如果您需要更詳細的下載數據,例如為了
- 區分
config.json與模型權重, - 排除來自 CI/CD 管道的下載,
- 或是對使用者進行去重(即計算不重複的下載者),
那麼發布者分析(Publisher Analytics),特別是其中的細粒度日誌(granular logs)功能,可以為您組織發布的所有模型和資料集提供去識別化的請求層級存取日誌。
這些日誌以原始格式提供,因為大多數組織會希望套用自己客製化的分析規則。
在 GitHub 上更新