Pular para o conteúdo principal

Migrar cargas de trabalho clássicas de GPU para serverless

Se você estiver migrando uma carga de trabalho de aprendizagem profunda existente de um cluster clássico do Databricks (com Databricks Runtime ML) para o serverless (com o AI Runtime), siga os passos seguintes:

  1. Substitua o código dependente do cluster. Remova todas as referências ao treinamento distribuído baseado em Spark (por exemplo, TorchDistributor) e substitua-as pelo decorador @distributed do Databricks AI Runtime SDK (databricks.air).
  2. Atualizar o carregamento de dados. Substituir caminhos diretos do DBFS por caminhos de volumes do Unity Catalog (/Volumes/...). Substituir operações locais do Spark DataFrame pelo Spark Connect. Para a transmissão de dados baseados em arquivos de volumes, use UCVolumeDataset de databricks.air.data. Consulte Carregar dados no AI Runtime.
  3. Configure seu ambiente. Algumas bibliotecas pré-instaladas do Databricks Runtime ML não estão disponíveis no AI Runtime. Configure um ambiente de GPU Serverless e instale os pacotes que sua carga de trabalho precisa com %pip install. Consulte Configurar seu ambiente.
  4. Atualize os caminhos de ponto de verificação. Mova pontos de verificação do DBFS ou armazenamento local para volumes do Unity Catalog (/Volumes/<catalog>/<schema>/<volume>/...). Para criação distribuída de pontos de verificação, use UCVolumeWriter e UCVolumeReader de databricks.air.data, que realizam o estágio de I/O por meio de NVMe local. Consulte Checkpoint with Distributed Checkpoint (DCP).
  5. Revise sua configuração do MLflow. No AI Runtime, a API .distributed() cria execuções do MLflow automaticamente. Para personalizar o experimento, defina-o usando um caminho absoluto. Para retomar execuções interrompidas, defina um nome de execução. Consulte O que o MLflow oferece.
  6. Teste interativamente primeiro. Valide sua carga de trabalho em um notebook interativo antes de programá-la como um job.