Для большинства команд, работающих с искусственным интеллектом, парадигма «данные здесь, вычисления там» стала не просто удобной опцией, а суровой необходимостью. Модели и датасеты часто живут в одном объектном хранилище, а мощные GPU для обучения или инференса доступны в другом облаке. В момент, когда эти два мира сталкиваются, команды начинают платить «налог на кросс-облачный трафик» (egress tax). Каждый раз, когда вы пытаетесь прочитать свои собственные данные на своих же GPU, но в другом регионе или у другого провайдера, вы платите за передачу данных. Это не просто бюрократическая деталь; это существенная статья расходов, которая может съесть бюджет проекта еще до того, как начнется само обучение.
Команда Hugging Face совместно с разработчиками SkyPilot решила эту проблему, объединив две половины экосистемы. Теперь ваши модели и датасеты остаются на Hub, а вычислительные ресурсы (для разработки, обучения или обслуживания) запускаются на любом кластере, где есть свободные GPU. Ключевое нововведение — возможность примонтировать репозиторий Hugging Face или Bucket с помощью одной команды и токена, который у вас уже есть. Hugging Face Storage не взимает плату за исходящий трафик (egress), что означает: чтение ваших данных на GPU в любом облаке обходится вам в ноль рублей. Это меняет правила игры, позволяя гибко выбирать лучшее железо без привязки к месту хранения данных.
01Новая архитектура: Хранение и вычисления разделены, но связаны
Раньше объектное хранилище было «узким горлышком» в мультиоблачных стратегиях. Объектные хранилища (S3, GCS, Azure Blob) привязаны к регионам и конкретным облачным провайдерам. Чтобы запустить инференс или обучение на GPU в другом дата-центре, вам приходилось либо держать копию данных в каждом облаке (что дорого и сложно поддерживать), либо платить за перенос данных между сетями. Большинство облаков взимают плату за исходящий трафик (egress) — например, около $0.09 за гигабайт в AWS — в тот момент, когда данные покидают их сеть. Если вы загружаете базовую модель на каждый узел инференса или итерируете датасет на кластере другого провайдера, счета за трафик могут стать огромными. В результате команды часто были вынуждены привязывать каждый запуск к тому вендору, где хранятся данные, оставляя остальную вычислительную мощность простаивающей.
Hugging Face Storage устраняет эту проблему на стороне чтения. Благодаря политике отсутствия сборов за egress и CDN, а также конкурентной цене хранения ($12-18 за ТБ в месяц против ~$23 за ТБ в AWS S3 плюс egress), одно и то же хранилище доступно из любого кластера. Чтение данных бесплатно независимо от того, где запущены GPU. Конечно, запись данных обратно все еще подчиняется обычным правилам облачного провайдера, но для большинства AI-задач доминируют именно операции чтения: потоковая передача датасетов на протяжении многих эпох или загрузка весов моделей на новые узлы обучения и инференса. Это позволяет командам перестать привязывать запуски к месту хранения данных и выбирать GPU исключительно по критерию доступности и цены.

02Как это работает технически: MOUNT и COPY
Теперь Hugging Face Storage является полноценным бэкендом в SkyPilot, наряду с S3, GCS, Azure и другими. Доступ к нему осуществляется через схему hf://. Это покрывает весь жизненный цикл: чтение модели и датасета из их репозиториев, запись чекпоинтов в Bucket во время обучения, публикация готовой модели обратно в репозиторий и загрузка ее на серверы инференса. Большинство команд уже хранят свои модели на Hub, поэтому шаг миграции не требуется, и не нужно создавать новые учетные записи хранения.
Существует два основных режима работы с данными в SkyPilot: MOUNT и COPY. Режим MOUNT использует бэкенд hf-mount от Hugging Face, который является FUSE-драйвером. Это означает, что Bucket или репозиторий появляются в системе как локальный путь, аналогично другим FUSE-монтированиям (таким как gcsfuse или rclone). Загрузка данных происходит на уровне файловой системы: когда ваш код вызывает операцию read(), драйвер извлекает только эти конкретные байты из бэкенда Xet. Таким образом, по сети передаются только те данные, к которым вы фактически обращаетесь. Кроме того, hf-mount поддерживает кэширование на диске, что позволяет повторным чтениям оставаться локальными. Для бэкенда hf режимы MOUNT и MOUNT_CACHED ведут себя одинаково, всегда сохраняя кэш.
Важным преимуществом ленивой загрузки (lazy reads) является то, что процесс может начать работу с большим файлом еще до того, как он полностью скачается. Это позволяет GPU начать обучение практически мгновенно, обрабатывая данные по мере их поступления, вместо того чтобы простаивать (и взимать плату) во время полной копии датасета или чекпоинта. Это особенно заметно на первой эпохе, когда кэш еще пуст. Альтернативный режим COPY использует библиотеку huggingface_hub для предварительной загрузки всех данных, не требуя специальных настроек, но лишен преимуществ потоковой обработки.
HF_TOKEN и передайте ее в запуск через --secret HF_TOKEN. Один токен работает, независимо от того, запущен ли job на AWS, GCP, Azure, Nebius, Lambda или вашем собственном Kubernetes-кластере.Пример конфигурации SkyPilot
Ниже приведен пример YAML-файла, который демонстрирует, как примонтировать модель для чтения и Bucket для записи чекпоинтов. Этот файл можно запускать на любой инфраструктуре, меняя только параметр --infra.
# qwen-sft.yaml. Запуск в любом месте: sky launch qwen-sft.yaml --infra aws|gcp|...
resources:
a
Источник: Hugging Face ↗
