Локализованное руководство по чтению
huggingface-zerogpuНазначение, использование и источник
Демонстрация возможностей ИИ и вычисления на графическом процессоре с использованием 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илиspacesпакет Python или возникают ошибки в коде, специфичные для ZeroGPU, например:PicklingErrorчерез границу между работниками,illegal duration, илиflash-attnСбои при сборке wheel-файла — даже если пользователь явно не запрашивает рекомендации по программированию для ZeroGPU. Срабатывание приimport spacesили@spaces.GPUв коде.
Источник получен:
- Репозиторий-источник
- huggingface/skills
- SKILL.md
skills/huggingface-zerogpu/SKILL.md- Звёзды репозитория
- 11,241
- Последнее обновление репозитория
- 2026-10-30
- Категории Skills
- Разработка
- Время последнего сбора
Лицензия: Apache-2.0
Приведенные фрагменты описания рабочих процессов являются вспомогательными средствами для чтения, а не исполняемыми инструкциями от Codez. Для создания этой страницы не использовались сторонние инструменты.
Приведённые ниже фрагменты, описывающие цели и рабочие процессы, представляют собой исходный материал, систематизированный и переведённый для удобства чтения. Они отличаются от отдельно обозначенного редакционного анализа Codez.
Что делает этот навык
Демонстрация возможностей ИИ и вычисления на графическом процессоре с использованием 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илиspacesпакет Python или возникают ошибки в коде, специфичные для ZeroGPU, например:PicklingErrorчерез границу между работниками,illegal duration, илиflash-attnСбои при сборке wheel-файла — даже если пользователь явно не запрашивает рекомендации по программированию для ZeroGPU. Срабатывание приimport spacesили@spaces.GPUв коде.
Как работает рабочий процесс на вышестоящем уровне
Изоляция процесса и травление
@spaces.GPU— Декорированные функции выполняются в отдельном процессе, управляемом планировщиком ZeroGPU. Аргументы и возвращаемые значения пересекают границу процесса посредством сериализации pickle. Передавать или возвращать можно только сериализуемые объекты. Открытие файловых дескрипторов, подключений к базам данных, блокировок, лямбда-функций и замыканий над несериализуемым состоянием вызовет исключение.PicklingErrorНе возвращайте тензоры CUDA напрямую. Десериализация тензора CUDA в основном процессе запускаетtorch.cuda._lazy_init(), который блокируется ZeroGPU. Сначала преобразуйте в CPU: returntensor.cpu()илиtensor.cpu().numpy()Тензоры CPU, массивы numpy, изображения PIL и обычные объекты Python работают без проблем.
Hugging Face ZeroGPU
Правила и шаблоны для демонстраций машинного обучения на примере «прижимающихся лиц» с использованием аппаратного обеспечения ZeroGPU. Охватывает@spaces.GPUнастройка длительности и квот, изоляция процессов, модель доступности CUDA, безопасность параллельного выполнения и ограничения сборки CUDA.
Объем
Этот навык предназначен для пространств Gradio SDK, использующих оборудование ZeroGPU. Docker и статические пространства не могут планировать приложения на ZeroGPU, а приложения Streamlit теперь работают в Docker Spaces — поэтому этот навык применим только к Gradio. Для получения общей информации о коде Gradio (компоненты, макеты, обработчики событий) см. раздел...huggingface-gradioВ этом репозитории собраны подробные сведения. Авторитетная документация по ZeroGPU находится по адресу:https://huggingface.co/docs/hub/spaces-zerogpu— Обратитесь к ним за информацией о текущих поддерживаемых графических процессорах, списках версий среды выполнения и пороговых значениях уровней, которые со временем меняются.
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 создает образы Docker в среде, использующей только центральный процессор. На ZeroGPU этап сборки не включает в себя никаких дополнительных операций.nvccпотому что базовое изображениеpython:3.13(использование выделенных графических процессоров в Spaces)nvidia/cuda:*-devel-*и имеютnvcc(на этапе сборки). Пакет, зависящий от CUDA, единственным дистрибутивом которого является sdist — например, bare.flash-attn— следовательно, его нельзя установить черезrequirements.txtНа ZeroGPU. Работают только предварительно собранные колесики. В среде выполнения ZeroGPU естьnvccДоступно, смонтировано из образа разработки CUDA по адресу/cuda-imageс2025-07(Первоначально добавлено для поддержки AoTI). Вот что делаетtorch.exportВозможные рабочие процессы AoTI внутри@spaces.GPUзвонки.
Начните с безопасного пробного периода.
- Проверьте поддерживаемый хост и инструкции по установке репозитория. Храните каталог Skill, а также связанные с ним скрипты, ресурсы и документацию вместе;SKILL.mdВ одиночку можно опустить зависимости.
- Предоставьте агенту ваши реальные входные данные, желаемый результат и критерии приемки. Синтаксис вызова и доступные инструменты зависят от хоста; данный сайт не предполагает универсальной команды установки.
- Попробуйте запустить исходный рабочий процесс в тестовом проекте или в его копии. Перед тем как разрешить операции, изменяющие файлы, удаленные сервисы или оплачиваемые ресурсы, проверьте их.
- Проверьте выходные данные на соответствие исходным проверкам качества и вашим собственным требованиям. Успешный запуск или большое количество звезд в репозитории не гарантируют корректного результата.
Подробнее читайте в источнике.
- Hugging Face ZeroGPU
- Объем
- Аппаратное обеспечение
- Базовый шаблон
- Модель доступности CUDA
- Идиома выбора устройства по-прежнему работает.
- «Нетерпеливая загрузка» — это правильный вариант по умолчанию.
- Локальная разработка: просто установите
spaces - Антипаттерн
- Вместо этого сделайте вот что.
- Продолжительность и квота
- Динамическая продолжительность для переменных нагрузок
- Изоляция процесса и травление
gr.Stateсемантика через границу- Параллелизм
- Детализация вызовов
- Ограничения сборки CUDA
- Пример кэширования
python_versionзакрепить в предисловии к файлу README- Не закреплять
spacesвrequirements.txt - Приколоть
torchчтобы сопоставить бирки на колесах
Смежные навыки
Перевод и сфера применения
В этом руководстве по чтению представлены избранные отрывки из закрепленного текста выше по течению.SKILL.mdПеревод выполнен с помощью переводчика. Это не полное руководство и не гарантия проверенной совместимости. Перед использованием ознакомьтесь с оригиналом и указанными в нем файлами.
Данное введение относится к закрепленной ниже версии; текущая активность в репозитории и время сбора данных отображаются отдельно.
- Закрепленный источник
- Прочитайте оригинал ↗
- Источник получен
- Исходный коммит
fabc634a893f62ad5c2039830397efa35fa62715- Исходный SHA-256
829659aec34224970fe7ed619729fdc7849fc5dd696e2000256c3ee0b517eff7