Instalar pré-requisitos e NVIDIA Triton Inference Server
Nesta seção, acessamos nossa máquina virtual remotamente para atualizar os pacotes atualmente instalados. Também instalamos um ambiente de desenvolvimento Python e o configuramos com o software de pré-requisito para permitir a execução do tempo de execução do Open Neural Network Exchange (ONNX). Para satisfazer o NVIDIA Triton Inference Server, puxamos um contêiner com uma instalação completa das ferramentas para nos permitir executar uma carga de trabalho de inferência em nossa máquina virtual.
Instalar pré-requisitos e NVIDIA Triton Inference Server
Abra o emulador de terminal de sua escolha. Para ilustrar, estamos usando o Terminal do Windows, pois ele permite que várias janelas sejam conectadas simultaneamente à máquina virtual. Usamos uma janela para iniciar o Triton Server, uma janela para executar um script Python e outra para copiar imagens para um diretório para processamento através da CLI. Com o Terminal do Windows, você também pode escolher entre experiência de CLI, PowerShell, Prompt de Comando, Ubuntu-18.04 (se o WSL-2 estiver instalado) ou Azure Cloud Shell.
Copie o nome de usuário usado para configurar a máquina virtual no estágio anterior e execute o seguinte comando:
ssh <username>@<your VM IP address>
Isso solicita a senha que você salvou anteriormente no editor de texto. Copie esse valor e clique com o botão direito do mouse na linha de comando para colar. Se estiver a iniciar sessão pela primeira vez, verá a seguinte mensagem:
Agora vamos carregar em alguns pacotes que nosso script Python precisa para ser executado corretamente. Na linha de comando, digite:
sudo apt update sudo apt install -y python3-pip python3-dev nano wget
Antes de instalar os pacotes Python necessários, queremos adicionar
/home/\<your username\>/.local/bin
ao PATH executando as seguintes etapas na CLI:sudo nano ~/.bashrc
Seta para a parte inferior deste arquivo no editor e adicione a seguinte linha:
export PATH=/home/<your username>/.local/bin:$PATH
Prima Ctrl + O e prima Enter para guardar o ficheiro e, em seguida, prima Ctrl + X para sair. Na linha de comando, execute:
source ~/.bashrc
Este comando recarrega a configuração para o servidor incluir
.local/bin
no PATH.Agora que carregamos os requisitos do pacote Ubuntu e adicionamos o diretório ao PATH, vamos instalar os pacotes Python necessários. Copie cada linha individualmente para executar na janela do terminal.
python3 -m pip install --upgrade pip wheel setuptools python3 -m pip install numpy>=1.19.0 opencv-contrib-python-headless tritonclient geventhttpclient python3 -m pip install torch torchvision pandas tqdm PyYAML scipy seaborn requests pybind11 pytest protobuf objdict onnxruntime
Se você estiver usando uma VM compatível com GPU da Nvidia, poderá usar onnxruntime-gpu em vez de onnxruntime para aproveitar a aceleração CUDA/cuDNN.
Para executar o contêiner Triton Server da Nvidia, precisamos de um mecanismo de contêiner. A Microsoft tem uma distribuição desse tempo de execução de contêiner, que pode ser instalada usando os seguintes comandos:
wget https://packages.microsoft.com/config/ubuntu/18.04/multiarch/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb
Agora podemos instalar o Moby:
sudo apt update sudo apt install -y moby-engine sudo apt update
Agora, estamos prontos para retirar o contêiner para o Triton Server do repositório NVIDIA NGC. Você também pode puxar o contêiner durante o comando 'docker run' quando chegarmos a essa etapa, mas para simplificar, fazemos o pull agora. No emulador de terminal, execute:
sudo docker pull nvcr.io/nvidia/tritonserver:20.11-py3
Esse processo leva algum tempo para baixar as camadas de contêiner e extraí-las.
Agora estamos prontos para copiar o
demo
diretório para a máquina virtual (VM). Faça o download do arquivo demo.zip do repositório. Descomprima o ficheiro localmente no seu PC. Abra uma janela de prompt de comando, no utilitário, ou abra outra janela no Terminal do Windows. Dependendo de onde você descompactou os arquivos, execute o seguinte comando na CLI:scp -r <path to unzipped>/demo <your username>@<x.x.x.x vm IP address>:/home/<your username>/
Depois de termos esses arquivos copiados para a máquina virtual, vamos voltar para a janela do terminal conectado à máquina virtual e definir as permissões para esse diretório. Na CLI, digite:
sudo chmod -R 777 demo