Три варианта SDK при создании Space

При создании нового Space на huggingface.co/spaces нужно выбрать один из трёх SDK: Gradio (готовый интерфейс для ML-демо), Docker (полный контроль через контейнер) или статический HTML. Под капотом код Space хранится в git-репозитории - так же, как модели и датасеты на платформе, и та же самая связка git-инструментов подходит для работы с ним.

Что реально бесплатно, а что нет

Это самая важная деталь для новичка. Static Space - статический HTML - бесплатен для всех без исключений. А вот Gradio- и Docker-пространства выполняются на вычислительных ресурсах, и по официальной документации их создание теперь требует платного плана: PRO для личного аккаунта, Team или Enterprise для организации. Единственное исключение: бесплатные личные аккаунты в хорошем статусе всё ещё могут разместить до двух Gradio-пространств на аппаратной конфигурации ZeroGPU.

Аппаратные лимиты по умолчанию

Каждое окружение Spaces по умолчанию ограничено 16 ГБ оперативной памяти, 2 vCPU и 50 ГБ дискового пространства, которое не сохраняется между перезапусками. Базовая конфигурация CPU Basic сама по себе не тарифицируется по часам - бесплатна именно почасовая ставка этого железа, но, как указано выше, создание на нём вычислительного (Gradio или Docker) пространства всё равно упирается в требование платного плана, кроме исключения с ZeroGPU. При необходимости можно запросить апгрейд на более мощное железо, включая различные GPU-конфигурации, через вкладку Settings своего Space.

Что происходит с пространством при бездействии

На бесплатном железе Space «засыпает» и прекращает выполнение после периода неактивности - если нужна непрерывная работа без остановок, официальная документация советует перейти на платное железо. Можно и вручную поставить пространство на паузу через вкладку Settings - в этом случае оно не будет выполняться до ручного перезапуска владельцем, а время на паузе не тарифицируется вовсе.

Секреты, переменные и видимость

Для конфиденциальных значений - токенов доступа, API-ключей - в настройках Space предусмотрен отдельный раздел Secrets, значения которого нельзя прочитать обратно через интерфейс и которые не копируются при дублировании пространства другим пользователем. Для несекретных настроек есть публичные переменные, которые, наоборот, копируются при дублировании. Видимость пространства настраивается там же: публичная, защищённая или приватная - при этом защищённая видимость (когда исходный код скрыт, но само приложение доступно по ссылке) доступна только на платных планах PRO, Team и Enterprise.

Можно ли бесплатно разместить демо с моделью на Hugging Face Spaces?
Статический HTML - да, полностью бесплатно. Gradio и Docker пространства, которые выполняются на вычислениях, теперь требуют платного плана, за исключением до двух Gradio-пространств на ZeroGPU для бесплатных личных аккаунтов.
Какие ресурсы даются по умолчанию для одного Space?
16 ГБ оперативной памяти, 2 vCPU и 50 ГБ непостоянного дискового пространства.
Что происходит с бесплатным пространством, если им никто не пользуется?
Оно автоматически «засыпает» и прекращает выполнение после периода неактивности; для непрерывной работы нужно перейти на платное железо.
Тарифицируется ли пространство, поставленное на паузу вручную?
Нет, время на паузе не тарифицируется.
Как безопасно хранить API-ключ внутри Space?
Через раздел Secrets в настройках, а не напрямую в коде - значение нельзя прочитать обратно через интерфейс, и оно не копируется при дублировании пространства.
Доступна ли защищённая видимость (protected) на бесплатном аккаунте?
Нет, защищённая видимость доступна только на платных планах PRO, Team и Enterprise.
Источники (1)
  1. Spaces Overview - Hugging Face
← Все статьи блога