C✳CODEZ.WIN
🌐 简体中文

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在代码中。

原文采集时间:

来源仓库
huggingface/skills
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 对象都能正常工作。

原文片段 · L169 ↗

拥抱脸 ZeroGPU

使用 ZeroGPU 硬件在 Hugging Face Spaces 上进行机器学习演示的规则和模式。涵盖内容@spaces.GPU持续时间和配额调整、进程隔离、CUDA 可用性模型、并发安全性和 CUDA 构建约束。

原文片段 · L6 ↗

范围

此技能适用于使用 ZeroGPU 硬件的 Gradio SDK Spaces。Docker 和 Static Spaces 无法调度到 ZeroGPU 上,而 Streamlit 应用现在以 Docker Spaces 的形式运行——因此,此技能仅适用于 Gradio。有关 Gradio 的通用编码(组件、布局、事件监听器),请参阅 [此处应插入相关文档]。huggingface-gradio本仓库中的技能。权威的 ZeroGPU 文档位于:https://huggingface.co/docs/hub/spaces-zerogpu— 有关当前支持的 GPU、运行时版本列表和层级阈值,请参阅相关文档,所有这些内容都会随时间而变化。

原文片段 · L10 ↗
原文片段 · python ↗
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。

原文片段 · L271 ↗

限制与结果检查

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电话。

原文片段 · L231 ↗

开始使用前

  1. 先核对支持的 Agent 宿主和仓库安装说明。保留完整 Skill 目录及其引用的脚本、资源和文档,只复制 SKILL.md 可能漏掉依赖。
  2. 向 Agent 提供实际输入、期望输出和验收标准。调用方式与可用工具取决于宿主环境,本站不假定存在通用的安装命令。
  3. 先在临时项目或输入副本上试用。涉及修改文件、远程服务或计费资源的操作,应逐项核对后再授权。
  4. 按照原文检查项和自己的需求验证输出。成功触发或仓库 Star 较高,都不能证明结果正确。

Skill 文件与目录格式规范 ↗

继续阅读原始文档

翻译与介绍范围

本页从固定版本的上游 SKILL.md 整理用途与操作片段,译文使用辅助翻译。它不是完整手册,也不代表经过兼容性实测;使用前请核对原文及其引用文件。

介绍依据下方列出的固定版本;当前仓库动态和目录采集时间单独展示。

固定版本来源
阅读原文 ↗
原文采集时间
来源提交版本
fabc634a893f62ad5c2039830397efa35fa62715
原文 SHA-256
829659aec34224970fe7ed619729fdc7849fc5dd696e2000256c3ee0b517eff7
返回完整 Skill 目录