Hub 文档
使用 GPU Spaces
并获得增强的文档体验
开始使用
使用 GPU Spaces
您可以使用 Space 顶部导航栏中的“设置”按钮将您的 Space 升级为使用 GPU 加速器。如果您正在为副项目构建一个很酷的演示,您甚至可以申请免费升级!


一旦您的 Space 在 GPU 上运行,您就可以直接通过此徽章查看它正在哪个硬件上运行


硬件规格
在下表中,您可以查看不同升级选项的规格。
CPU
硬件 | CPU | 内存 | GPU 显存 | 磁盘 | 每小时价格 |
---|---|---|---|---|---|
CPU 基础版 | 2 vCPU | 16 GB | - | 50 GB | 免费! |
CPU 升级版 | 8 vCPU | 32 GB | - | 50 GB | $0.03 |
GPU
硬件 | CPU | 内存 | GPU 显存 | 磁盘 | 每小时价格 |
---|---|---|---|---|---|
Nvidia T4 - 小型 | 4 vCPU | 15 GB | 16 GB | 50 GB | $0.40 |
Nvidia T4 - 中型 | 8 vCPU | 30 GB | 16 GB | 100 GB | $0.60 |
Nvidia A10G - 小型 | 4 vCPU | 15 GB | 24 GB | 110 GB | $1.00 |
Nvidia A10G - 大型 | 12 vCPU | 46 GB | 24 GB | 200 GB | $1.50 |
2x Nvidia A10G - 大型 | 24 vCPU | 92 GB | 48 GB | 1000 GB | $3.00 |
4x Nvidia A10G - 大型 | 48 vCPU | 184 GB | 96 GB | 2000 GB | $5.00 |
Nvidia A100 - 大型 | 12 vCPU | 142 GB | 80 GB | 1000 GB | $4.00 |
1x Nvidia L40S | 8 vCPU | 62 GB | 48 GB | 380 GB | $1.80 |
4x Nvidia L40S | 48 vCPU | 48 GB | 192 GB | 3200 GB | $8.30 |
8x Nvidia L40S | 192 vCPU | 1534 GB | 384 GB | 6500 GB | $23.50 |
Nvidia H100 | 24 vCPU | 250 GB | 80 GB | 3000 GB | $10.00 |
8x Nvidia H100 | 192 vCPU | 2 TB | 640 GB | 3000 GB | 即将推出 |
TPU
硬件 | 加速器 | 加速器内存 | 内存 | 每小时价格 |
---|---|---|---|---|
Google TPU v5e - 1x1 | 1 | 16 GB | 44 GB | $1.20 |
Google TPU v5e - 2x2 | 4 | 64 GB | 186 GB | $4.75 |
Google TPU v5e - 2x4 | 8 | 128 GB | 380 GB | $9.50 |
以编程方式配置硬件
您可以使用 huggingface_hub
以编程方式配置您的 Space 硬件。这允许您在需要动态分配 GPU 的情况下实现广泛的用例。有关更多详细信息,请查看本指南。
框架特定要求
大多数 Spaces 在 GPU 升级后应该能立即运行,但有时您需要安装您使用的机器学习框架的 CUDA 版本。请遵循本指南以确保您的 Space 利用了改进的硬件。
PyTorch
您需要安装与内置 CUDA 驱动程序兼容的 PyTorch 版本。在您的 requirements.txt
文件中添加以下两行应该可以
--extra-index-url https://download.pytorch.org/whl/cu113
torch
您可以通过在 app.py
中运行以下代码并在 Space 日志中检查输出来验证安装是否成功
import torch
print(f"Is CUDA available: {torch.cuda.is_available()}")
# True
print(f"CUDA device: {torch.cuda.get_device_name(torch.cuda.current_device())}")
# Tesla T4
如果 GPU 可用,许多框架会自动使用 GPU。🤗 transformers
、fastai
和许多其他框架中的 Pipelines 就是这种情况。在其他情况下,或者如果您直接使用 PyTorch,您可能需要将模型和数据移动到 GPU,以确保计算是在加速器上而不是在 CPU 上完成。您可以使用 PyTorch 的 .to()
语法,例如
model = load_pytorch_model()
model = model.to("cuda")
JAX
如果您使用 JAX,您需要指定包含 CUDA 兼容包的 URL。请将以下行添加到您的 requirements.txt
文件中
-f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
jax[cuda11_pip]
jaxlib
之后,您可以通过打印以下代码的输出来验证安装,并在您的 Space 日志中查看。
import jax
print(f"JAX devices: {jax.devices()}")
# JAX devices: [StreamExecutorGpuDevice(id=0, process_index=0)]
print(f"JAX device type: {jax.devices()[0].device_kind}")
# JAX device type: Tesla T4
Tensorflow
默认的 tensorflow
安装应该能够识别 CUDA 设备。只需将 tensorflow
添加到您的 requirements.txt
文件中,并在您的 app.py
中使用以下代码进行验证,然后在您的 Space 日志中查看。
import tensorflow as tf
print(tf.config.list_physical_devices('GPU'))
# [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
计费
Spaces 的计费基于硬件使用情况,按分钟计算:Space 在请求的硬件上运行的每一分钟都会收费,无论 Space 是否被使用。
在 Space 的生命周期中,仅当 Space 实际处于 `Running` 状态时才会计费。这意味着在构建或启动期间不产生费用。
如果正在运行的 Space 开始出现故障,它将自动暂停并停止计费。
在免费硬件上运行的 Spaces 如果长时间(例如两天)未使用,将自动暂停。升级后的 Spaces 默认情况下无限期运行,即使没有使用。您可以通过在 Space 设置中设置自定义“休眠时间”来更改此行为。要中断您 Space 的计费,您可以将硬件更改为 CPU basic,或暂停它。
有关计费的更多信息,请参阅中心范围内的专用部分。
社区 GPU 补助
您有一个很棒的 Space,但需要帮助支付 GPU 硬件升级费用吗?我们乐于帮助那些拥有创新 Space 的人,所以请随时申请社区 GPU 补助,看看您的 Space 是否符合条件!此申请可以在您的 Space 硬件仓库设置中找到,位于左下角的“休眠时间设置”下
设置自定义休眠时间
如果您的 Space 在默认的 cpu-basic
硬件上运行,如果超过设定的时间(目前为 48 小时)处于非活动状态,它将进入休眠状态。任何访问您 Space 的人都会自动重新启动它。
如果您希望您的 Space 永不禁用,或者您想设置自定义休眠时间,您需要升级到付费硬件。
默认情况下,升级后的 Space 永不休眠。但是,您可以为升级后的 Space 使用此设置,使其在不使用时进入空闲状态(stopped
阶段)😴。在休眠期间,您无需为升级后的硬件付费。Space 将在收到新访客后“唤醒”或重新启动。
以下界面将在您的 Spaces 硬件设置中可用


可用的选项如下


暂停 Space
您可以从仓库设置中暂停
Space。“暂停”的 Space 表示该 Space 处于暂停状态,在手动重新启动之前不会使用资源,并且只有暂停的 Space 的所有者才能重新启动它。暂停时间不计费。