GPU sem servidor compute
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
ouus-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.
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.
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:
- Selecione o
para abrir o painel lateral Ambiente .
- Selecione A10 no campo Acelerador .
- Selecione 3 como a versão do ambiente .
- 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.
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:
- Selecione o botão programar no canto superior direito.
- Selecione Adicionar programar .
- Job Preencha o formulário Novo programar com o nome do programa , programar e calcular .
- 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.
# 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 |
---|---|
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. | |
Exemplos de tarefas de visão computacional, incluindo detecção de objetos e classificação de imagens. | |
Exemplos para criar sistemas de recomendação usando abordagens modernas de aprendizagem profunda, como modelos de duas torres. | |
Exemplos de machine learning tarefa tradicional, incluindo XGBoost treinamento de modelos e previsão de séries temporais. | |
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. |