Model Deployment
A implantação de modelos coloca um modelo treinado em produção para gerar previsões com dados novos. Abrange destinos na nuvem e na borda, exportação, lançamento e monitoramento.
A implementação de modelos é o processo de colocar um modelo de aprendizagem automática treinado em produção, onde as aplicações lhe enviam novos dados e agem com base nas suas previsões. Isso inclui escolher onde o modelo será executado, convertê-lo para um formato executável pelo ambiente de execução de destino, ligá-lo às entradas e saídas através de uma API ou aplicação, lançar novas versões com segurança e acompanhar o seu comportamento quando utilizadores reais passam a depender dele. Um modelo com bons resultados num notebook continua a ser apenas uma experiência até ser implementado; a implementação é a etapa das operações de aprendizagem automática (MLOps) em que a ciência de dados encontra restrições de engenharia de software, como latência, custo, disponibilidade e segurança.
Onde os modelos são implementados#
- Implementação na nuvem: o modelo é executado em servidores por trás de um endpoint REST ou gRPC, geralmente através de um sistema de disponibilização de modelos que agrupa pedidos em lotes e ajusta o número de réplicas à procura. É adequado para modelos grandes e tráfego variável, e cada pedido implica uma ida e volta pela rede.
- Implementação na borda: o modelo é executado no dispositivo que capta os dados, como um telemóvel, uma câmara, um robô ou um módulo NVIDIA Jetson. As entradas nunca saem do dispositivo, o que protege a privacidade, e o modelo continua a funcionar sem ligação à rede; no entanto, a memória e a energia limitadas geralmente exigem um modelo comprimido.
- Implementação sem servidor: a plataforma inicia instâncias a pedido e reduz a escala até zero quando estão inativas, trocando um atraso de arranque a frio no primeiro pedido pela vantagem de não pagar nada enquanto não chegam pedidos.
- Implementação em lote: uma tarefa agendada avalia um grande conjunto de dados de uma só vez, como recomendações de produtos noturnas, em que o volume processado é mais importante do que a velocidade de cada pedido.
A Ultralytics Platform implanta um modelo YOLO treinado em um endpoint dedicado em qualquer uma de 42 regiões, cada uma com seu próprio URL e monitoramento, e os endpoints com o tamanho de recurso padrão reduzem a zero quando ficam ociosos. A escolha do destino depende de algumas perguntas sobre a aplicação, que a lição da Ultralytics Academy Escolha um destino de implantação aborda em detalhes:
Preparar um modelo para produção#
Os frameworks de treinamento foram concebidos para serem flexíveis, por isso os modelos de produção são geralmente exportados para um formato executado eficientemente por um motor de inferência, como ONNX para portabilidade, TensorRT para GPUs NVIDIA, OpenVINO para hardware Intel ou LiteRT e Core ML para telemóveis. A quantização de modelos e a poda de modelos reduzem ainda mais o modelo quando o destino tem recursos limitados. O modelo exportado e o respetivo código de pré-processamento são então empacotados com dependências fixadas, normalmente num contentor Docker que funciona da mesma forma num portátil, num servidor ou num cluster Kubernetes. Exportar um detetor treinado e carregar o ficheiro exportado para uma verificação rápida antes do lançamento fica assim:
from ultralytics import YOLO
# Load a trained model (replace with your own best.pt)
model = YOLO("yolo26n.pt")
# Export to ONNX, a portable format that many inference engines run
path = model.export(format="onnx")
print(f"Deployable model: {path}")
# Smoke-test the exported file with the same API before shipping it
onnx_model = YOLO(path)
results = onnx_model("https://ultralytics.com/images/bus.jpg")
results[0].save(filename="bus_onnx.jpg")A chamada de exportação devolve o caminho do novo ficheiro yolo26n.onnx, e a imagem guardada confirma que o ficheiro exportado é carregado e produz deteções. As equipas também comparam a precisão e a velocidade do modelo exportado com as do modelo original num conjunto de validação, porque a conversão de formato e a menor precisão podem alterar ligeiramente as saídas.
Lançar novas versões de modelos#
Uma nova versão do modelo é armazenada num registo de modelos e lançada gradualmente, porque as métricas offline não abrangem todas as condições de produção. Na implementação em modo sombra, o novo modelo recebe uma cópia do tráfego em direto, enquanto o modelo atual continua a responder aos utilizadores; assim, é possível comparar os dois sem riscos. Em seguida, um lançamento canário encaminha uma pequena parte do tráfego real para a nova versão e aumenta essa parte apenas enquanto as taxas de erro, a latência e a qualidade das previsões se mantiverem boas; os testes A/B medem o efeito nos resultados do negócio. Manter a versão anterior pronta para implementação transforma a reversão numa alteração de configuração, em vez de numa reconstrução de emergência:
Implementação de modelos e termos relacionados#
- Treinamento de modelos: aprende os pesos do modelo a partir de um conjunto de dados. A implementação começa com os pesos já treinados.
- Disponibilização de modelos: a camada de execução que responde aos pedidos de previsão. É uma parte da implementação, que também inclui empacotamento, lançamento e monitorização.
- Latência de inferência: o tempo que o modelo implementado demora a calcular cada previsão individual; é um dos principais requisitos que uma implementação tem de cumprir.
Monitorização após a implementação#
Um modelo implementado degrada-se silenciosamente quando o mundo muda. A monitorização de modelos acompanha sinais operacionais, como latência, volume processado, taxas de erro e utilização do hardware, muitas vezes com ferramentas como o Prometheus e o Grafana, além das estatísticas das entradas e das previsões. Quando a monitorização assinala um problema, as equipas rotulam os novos casos de falha, voltam a treinar o modelo e submetem a nova versão ao mesmo processo de lançamento. As estatísticas das entradas dão o primeiro aviso: a deriva de dados, ou seja, uma alteração na distribuição das entradas, como uma câmara que foi colocada num novo ângulo ou a mudança para a iluminação de inverno, aparece nessas estatísticas dias ou semanas antes de chegarem os rótulos de referência dos dados de produção necessários para medir a precisão.










