Hugging Face Hub 儲存重新架構

Hugging Face 正在重新架構 Hub 的儲存後端,以使用內容定址儲存(CAS)取代不透明的 blob 傳輸。此變更使平台能夠在位元級別分析檔案,啟用去重複化與顯著提升大型模型權重與資料集傳輸效能。

過渡至內容定址儲存 (CAS)

Hugging Face 正在根據「簡單讀取與智慧寫入」的哲學實作自訂協議,以克服 AWS CloudFront 的 50GB 檔案大小限制以及將檔案視為不透明 blob 的低效問題。

讀取路徑(簡單讀取)

為維持高吞吐量與低延遲,讀取路徑被設計為簡單。檔案請求會被路由至 CAS 伺服器,該伺服器提供必要的重建資訊。實際資料仍然存放在 us-east-1 區域的 S3 儲存桶中,並繼續透過 AWS CloudFront 作為 CDN 提供服務。

寫入路徑(智慧寫入)

寫入路徑透過以區塊而非整個檔案為單位進行操作,來優化速度與安全性。當使用者上傳資料時,CAS 伺服器會辨識現有的區塊,並指示客戶端(例如 huggingface_hub)僅傳輸新增且唯一的區塊。這些區塊在被上傳至 S3 備援存放區之前,會先由 CAS 進行驗證。

技術優化與功能

透過在位元級別管理檔案,Hugging Face 能夠應用特定格式的優化來減少上傳時間:

  • Tensor Files: 團隊正在研究針對 Tensor 檔案(例如 Safetensors)進行壓縮,這可能會將上傳速度降低 10-25%。
  • Parquet Files: 該架構啟用了 Parquet 檔案的改進去重複化。
  • Enterprise Security: 透過插入檔案傳輸的控制平面,平台能夠防止惡意或無效資料的上傳,並為基礎設施團隊提供詳細的審計追蹤與遙測。

全球基礎設施設計

為了降低延遲並平衡成本,Hugging Face 正根據對 88 個國家上傳流量的分析,在三個戰略 AWS 區域部署 CAS 節點:

  • **us-east-1 (北美與南美):4 個節點
  • **eu-west-3 (歐洲、中東與非洲):4 個節點
  • **ap-southeast-1 (亞洲與大洋洲):2 個節點

此分布針對負責上傳量絕大多數的區域,美國與歐洲佔上傳位元組的 78.4%,亞洲佔 21.6%。

實施路線圖

Hugging Face 預計在 2024 年底將新基礎設施投入生產,從 us-east-1 的單一 CAS 開始。推出將分階段進行:

  1. 內部基準測試: 將內部儲存庫複製到新系統以測試傳輸效能。
  2. 區域擴展: 在額外的存在點(PoP)複製 CAS。
  3. 完整整合: 在 2025 年完成儲存後端的過渡。

Sources