Pular para o conteúdo principal

GPU sem servidor compute

info

Beta

Esse recurso está na versão beta.

Este artigo descreve a serverless GPU compute em Databricks e fornece casos de uso recomendados, orientação sobre como configurar a GPU compute recurso e limitações de recurso.

O que é serverless GPU compute?

GPU sem servidor compute faz parte da oferta sem servidor compute. A GPU sem servidor compute é especializada em cargas de trabalho personalizadas de aprendizagem profunda de um ou vários nós. O senhor pode usar a GPU serverless compute para treinar e ajustar modelos personalizados usando suas estruturas favoritas e obter eficiência, desempenho e qualidade de última geração.

GPU sem servidor compute inclui:

  • Uma experiência integrada no Notebook, Unity Catalog e MLflow : O senhor pode desenvolver seu código de forma interativa usando o Notebook.
  • GPU sem servidor compute suporta A10s .
  • Varreduras de hiperparâmetros: você pode realizar o ajuste fino da varredura de hiperparâmetros.
  • Suporte a vários nós: é possível executar cargas de trabalho de treinamento distribuídas.

O pacote pré-instalado no serverless GPU compute não substitui o Databricks Runtime ML. Embora haja um pacote comum, nem todas as dependências e biblioteca do Databricks Runtime ML são refletidas no ambiente do serverless GPU compute.

Casos de uso recomendados

Databricks recomenda a serverless GPU compute para qualquer caso de uso de treinamento de modelo que exija personalizações de treinamento e GPUs.

Por exemplo:

  • Ajuste fino do LLM
  • computador vision
  • Sistemas de recomendação
  • Aprendizagem por reforço
  • aprendizagem profunda baseada em previsão de séries temporais

Requisitos

  • Um workspace em us-west-2 ou us-east-1.

O que está instalado

A GPU sem servidor compute para Notebook usa versões de ambiente, que fornecem um cliente estável API para garantir a compatibilidade do aplicativo. Isso permite que a Databricks atualize o servidor de forma independente, oferecendo melhorias de desempenho, aprimoramentos de segurança e correções de bugs sem exigir nenhuma alteração de código nas cargas de trabalho.

GPU sem servidor compute usa a versão 3 do ambiente , além do pacote a seguir:

  • CUDA 12.4
  • torch 2.6.0
  • torchvision 0.21.0

Consulte a versão 3 do ambiente sem servidor para obter o pacote incluído na versão 3 do ambiente do sistema.

nota

Os ambientes básicos não são compatíveis com a GPU serverless compute. Para configurar o serverless GPU compute em seu ambiente, especifique as dependências diretamente no painel lateral Environments ou pip install.

Adicionar biblioteca ao ambiente

O senhor pode instalar uma biblioteca adicional no ambiente serverless GPU compute. Consulte Adicionar dependências ao Notebook.

nota

Adicionar dependências usando o painel Ambientes , conforme mostrado em Adicionar dependências ao Notebook, não é compatível com uma tarefa agendada do GPU compute do serverless.

Configurar serverless GPU compute

O senhor pode optar por usar uma GPU serverless compute do ambiente Notebook em seu workspace.

Depois que o senhor abrir o Notebook:

  1. Selecione o Ícone do ambiente. para abrir o painel lateral Ambiente .
  2. Selecione A10 no campo Acelerador .
  3. Selecione 3 como a versão do ambiente .
  4. Selecione Apply e, em seguida, confirme que deseja aplicar a GPU serverless compute ao ambiente do Notebook. Depois de se conectar a um recurso, o Notebook começa imediatamente a usar o compute disponível.
nota

A conexão com o site compute é encerrada automaticamente após 60 minutos de inatividade.

Criar e programar uma tarefa

As etapas a seguir mostram como criar e programar um trabalho para suas cargas de trabalho do serverless GPU compute. Para obter mais detalhes, consulte Criar e gerenciar tarefas agendadas do Notebook.

Após abrir o Caderno que deseja utilizar:

  1. Selecione o botão programar no canto superior direito.
  2. Selecione Adicionar programar .
  3. Job Preencha o formulário Novo programar com o nome do programa , programar e calcular .
  4. Selecione Criar .

Também é possível criar e programar tarefas a partir da interface do usuário de tarefas e pipeline . Consulte Criar uma nova tarefa para obter orientações passo a passo.

Treinamento distribuído

O senhor pode iniciar o treinamento distribuído em várias GPUs e/ou nós usando a GPU sem servidor Python API . Ele oferece uma interface simples e unificada para a execução de trabalhos com uma ou várias GPUs, lidando automaticamente com o provisionamento de GPUs, a configuração do ambiente e a distribuição da carga de trabalho nos bastidores. Se você estiver trabalhando com GPUs locais ou expandindo para todos os nós com GPUs remotas, serverless_gpu simplifica a execução distribuída, exigindo apenas alterações mínimas no código.

Por exemplo, o código abaixo usa serverless_gpu para distribuir a função hello_world para execução em 8 GPUs A10 remotas.

Python
# Import the distributed decorator
from serverless_gpu import distributed

# Decorate the function with @distributed and specify the number of GPUs, the GPU type, and whether or not the GPUs are remote
@distributed(gpus=8, gpu_type='A10', remote=True)
def hello_world(s: str) -> None:
print('hello_world ', s)

# Trigger the distributed execution of the hello_world function
hello_world.distributed(s='abc')

Depois de executar o código acima, os resultados e logs aparecem na seção Experiment (Experimento ) do seu site workspace.

Comece importando o Notebook inicial para começar a trabalhar com o API e, em seguida, explore os exemplos do Notebook para ver como ele é usado em cenários reais de treinamento distribuído.

Para obter detalhes completos, consulte a documentação da GPU sem servidor Python API .

Limitações

  • compute GPU sem servidor suporta apenas A10 ou similar compute.

  • O PrivateLink não é suportado. Armazenamento ou repositórios pip por trás do PrivateLink não são suportados.

  • A GPU sem servidor compute não é compatível com o espaço de trabalho do perfil de segurança compliance (como HIPAA ou PCT) . O processamento de dados regulamentados não é suportado no momento.

  • A GPU sem servidor compute é compatível apenas com ambientes interativos.

  • Tarefa agendada em GPU sem servidor compute:

    • Suportado apenas para uma única tarefa.
    • O comportamento de recuperação automática para versões incompatíveis do pacote associadas ao seu Notebook não é suportado.

Notebook exemplos

Abaixo estão vários exemplos de Notebook que demonstram como usar a GPU sem servidor compute para diferentes cenários.

Tarefa

Descrição

Grandes modelos de linguagem (LLMs)

Exemplos de ajuste fino de modelos de grandes linguagens, incluindo métodos eficientes em parâmetros, como adaptação de baixa classificação (LoRa) e abordagens de ajuste fino supervisionado.

computador vision

Exemplos de tarefas de visão computacional, incluindo detecção de objetos e classificação de imagens.

Sistemas de recomendação baseados em aprendizagem profunda

Exemplos para criar sistemas de recomendação usando abordagens modernas de aprendizagem profunda, como modelos de duas torres.

ML clássico

Exemplos de machine learning tarefa tradicional, incluindo XGBoost treinamento de modelos e previsão de séries temporais.

Treinamento distribuído em vários nós

Exemplos de dimensionamento de treinamento em várias GPUs e nós usando a GPU sem servidor API, incluindo varreduras de hiperparâmetros e ajuste fino distribuído.