Hub 文件

Spaces ZeroGPU:Spaces 的動態 GPU 分配

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

Spaces ZeroGPU:Spaces 的動態 GPU 分配

ZeroGPU schema

ZeroGPU 是一種共享基礎設施,可最佳化 Hugging Face Spaces 上 AI 模型和演示的 GPU 使用。它根據需要動態分配和釋放 NVIDIA H200 GPU,提供:

  1. 免費 GPU 訪問:實現 Spaces 的經濟高效的 GPU 使用。
  2. 多 GPU 支援:允許 Spaces 在單個應用程式上同時利用多個 GPU。

與傳統的單 GPU 分配不同,ZeroGPU 的高效系統透過最大化資源利用率和電源效率,降低了開發人員、研究人員和組織部署 AI 模型的障礙。

使用和託管 ZeroGPU Spaces

  • 使用現有 ZeroGPU Spaces
    • 所有使用者均可免費使用 ZeroGPU Spaces。(訪問精選列表)。
    • PRO 使用者在使用任何 ZeroGPU Spaces 時,將獲得 5 倍的每日使用配額和 GPU 佇列中的最高優先順序。
  • 託管自己的 ZeroGPU Spaces
    • 個人賬戶:訂閱 PRO,即可在新建立 Gradio SDK Space 時在硬體選項中訪問 ZeroGPU。
    • 組織:訂閱企業 Hub,即可為所有組織成員啟用 ZeroGPU Spaces。

技術規格

  • GPU 型別:Nvidia H200 分片
  • 可用視訊記憶體:每個工作負載 70GB

相容性

ZeroGPU Spaces 旨在與大多數基於 PyTorch 的 GPU Spaces 相容。雖然針對 transformersdiffusers 等高階 Hugging Face 庫增強了相容性,但使用者應注意:

  • 目前,ZeroGPU Spaces 僅相容 Gradio SDK
  • 與標準 GPU Spaces 相比,ZeroGPU Spaces 的相容性可能有限。
  • 在某些情況下可能會出現意外問題。

支援的版本

  • Gradio: 4+
  • PyTorch: 2.1.2, 2.2.2, 2.4.0, 2.5.1(注意:由於存在 PyTorch bug,不支援 2.3.x)
  • Python: 3.10.13

ZeroGPU 入門

要在 Space 中利用 ZeroGPU,請遵循以下步驟:

  1. 確保在 Space 設定中選擇了 ZeroGPU 硬體。
  2. 匯入 spaces 模組。
  3. 使用 @spaces.GPU 裝飾 GPU 依賴函式。

此裝飾過程允許 Space 在呼叫函式時請求 GPU,並在完成後釋放 GPU。

使用示例

import spaces
from diffusers import DiffusionPipeline

pipe = DiffusionPipeline.from_pretrained(...)
pipe.to('cuda')

@spaces.GPU
def generate(prompt):
    return pipe(prompt).images

gr.Interface(
    fn=generate,
    inputs=gr.Text(),
    outputs=gr.Gallery(),
).launch()

注意:@spaces.GPU 裝飾器在非 ZeroGPU 環境中設計為無副作用,確保了不同設定之間的相容性。

持續時間管理

對於預計會超過預設 60 秒 GPU 執行時間的函式,您可以指定自定義持續時間:

@spaces.GPU(duration=120)
def generate(prompt):
   return pipe(prompt).images

這會將最大函式執行時間設定為 120 秒。為較快函式指定較短的持續時間將提高 Space 訪問者的佇列優先順序。

託管限制

  • 個人賬戶(PRO 訂閱者:最多 10 個 ZeroGPU Spaces。
  • 組織賬戶(企業 Hub:最多 50 個 ZeroGPU Spaces。

透過利用 ZeroGPU,開發人員可以建立更高效、可擴充套件的 Spaces,最大限度地利用 GPU 並最大限度地降低成本。

反饋

您可以在 HF Hub 上直接分享您對 Spaces ZeroGPU 的反饋:https://huggingface.co/spaces/zero-gpu-explorers/README/discussions

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.