O Servidor de Inferência NVIDIA Triton® (conhecido anteriormente como Servidor de Inferência NVIDIA TensorRT) simplifica a implementação de modelos de AI em escala na produção. Ele é uma inferência de código aberto que disponibiliza softwares e oferece às equipes a possibilidade de implementar modelos de AI treinados a partir de qualquer framework (TensorFlow, TensorRT, PyTorch, ONNX Runtime ou um framework personalizado), do armazenamento local, do Google Cloud Platform ou do AWS S3 em qualquer infraestrutura baseada em GPU ou CPU (cloud, data center ou edge).

Guia do Usuário Triton      Contêiner Triton da NGC     Triton no GitHub


Compatibilidade com Vários Frameworks

O Servidor de Inferência Triton é compatível com todos os principais frameworks, como TensorFlow, TensorRT, PyTorch, ONNX Runtime e até back-end de framework personalizado. Ele oferece aos pesquisadores de AI e cientistas de dados a liberdade de escolher o framework certo.

Inferência de Alto Desempenho

Ele executa modelos simultaneamente em GPUs que maximizam o uso, é compatível com inferências baseadas em CPU, oferece recursos avançados como conjunto de modelos e inferência de streaming. Além disso, ajuda os desenvolvedores a disponibilizar os modelos com rapidez.

Desenvolvido para Equipes de IT e DevOps

Disponível como um contêiner Docker, ele se integra ao Kubernetes para orquestração e dimensionamento, faz parte do Kubeflow e exporta métricas do Prometheus para monitoramento. Também ajuda as equipes de IT/DevOps a otimizar a implementação de modelos na produção.


Implementação de Modelos Simplificada

O Servidor de Inferência NVIDIA Triton pode carregar modelos do armazenamento local, do Google Cloud Platform ou do AWS S3. Como os modelos são sempre treinados novamente com novos dados, os desenvolvedores podem atualizá-los facilmente sem reiniciar o servidor de inferência e sem interromper o software.

O Servidor de Inferência Triton executa vários modelos de frameworks iguais ou diferentes ao mesmo tempo em uma única GPU com os CUDA Streams. Em um servidor com várias GPUs, ele cria uma instância de cada modelo em cada GPU automaticamente. Tudo isso aumenta o uso da GPU sem que o usuário precise modificar o código.

O servidor de inferência oferece inferência de baixa latência em tempo real e inferência em lote para maximizar o uso da GPU/CPU. Ele também tem compatibilidade integrada a dados de streaming de áudio para inferência de streaming.

Os usuários podem usar a compatibilidade com a memória compartilhada para garantir um desempenho melhor. Os dados de entrada e saída que precisam passar pelo Servidor de Inferência Triton são armazenados na memória compartilhada do sistema/CUDA. Assim, a sobrecarga do HTTP/gRPC é reduzida, aumentando o desempenho geral.

Ele também é compatível com o conjunto de modelos. O conjunto é um pipeline de um ou mais modelos e a conexão de milhares de tensores de entrada e saída entre esses modelos (pode ser usado com um back-end personalizado) para implementar uma sequência de modelos para o pré/pós-processamento ou para casos de uso como AI conversacional, que exigem vários modelos para realizar a inferência de ponta a ponta.


Desenvolvido para Escalabilidade

Disponível também como um contêiner Docker, o Servidor de Inferência Triton se integra ao Kubernetes para orquestração, métricas e dimensionamento automático. Ele também se integra ao Kubeflow e aos pipelines do Kubeflow, criando um workflow de AI de ponta a ponta. O Servidor de Inferência Triton exporta métricas do Prometheus para monitorar o uso da GPU, a latência, o uso da memória e a taxa de transferência da inferência. Ele é compatível com a interface HTTP/gRPC padrão, conectando-se a outros softwares, como balanceadores de carga. Além disso, ele pode ser adaptado facilmente a qualquer número de servidores para processar o número cada vez maior de cargas de inferência de qualquer modelo. O dimensionamento de pods do Kubernetes pode usar as métricas expostas para ampliar ou reduzir as instâncias do Servidor de Inferência Triton a fim de atender à demanda variável de inferências.

O Servidor de Inferência Triton pode executar dezenas ou centenas de modelos com a API de controle de modelos. Os modelos podem ser carregados e descarregados explicitamente do servidor de inferência de acordo com as modificações realizadas na configuração do controle de modelos para se ajustar à memória da GPU ou CPU.

O Servidor de Inferência Triton também pode ser usado para executar modelos em CPUs. A compatibilidade com um cluster heterogêneo de GPUs e CPUs ajuda na padronização da inferência nas plataformas e na adaptação dinâmica a qualquer CPU ou GPU para processar picos de carga.

O Servidor de Inferência Triton pode ser usado para implementar modelos no cloud, no data center local ou no edge. Seu código aberto também pode ser personalizado para ambientes que não sejam de contêineres.


Lançamento do Triton 2.3


Confira os recursos:

  • Novos protocolos comunitários padrão do gRPC e do HTTP/REST do KFServing
    • O Triton é o primeiro servidor de inferência que disponibiliza software para adotar os novos protocolos v2 comunitários padrão de plano de dados do gRPC e do HTTP/REST. Agora, com essa nova integração, os usuários podem implementar facilmente inferências sem servidor com o Triton no Kubernetes, como inferências do BERT com o Triton no KFServing.
  • Compatibilidade com as versões mais atuais dos back-ends do framework
    • TensorRT 7.1, TensorFlow 2.2, PyTorch 1.6, ONNX Runtime 1.4
  • Back-end Personalizado em Python
    • Com o novo back-end personalizado em Python, é possível executar qualquer código arbitrário em Python (exemplos de casos de uso: pré/pós-processamento) no Triton
  • Compatibilidade com a A100 e o MIG
    • As inferências com o Triton na GPU A100 oferecem um desempenho superior ao desempenho obtido com a V100. Os usuários também podem usar o Triton para oferecer inferências em instâncias individuais da MIG com isolamento de desempenho e falhas.
  • Disponibilização Individual de Inferências
    • No modo individual, o Triton pode executar um modelo quando o volume de dados é suficiente, mas nem todos são recebidos. Disponível para os back-ends personalizados em C/C++, ele é útil para casos de uso como reconhecimento e síntese de fala.
  • Análise de Modelos do Triton: conjunto de ferramentas para caracterizar o desempenho dos modelos e o espaço de memória a fim de garantir uma disponibilização eficiente.
    • O perf_client do Triton, agora chamado de perf_analyzer, ajuda a caracterizar a taxa de transferência e a latência de um modelo para vários tamanhos de lote e valores de solicitações simultâneas.
    • Um novo recurso de análise de memória ajuda a caracterizar o tamanho da memória de um modelo para vários tamanhos de lote e valores de solicitações simultâneas.
  • Integração ao Azure Machine Learning
    • Agora, os usuários do Azure Machine Learning podem usar o Triton para disponibilizar seus modelos. Leia esta publicação da Microsoft para saber mais sobre a integração e como usar o Triton no Azure Machine Learning.
  • Integração ao DeepStream 5.0
    • O Triton apresenta integração nativa ao DeepStream 5.0, sendo compatível com vários frameworks de deep learning para a análise de streaming de vários sensores baseada em AI.

Leia a publicação para saber mais sobre os recursos do 2.3.

Baixe o contêiner 2.3 do NGC, e acesse o código aberto no GitHub.



Recursos

Documentação

NGC

GitHub



Comece a usar o Servidor de Inferência NVIDIA Triton agora com o Guia de Início Rápido.


Guia do Usuário do Triton