Перенесите классические рабочие нагрузки на GPU в бессерверную среду

Если вы перемещаете существующую рабочую нагрузку глубокого обучения из классического кластера Databricks (с машинным обучением среды выполнения Databricks) в бессерверный (с помощью среды выполнения ИИ), выполните следующие действия:

  1. Замените код, зависящий от кластера. Удалите все ссылки на распределенное обучение на основе Spark (например, TorchDistributor) и замените их декоратором @distributed из serverless_gpu.
  2. Обновите процесс загрузки данных. Замените прямые пути DBFS путями к томам каталога Unity (/Volumes/...). Замените локальные операции Кадра данных Spark на Spark Connect. Для потоковой передачи файловых данных из томов используйте UCVolumeDataset из serverless_gpu.data. См. Загрузка данных в среде выполнения ИИ.
  3. Настройте вашу среду. Некоторые предустановленные библиотеки Databricks Runtime ML недоступны в AI Runtime. Настройте бессерверную GPU-среду и установите пакеты, необходимые для вашей рабочей нагрузки, с помощью %pip install. См. статью "Настройка среды".
  4. Обновите пути контрольных точек. Перемещение контрольных точек из DBFS или локального хранилища в тома каталога Unity (/Volumes/<catalog>/<schema>/<volume>/...). Для распределённого создания контрольных точек используйте UCVolumeWriter и UCVolumeReader из serverless_gpu.data, которые выполняют промежуточную буферизацию операций ввода-вывода через локальный NVMe. См. Контрольный пункт с распределённым контрольным пунктом (DCP).
  5. Проверьте конфигурацию MLflow. В среде AI Runtime API .distributed() автоматически создает запуски MLflow. Чтобы настроить эксперимент, установите ему абсолютный путь. Чтобы возобновить прерванные запуски, установите имя запуска. Посмотрите, что предлагает MLflow для глубокого обучения.
  6. Сначала протестируйте интерактивный тест. Проверьте задачу в интерактивной записной книжке перед постановкой её в качестве задания.