🎯 Проекты 2 мин чтения

Delta Weight Sync в TRL: синхронизация триллионных параметров через Hub Bucket

Простым языком

Когда обучаете огромную модель на нескольких GPU-кластерах, каждый кластер обычно должен получить полную копию всех весов — для триллионной модели это терабайты данных. Delta Weight Sync решает это так: кластеры обмениваются не полными весами, а только тем, что изменилось за последний шаг обучения. Эти «дельты» складываются в облачное хранилище (Hub Bucket), и любой кластер может подтянуть только изменения. Это как git: вы не скачиваете весь репозиторий заново при каждом коммите — вы тянете только diff.

Что нового

  • Передача дельт весов вместо полных чекпоинтов — объём трафика снижается в 40–200 раз
  • Hub Bucket как асинхронное промежуточное хранилище — воркеры не должны быть онлайн одновременно
  • Интеграция в TRL — метод доступен через стандартный API библиотеки без кастомной инфраструктуры
  • Масштабирование до триллиона параметров на стандартных кластерах без InfiniBand

Вердикт

Применять для распределенного обучения больших моделей (>100B параметров), когда нет выделенного быстрого интерконнекта между кластерами. Не подходит для сценариев с частой сменой архитектуры или когда нужна строгая синхронность весов на каждом шаге.

Delta Weight Sync передаёт 0.5–2.5% от объёма полного чекпоинта за счёт синхронизации только дельт весов через объектное хранилище — паттерн для распределённого обучения триллионных моделей без InfiniBand.