O que é uma instância de computação do Azure Machine Learning?

Uma instância de computação do Azure Machine Learning é uma estação de trabalho gerenciada baseada em nuvem para cientistas de dados. Cada instância de computação tem apenas um proprietário, embora você possa compartilhar arquivos entre várias instâncias de computação.

As instâncias de computação facilitam a introdução ao desenvolvimento do Azure Machine Learning e fornecem recursos de gerenciamento e prontidão empresarial para administradores de TI.

Use uma instância de computação como seu ambiente de desenvolvimento totalmente configurado e gerenciado na nuvem para aprendizado de máquina. Eles também podem ser usados como um destino de computação para treinamento e inferência para fins de desenvolvimento e teste.

Para que a funcionalidade Jupyter da instância de computação funcione, verifique se a comunicação do soquete da Web não está desabilitada. Certifique-se de que a rede permite ligações de websocket a *.instances.azureml.net e *.instances.azureml.ms.

Importante

Os itens marcados (visualização) neste artigo estão atualmente em visualização pública. A versão de visualização é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Por que usar uma instância de computação?

Uma instância de computação é uma estação de trabalho totalmente gerenciada baseada em nuvem otimizada para seu ambiente de desenvolvimento de aprendizado de máquina. Proporciona os seguintes benefícios:

Principais benefícios Description
Produtividade Você pode criar e implantar modelos usando blocos de anotações integrados e as seguintes ferramentas no estúdio do Azure Machine Learning:
- Jupyter
- JupyterLab
- VS Code (pré-visualização)
A instância de computação é totalmente integrada ao espaço de trabalho e ao estúdio do Azure Machine Learning. Você pode compartilhar blocos de anotações e dados com outros cientistas de dados no espaço de trabalho.
Gerenciado & seguro Reduza a sua pegada de segurança e adicione conformidade com os requisitos de segurança empresariais. As instâncias de computação fornecem políticas de gerenciamento robustas e configurações de rede seguras, como:

- Autoprovisionamento a partir de modelos do Resource Manager ou SDK do Azure Machine Learning
- Controle de acesso baseado em função do Azure (Azure RBAC)
- Suporte de rede virtual
- Política do Azure para desativar o acesso SSH
- Política do Azure para impor a criação em uma rede virtual
- Desligamento automático / início automático com base no cronograma
- TLS 1.2 ativado
Pré-configurado para ML Economize tempo em tarefas de configuração com pacotes de ML pré-configurados e atualizados, estruturas de aprendizado profundo, drivers de GPU.
Totalmente personalizável O amplo suporte para tipos de VM do Azure, incluindo GPUs, e personalização persistente de baixo nível, como a instalação de pacotes e drivers, facilita os cenários avançados. Você também pode usar scripts de configuração para automatizar a personalização
  • Proteja sua instância de computação sem IP público.
  • A instância de computação também é um destino de computação de treinamento seguro semelhante aos clusters de computação, mas é um único nó.
  • Você mesmo pode criar uma instância de computação ou um administrador pode criar uma instância de computação em seu nome.
  • Você também pode usar um script de configuração para uma maneira automatizada de personalizar e configurar a instância de computação de acordo com suas necessidades.
  • Para economizar custos, crie uma programação para iniciar e parar automaticamente a instância de computação ou habilite o desligamento ocioso

Ferramentas e ambientes

A instância de computação do Azure Machine Learning permite criar, treinar e implantar modelos em uma experiência de bloco de anotações totalmente integrada em seu espaço de trabalho.

Você pode executar blocos de anotações do seu espaço de trabalho do Azure Machine Learning, Jupyter, JupyterLab ou Visual Studio Code. O VS Code Desktop pode ser configurado para acessar sua instância de computação. Ou use o VS Code para a Web, diretamente do navegador e sem quaisquer instalações ou dependências necessárias.

Recomendamos que você experimente o VS Code para a Web para aproveitar a fácil integração e o rico ambiente de desenvolvimento que ele oferece. O VS Code para a Web oferece muitos dos recursos do VS Code Desktop que você adora, incluindo pesquisa e realce de sintaxe durante a navegação e edição. Para obter mais informações sobre como usar o VS Code Desktop e o VS Code para a Web, consulte Iniciar o Visual Studio Code integrado ao Azure Machine Learning (visualização) e Trabalhar no VS Code remotamente conectado a uma instância de computação (visualização).

Você pode instalar pacotes e adicionar kernels à sua instância de computação.

As seguintes ferramentas e ambientes já estão instalados na instância de computação:

Ferramentas gerais e ambientes Detalhes
Controladores CUDA
cuDNN
NVIDIA
Blob FUSE
Biblioteca Intel MPI
CLI do Azure
Exemplos do Azure Machine Learning
Docker
Nginx
NCCL 2,0
Protobuf
R tools & ambientes Detalhes
Kernel R

Você pode adicionar RStudio ou Posit Workbench (anteriormente RStudio Workbench) ao criar a instância.

Ferramentas PYTHON & ambientes Detalhes
Anaconda Python
Jupyter e extensões
Jupyterlab e extensões
Azure Machine Learning SDK
para Python
a partir de PyPI
Inclui azure-ai-ml e muitos pacotes comuns azure extra. Para ver a lista completa,
Abra uma janela de terminal em sua instância de computação e execute
conda list -n azureml_py310_sdkv2 ^azure
Outros pacotes PyPI jupytext
tensorboard
nbconvert
notebook
Pillow
Pacotes Conda cython
numpy
ipykernel
scikit-learn
matplotlib
tqdm
joblib
nodejs
Pacotes de aprendizagem profunda PyTorch
TensorFlow
Keras
Horovod
MLFlow
pandas-ml
scrapbook
Pacotes ONNX keras2onnx
onnx
onnxconverter-common
skl2onnx
onnxmltools
Exemplos de Python do Azure Machine Learning

