Hugging Face's logo
加入 Hugging Face 社区

并获取增强型文档体验

开始使用

使用 GPU 空间

您可以使用空间顶部导航栏中的“设置”按钮将您的空间升级为使用 GPU 加速器。如果您正在为副项目构建一个酷炫的演示,甚至可以请求免费升级!

从长远来看,我们还希望公开非 GPU 硬件,例如 HPU、IPU 或 TPU。如果您有想要运行的特定 AI 硬件,请告知我们(网站:huggingface.co)。

一旦您的空间在 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 40 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

硬件 加速器 加速器内存 RAM 每小时价格
Google TPU v5e - 1x1 1 16 GB 44 GB $1.38
Google TPU v5e - 2x2 4 64 GB 186 GB $5.50
Google TPU v5e - 2x4 8 128 GB 380 GB $11.00

以编程方式配置硬件

您可以使用 huggingface_hub 以编程方式配置您的空间硬件。这允许您在需要动态分配 GPU 的各种用例中使用。查看本指南以了解更多详细信息。

框架特定要求

大多数空间在 GPU 升级后应该能够开箱即用,但有时您需要安装您使用的机器学习框架的 CUDA 版本。请遵循本指南以确保您的空间利用改进的硬件。

PyTorch

您需要安装与内置 CUDA 驱动程序兼容的 PyTorch 版本。将以下两行添加到您的 requirements.txt 文件中应该可以解决问题

--extra-index-url https://download.pytorch.org/whl/cu113
torch

您可以通过在您的 app.py 中运行以下代码并在您的空间日志中检查输出,来验证安装是否成功

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 可用时会自动使用它。这是 🤗 transformersfastai 和许多其他管道的情况。在其他情况下,或者如果您直接使用 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

之后,您可以通过打印以下代码的输出并在您的空间日志中检查它来验证安装。

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 安装应该会识别 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 实际处于 运行 状态时才会计费。这意味着构建或启动期间不会产生任何费用。

如果正在运行的 Space 开始出现故障,它将自动暂停,并且计费将停止。

在免费硬件上运行的 Space 如果长时间未使用(例如两天),将自动暂停。默认情况下,升级后的 Space 会无限期运行,即使没有使用也是如此。您可以通过设置自定义“睡眠时间”来更改此行为。要中断 Space 的计费,您可以将硬件更改为 CPU 基础版,或暂停它。

有关计费的更多信息,请参阅专门的 Hub 范围内的部分

社区 GPU 补助

您是否有很棒的 Space 但需要帮助支付 GPU 硬件升级费用?我们很乐意帮助那些拥有创新型 Space 的人,因此请随时申请社区 GPU 补助,看看您的 Space 是否符合条件!此申请可以在 Space 硬件存储库设置的左下角“睡眠时间设置”下找到。

Community GPU Grant

设置自定义睡眠时间

如果您的 Space 使用默认的 cpu-basic 硬件运行,则在 48 小时(当前)内未处于活动状态时,它将进入睡眠状态。任何访问您的 Space 的人都将自动重新启动它。

如果您希望您的 Space 永不停用或希望设置自定义睡眠时间,则需要升级到付费硬件。

默认情况下,升级后的 Space 永远不会进入睡眠状态。但是,您可以使用此设置使升级后的 Space 在未使用时变为空闲(已停止 阶段)😴。当它处于睡眠状态时,您无需为升级后的硬件付费。Space 将在收到新访客时“唤醒”或重新启动。

然后,您可以在 Spaces 硬件设置中使用以下界面

提供以下选项

暂停 Space

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

< > 在 GitHub 上更新