Skill 多语言阅读指南
huggingface-zerogpu用途、用法与原始来源
使用 Gradio Spaces 和 Hugging Face Spaces ZeroGPU 进行 AI 演示和 GPU 计算。在编写或审查使用 Gradio Spaces 和 Hugging Face Spaces ZeroGPU 的代码时使用。@spaces.GPU正在配置python_version或者requirements.txt对于 ZeroGPU 空间,或者处理 ZeroGPU 特有的代码约束——基于 pickle 的进程隔离,gr.State跨工作者边界的语义,没有torch.compile(请改用 AoTI),仅 CUDA wheel 构建(无)nvcc在构建或运行时)、大型与超大型大小以及动态持续时间的可调用对象。每当用户提到 ZeroGPU 时,请务必使用此技能。@spaces.GPU或者spacesPython 包,或者遇到 ZeroGPU 特有的代码错误,例如PicklingError跨越工人边界,illegal duration, 或者flash-attn即使用户没有明确要求 ZeroGPU 编码指导,wheel 构建仍然会失败。触发条件import spaces或者@spaces.GPU在代码中。
原文采集时间:
- SKILL.md
skills/huggingface-zerogpu/SKILL.md- 仓库 Star
- 11,241
- 仓库最近更新
- 2026/10/30
- 能力分类
- 开发
- 最近采集时间
许可:Apache-2.0
流程片段用于帮助阅读上游说明。本页没有执行第三方 Skill,不属于实测评测。
下面的用途和操作片段来自上游文档,由本站整理并翻译,和另行标注的 Codez 编辑分析分开展示。
这个 Skill 能做什么
使用 Gradio Spaces 和 Hugging Face Spaces ZeroGPU 进行 AI 演示和 GPU 计算。在编写或审查使用 Gradio Spaces 和 Hugging Face Spaces ZeroGPU 的代码时使用。@spaces.GPU正在配置python_version或者requirements.txt对于 ZeroGPU 空间,或者处理 ZeroGPU 特有的代码约束——基于 pickle 的进程隔离,gr.State跨工作者边界的语义,没有torch.compile(请改用 AoTI),仅 CUDA wheel 构建(无)nvcc在构建或运行时)、大型与超大型大小以及动态持续时间的可调用对象。每当用户提到 ZeroGPU 时,请务必使用此技能。@spaces.GPU或者spacesPython 包,或者遇到 ZeroGPU 特有的代码错误,例如PicklingError跨越工人边界,illegal duration, 或者flash-attn即使用户没有明确要求 ZeroGPU 编码指导,wheel 构建仍然会失败。触发条件import spaces或者@spaces.GPU在代码中。
如何使用:上游操作流程
工艺隔离和酸洗
@spaces.GPU带有 - 装饰器的函数运行在由 ZeroGPU 调度器管理的独立进程中。参数和返回值通过 pickle 序列化跨越进程边界。只有可序列化的对象才能传入或返回。打开的文件句柄、数据库连接、锁、lambda 表达式以及对不可序列化状态的闭包都会引发异常。PicklingError请勿直接返回 CUDA 张量。在主进程中反序列化 CUDA 张量会触发异常。torch.cuda._lazy_init()这会阻塞 ZeroGPU。先转换为 CPU:返回tensor.cpu()或者tensor.cpu().numpy()CPU 张量、numpy 数组、PIL 图像和普通 Python 对象都能正常工作。
拥抱脸 ZeroGPU
使用 ZeroGPU 硬件在 Hugging Face Spaces 上进行机器学习演示的规则和模式。涵盖内容@spaces.GPU持续时间和配额调整、进程隔离、CUDA 可用性模型、并发安全性和 CUDA 构建约束。
范围
此技能适用于使用 ZeroGPU 硬件的 Gradio SDK Spaces。Docker 和 Static Spaces 无法调度到 ZeroGPU 上,而 Streamlit 应用现在以 Docker Spaces 的形式运行——因此,此技能仅适用于 Gradio。有关 Gradio 的通用编码(组件、布局、事件监听器),请参阅 [此处应插入相关文档]。huggingface-gradio本仓库中的技能。权威的 ZeroGPU 文档位于:https://huggingface.co/docs/hub/spaces-zerogpu— 有关当前支持的 GPU、运行时版本列表和层级阈值,请参阅相关文档,所有这些内容都会随时间而变化。
import spaces
import torch
from transformers import pipeline
pipe = pipeline("text-generation", model="...", device="cuda")
@spaces.GPU
def generate(prompt: str) -> str:
return pipe(prompt, max_new_tokens=100)[0]["generated_text"]环境与依赖
请勿别针spaces在requirements.txt
太空平台自行定位spaces版本。冲突的引脚requirements.txt导致构建时 pip 解析失败。> 规则:不要包含spaces在requirements.txt。
限制与结果检查
CUDA 构建约束
HF Spaces 在纯 CPU 环境下构建 Docker 镜像。在 ZeroGPU 环境下,构建阶段没有 CPU 参与。nvcc因为基础图像是python:3.13(专用 GPU 空间使用)nvidia/cuda:*-devel-*并且有nvcc在构建时)。一个依赖于 CUDA 的软件包,其唯一分发方式是 sdist——例如 bare。flash-attn因此无法通过以下方式安装requirements.txt在 ZeroGPU 上运行。只有预编译的 wheel 文件才能工作。ZeroGPU 运行时确实有nvcc可用,从 CUDA 开发镜像挂载/cuda-image自从2025-07(最初是为了支持AoTI而添加的)。这就是它的意义所在。torch.export/ AoTI 工作流程可能在内部实现@spaces.GPU电话。
开始使用前
- 先核对支持的 Agent 宿主和仓库安装说明。保留完整 Skill 目录及其引用的脚本、资源和文档,只复制 SKILL.md 可能漏掉依赖。
- 向 Agent 提供实际输入、期望输出和验收标准。调用方式与可用工具取决于宿主环境,本站不假定存在通用的安装命令。
- 先在临时项目或输入副本上试用。涉及修改文件、远程服务或计费资源的操作,应逐项核对后再授权。
- 按照原文检查项和自己的需求验证输出。成功触发或仓库 Star 较高,都不能证明结果正确。
继续阅读原始文档
相关 Skill
翻译与介绍范围
本页从固定版本的上游 SKILL.md 整理用途与操作片段,译文使用辅助翻译。它不是完整手册,也不代表经过兼容性实测;使用前请核对原文及其引用文件。
介绍依据下方列出的固定版本;当前仓库动态和目录采集时间单独展示。
- 固定版本来源
- 阅读原文 ↗
- 原文采集时间
- 来源提交版本
fabc634a893f62ad5c2039830397efa35fa62715- 原文 SHA-256
829659aec34224970fe7ed619729fdc7849fc5dd696e2000256c3ee0b517eff7