Galeria de Modelos: Como Usar Notebooks JupyterLab para Simplificar a Implantação e o Gerenciamento de Modelos

Este é o segundo de seis artigos em uma série de blogs que oferece um guia prático para o VMware Private AI Foundation com NVIDIA.
Visão Geral
Este blog fornece um guia abrangente para usar o JupyterLab como uma interface poderosa para baixar Large Language Models (LLMs) do NVIDIA NIM™ (NVIDIA Inference Microservice) e integrá-los a um registro Harbor local. Ao estabelecer um repositório local para esses modelos de IA sofisticados, as organizações podem obter inúmeros benefícios, incluindo segurança e privacidade aprimoradas, ciclos de desenvolvimento acelerados e utilização otimizada de recursos.
A decisão de hospedar LLMs em um registro Harbor local oferece vantagens estratégicas significativas para empresas, especialmente aquelas que lidam com dados sensíveis ou operam em ambientes com requisitos rigorosos de conformidade regulatória:
-
Segurança e Privacidade Aprimoradas: Embora os serviços de LLM baseados em cloud pública sejam convenientes, eles introduzem riscos inerentes relacionados à privacidade dos dados e à propriedade intelectual. Ao baixar LLMs para uma instância Harbor local, as organizações mantêm controle total sobre seus modelos e os dados que processam. Isso reduz significativamente a superfície de ataque e mitiga preocupações sobre exfiltração de dados, acesso não autorizado, downloads de código malicioso e violações de conformidade. Em setores como saúde, finanças ou defesa, onde a soberania dos dados é primordial, a implantação local de LLM é frequentemente um requisito inegociável.
-
Latência Reduzida e Desempenho Aprimorado: Acessar LLMs de um registro Harbor local reduz a latência da rede ao recuperar modelos de servidores cloud remotos, melhorando assim o desempenho. Isso resulta em tempos de inferência significativamente mais rápidos, especialmente para aplicações de alto throughput ou cenários de processamento em tempo real. Os desenvolvedores podem experimentar um fluxo de trabalho mais responsivo e eficiente, levando a uma iteração e implantação mais rápidas de soluções baseadas em IA.
-
Capacidade Offline e Ambientes Air-Gapped: Para organizações que operam em ambientes air-gapped ou aquelas com conectividade de internet limitada ou não confiável, a implantação de um LLM local é essencial. Uma vez baixados para o Harbor, esses modelos podem ser acessados e utilizados sem uma conexão com a internet, garantindo a operação contínua de aplicações de IA mesmo em redes isoladas. Isso é crucial para infraestruturas críticas, aplicações governamentais ou implantações remotas.
-
Controle de Versão e Reprodutibilidade: O Harbor oferece controle de versão robusto, permitindo que as organizações gerenciem efetivamente múltiplas iterações de seus LLMs. Isso garante que versões específicas de modelos possam ser facilmente identificadas, implantadas e revertidas, se necessário. Esse nível de controle é vital para manter a reprodutibilidade no desenvolvimento de IA e garantir a consistência em várias implantações.
-
Customização e Fine-Tuning: Embora o download inicial do NVIDIA NIM forneça modelos pré-treinados, hospedá-los localmente no Harbor facilita a customização e o fine-tuning. Cientistas de dados e engenheiros de ML podem acessar esses modelos prontamente, aplicar seus conjuntos de dados proprietários para fine-tuning e, em seguida, armazenar as versões customizadas de volta no Harbor. Isso permite a criação de LLMs altamente especializados, adaptados às necessidades específicas de negócios e expertise de domínio.
-
Governança e Conformidade de Modelos Simplificadas: A centralização de LLMs no Harbor otimiza os esforços de governança e conformidade de modelos. As organizações podem implementar controles de acesso, trilhas de auditoria e aplicação de políticas diretamente em seu registro local, garantindo a adesão às diretrizes internas e regulamentações externas. Isso simplifica a demonstração de conformidade para auditores e stakeholders.
-
Integração com Workflows MLOps Existentes: O Harbor se integra perfeitamente com ferramentas e plataformas populares de Machine Learning Operations (MLOps). Ao ter LLMs prontamente disponíveis em um registro local, as organizações podem incorporá-los facilmente em seus pipelines automatizados de treinamento, implantação e monitoramento de modelos, promovendo assim um ciclo de vida de IA mais eficiente e otimizado.
Em essência, a utilização do JupyterLab para baixar LLMs do NVIDIA NIM para o Harbor transforma esses poderosos modelos de IA em ativos gerenciados, seguros e altamente disponíveis dentro da infraestrutura interna de uma organização. Essa mudança estratégica permite que as empresas aproveitem totalmente o potencial dos large language models, mantendo o controle, otimizando recursos e garantindo a conformidade. As seções a seguir descrevem o processo passo a passo para alcançar essa integração.
Requisitos
- VMware Cloud Foundation 9.0.
- VMware Private AI Foundation configurado.
- Harbor implantado e o proxy cache NVIDIA configurado.
- Uma API key pessoal para NVIDIA foi gerada. Clique aqui para saber como gerar uma chave.
Implantar uma AI Workstation
Em VCF Automation, Build & Deploy, Catalog, implante uma AI Workstation com a menor GPU (não necessária para baixar modelos) e o maior tamanho de disco de dados para modelos grandes. As métricas DCGM e a autenticação do JupyterLab são opcionais.
Uma vez implantado, acesse o DLVM (Deep Learning VM) via SSH. Os detalhes do SSH podem ser encontrados na visão geral da implantação.
Usando JupyterLab Notebooks
Instale o JupyterLab usando Conda. O DLVM inclui Conda e fornece templates para implantar módulos PyTorch e TensorFlow.
Atualize o Conda:
conda update -q -n base -c conda-forge conda
Instale o PyTorch com JupyterLab:
conda env update -n jupyter --file /home/vmware/conda_envs/pytorch2.3.0_py3.12.yml
Defina o proprietário do diretório de dados:
sudo chown -R vmware /opt/data
Inicie o JupyterLab:
jupyter lab --ip=0.0.0.0 --notebook-dir=/opt/data --no-browser --port=8888 --NotebookApp.token='' &
Antes de acessar o JupyterLab a partir de um navegador, a porta deve ser aberta na Automation Services Network. Dentro da seção Build & Deploy, clique em Network em Services, então selecione a aba VM Load Balancers e o nome da implantação que você criou recentemente.
Nota: O nome do vm-service pode ser referenciado pelo identificador único no nome da aba Virtual Machines na página Instances.
Ao lado do vm-service, clique no botão de reticências e clique em Edit. Por padrão, o JupyterLab usa a porta 8888. Para os campos Name, Port e Target, digite 8888 e clique no botão Add. Em seguida, Salvar.
Acessando o JupyterLab
Um JupyterLab notebook é um ambiente computacional interativo baseado na web para criar e compartilhar documentos com código vivo, equações, visualizações e texto, integral à ciência de dados, computação científica e machine learning. Seus componentes centrais incluem:
- Documento Notebook (.ipynb file): Um arquivo JSON que armazena células, metadados (ex: kernel, linguagem) e saída incorporada, servindo como um registro autocontido.
- Células: Blocos individuais com propósitos específicos:
- Code Cells: Para escrever e executar código via kernel do notebook. Possuem uma área de entrada e uma área de saída para resultados (texto, erros, gráficos). A execução é sequencial; uma célula em execução indica que o kernel está ocupado.
- Markdown Cells: Para texto narrativo, formatado com GitHub-flavored Markdown.
- Kernel: Um processo em segundo plano que executa código, específico da linguagem (ex: ipykernel para Python, ou Bash), mantendo o estado de execução (variáveis, funções) e comunicando-se com o JupyterLab via WebSocket.
- Interface do Usuário (JupyterLab): Uma interface web flexível e extensível que combina notebooks com ferramentas como navegadores de arquivos, terminais e editores de texto em um ambiente com abas, suportando extensões.
Essa estrutura permite um workflow iterativo e exploratório, oferecendo reprodutibilidade, exploração interativa, comunicação eficaz e controle de versão. Em essência, um JupyterLab notebook é um documento dinâmico alimentado por um kernel de backend, encapsulando uma sessão interativa para análise de dados e computação científica.
Abra um navegador e conecte-se à sua instância JupyterLab, http://<dlvm-ip>:8888
Antes de baixar e executar o notebook, precisamos instalar o Bash. Clique na caixa do terminal:
pip install bash_kernel python -m bash_kernel.install
Obtenha o notebook para baixar containers e modelos NIM.
wget https://raw.githubusercontent.com/vcf-asa-team/asa-vpaif-n/refs/heads/main/workshop/notebooks/nim-models-download.ipynb
Atualize seu navegador, e você deverá ver um novo notebook à esquerda e Bash no Launcher. Abra o notebook nim-models-download clicando duas vezes.
A primeira célula será usada para definir as variáveis em todo o notebook. Atualize os parâmetros necessários para baixar o container e o Modelo NIM.
image_name: Nome do modelo NIM para baixar do NGC.harbor: O FQDN da sua instância Harbor.harbor_login: Conta Harbor a ser usada para enviar containers e modelos.harbor_pwd: Senha da conta Harbor.uri: Caminho para o container NIM a ser baixado, incluindo o Harbor Proxy Cache criado no blog anterior.NGC_API_KEY: Sua chave pessoal NGC. Clique aqui para saber como gerar uma chave.resource_path: Caminho para baixar os modelos.
Uma vez atualizado, clique no botão na seção do menu ou pressione Shift+Enter.
Em seguida, clique na seção de código e execute-a para recuperar o certificado do Harbor. Depois, siga a seção de código para baixar o container do NGC.
Uma vez que o container tenha terminado de baixar, execute a próxima seção de código para listar os perfis de modelo, que mostrarão os modelos disponíveis, classificados de acordo com sua compatibilidade com seu sistema. Neste exemplo, selecionaremos o perfil genérico vllm-bf16-tp1, que pode ser executado na maioria das GPUs NVIDIA.
Destaque o ID do perfil, copie e cole-o na próxima seção de código. Certifique-se de que o profile_id foi atualizado de acordo com sua seleção anterior. Com base no perfil selecionado, atualize o profile_name a ser usado ao fazer o upload do modelo para o Harbor.
Execute o seguinte comando para baixar o modelo para o DLVM. Dependendo do modelo que você está baixando, o tempo pode variar.
Use o Docker para autenticar o Harbor:
Faça o upload do modelo para o Harbor:
A saída fornece o comando pais para puxar o modelo para seu blueprint ou scripts do VCF Automation.
Exemplo do comando pais para puxar o modelo do Harbor:
pais models pull --modelstore <harbor-fqdn>/model-store --modelName llama-3.2-11b-vision-instruct/vlm-fp16-tp1 -t v1
Repita este processo para baixar modelos adicionais da NVIDIA, modificando o nome do modelo e o nome do container na primeira etapa do Jupyter notebook.
Conclusão
Este blog forneceu um guia abrangente para alavancar os JupyterLab notebooks para a implantação e gerenciamento contínuos de LLMs NVIDIA NIM dentro de um registro Harbor local. Ao adotar essa abordagem estratégica, as organizações podem reforçar significativamente a segurança e a privacidade, otimizar a utilização de recursos, reduzir a latência e alcançar economias substanciais de custos. A capacidade de operar em ambientes air-gapped, juntamente com um robusto controle de versão e governança de modelos simplificada, capacita as empresas a manter controle total sobre seus ativos de IA. Além disso, a hospedagem local facilita a customização e o fine-tuning cruciais, permitindo que as empresas adaptem os LLMs às suas necessidades específicas. Essa integração transforma poderosos modelos de IA em ativos seguros, gerenciados e altamente disponíveis dentro da infraestrutura de uma organização, permitindo que as empresas realizem plenamente o potencial dos large language models, garantindo conformidade e eficiência operacional.
Referências
Para leitura adicional, consulte os recursos abaixo.
- Visite o site NVIDIA Build
- Formulário de Solicitação de Interesse
- Página do VMware Private AI Foundation
- NVIDIA NIM para Large Language Models (LLMs)
- Visite o Catálogo NVIDIA NGC
- Descubra mais no Blog VMware Cloud Foundation (VCF)
- Assine para receber as últimas publicações em seu e-mail.
- Digite seu e-mail…
- Assinar
Precisa de ajuda com suas soluções de TI?
A VirtuAllIT Solutions oferece consultoria especializada em virtualização, cloud computing e infraestrutura tecnológica.