A instância de computação tem o Ubuntu como sistema operacional base.

Acesso a ficheiros

Blocos de anotações e scripts Python são armazenados na conta de armazenamento padrão do seu espaço de trabalho no compartilhamento de arquivos do Azure. Esses arquivos estão localizados no diretório "Arquivos de usuário". Esse armazenamento facilita o compartilhamento de blocos de anotações entre instâncias de computação. A conta de armazenamento também mantém seus blocos de anotações preservados com segurança quando você interrompe ou exclui uma instância de computação.

A conta de compartilhamento de arquivos do Azure do seu espaço de trabalho é montada como uma unidade na instância de computação. Esta unidade é o diretório de trabalho padrão para Jupyter, Jupyter Labs, RStudio e Posit Workbench. Isso significa que os blocos de anotações e outros arquivos criados no Jupyter, JupyterLab, VS Code for Web, RStudio ou Posit são armazenados automaticamente no compartilhamento de arquivos e ficam disponíveis para uso em outras instâncias de computação também.

Os arquivos no compartilhamento de arquivos são acessíveis a partir de todas as instâncias de computação no mesmo espaço de trabalho. Quaisquer alterações nesses arquivos na instância de computação serão mantidas de forma confiável de volta ao compartilhamento de arquivos.

Você também pode clonar os exemplos mais recentes do Azure Machine Learning para sua pasta no diretório de arquivos do usuário no compartilhamento de arquivos do espaço de trabalho.

A gravação de pequenos arquivos pode ser mais lenta em unidades de rede do que a gravação no próprio disco local da instância de computação. Se você estiver escrevendo muitos arquivos pequenos, tente usar um diretório diretamente na instância de computação, como um /tmp diretório. Observe que esses arquivos não serão acessíveis a partir de outras instâncias de computação.

Não armazene dados de preparação na partilha de ficheiros dos blocos de notas. Para obter informações sobre as várias opções para armazenar dados, consulte Acessar dados em um trabalho.

Pode utilizar o diretório /tmp na instância de computação para os dados temporários. No entanto, não escreva ficheiros grandes de dados no disco do SO da instância de computação. O disco do SO na instância de computação tem capacidade de 128 GB. Você também pode armazenar dados de treinamento temporários em disco temporário montado em /mnt. O tamanho do disco temporário baseia-se no tamanho da VM escolhido e pode armazenar quantidades de dados maiores se for escolhida uma VM de tamanho superior. Os pacotes de software que instalar serão guardados no disco do SO da instância de computação. Observação A criptografia de chave gerenciada pelo cliente não é suportada atualmente para o disco do sistema operacional. O disco do SO para a instância de computação é encriptado com chaves geridas pela Microsoft.

Criar

Siga as etapas em Criar recursos necessários para começar a criar uma instância de computação básica.

Para obter mais opções, consulte Criar uma nova instância de computação.

Como administrador, você pode criar uma instância de computação para outras pessoas no espaço de trabalho.

Você também pode usar um script de configuração para uma maneira automatizada de personalizar e configurar a instância de computação.

Outras maneiras de criar uma instância de computação:

Os núcleos dedicados por região por cota de família de VMs e a cota regional total, que se aplica à criação de instâncias de computação, são unificados e compartilhados com a cota de cluster de computação de treinamento do Azure Machine Learning. Parar a instância de computação não libera a cota para garantir que você possa reiniciar a instância de computação. Não pare a instância de computação através do terminal do sistema operacional fazendo um desligamento sudo.

A instância de computação vem com um disco de SO P10. O tipo de disco temporário depende do tamanho da VM escolhido. Atualmente, não é possível alterar o tipo de disco do SO.

Destino de computação

As instâncias de computação podem ser usadas como um destino de computação de treinamento semelhante aos clusters de treinamento de computação do Azure Machine Learning. Mas uma instância de computação tem apenas um único nó, enquanto um cluster de computação pode ter mais nós.

Uma instância de computação:

  • Tem uma fila de trabalhos.
  • Executa trabalhos com segurança em um ambiente de rede virtual, sem exigir que as empresas abram a porta SSH. O trabalho é executado em um ambiente conteinerizado e empacota suas dependências de modelo em um contêiner do Docker.
  • Pode executar vários pequenos trabalhos em paralelo. Um trabalho por vCPU pode ser executado em paralelo, enquanto o restante dos trabalhos está na fila.
  • Suporta trabalhos de treinamento distribuído multi-GPU de nó único

Você pode usar a instância de computação como um destino de implantação de inferência local para cenários de teste/depuração.

Gorjeta

A instância de computação tem um disco do SO de 120 GB. Se você ficar sem espaço em disco e entrar em um estado inutilizável, limpe pelo menos 5 GB de espaço em disco no disco do sistema operacional (montado em /) através do terminal de instância de computação removendo arquivos/pastas e, em seguida, faça sudo reboot. O disco temporário será liberado após a reinicialização; Você não precisa limpar espaço no disco temporário manualmente. Para acessar o terminal, vá para a página de listagem de computação ou página de detalhes da instância de computação e clique no link Terminal. Verifique o espaço em disco disponível ao executar df -h no terminal. Limpe, pelo menos, 5 GB de espaço antes de executar sudo reboot. Não pare ou reinicie a instância de computação através do Studio até que 5 GB de espaço em disco tenham sido limpos. Os encerramentos automáticos, incluindo o início ou a paragem agendados, bem como os encerramentos por inatividade, não funcionarão se o disco da IC estiver cheio.

Próximos passos