Otimize o desempenho da IA com baixa latência de inferência. Aprenda os principais fatores, aplicações no mundo real e técnicas para melhorar as respostas em tempo real.
A latência de inferência é o tempo que decorre entre um modelo de modelo de aprendizagem automática (ML) que recebe um input e produzir um resultado correspondente. Esta métrica, normalmente medida em milissegundos (ms), é um fator definitivo na capacidade de resposta dos sistemas de sistemas de inteligência artificial (IA). Para os programadores e engenheiros que trabalham em projectos de projectos de visão computacional (CV), minimizar a a latência é muitas vezes tão crítica como a maximização da precisão, particularmente quando se implementam aplicações que interagem com humanos ou maquinaria física. A alta latência resulta em desempenho lento, enquanto que a baixa latência cria uma experiência de utilizador perfeita e permite uma tomada de decisão imediata, um conceito fundamental para os sistemas sistemas inteligentes modernos.
No domínio da implementação de modelos, a velocidade a que um que um sistema processa os dados determina a sua viabilidade para tarefas específicas. A baixa latência de inferência é a pedra angular da inferência em tempo real, onde as previsões devem previsões devem ocorrer dentro de um orçamento de tempo rigoroso para serem acionáveis. Por exemplo, um atraso de algumas centenas de milissegundos pode ser aceitável para um sistema de recomendação num num site de compras, mas pode ser catastrófico para sistemas críticos de segurança. Compreender os requisitos específicos requisitos de latência específicos de um projeto no início do ciclo de desenvolvimento permite às equipas selecionar arquitecturas de modelos e configurações de hardware adequadas para garantir a fiabilidade.
Vários componentes variáveis contribuem para o tempo total necessário para uma única passagem de inferência:
O impacto prático da latência da inferência é melhor compreendido através de casos de utilização concretos em que a velocidade não é negociável.
É crucial diferenciar "latência" de "taxa de transferência", uma vez que estão frequentemente relacionados de forma inversa objetivos de otimização.
Este compromisso entre latência e taxa de transferência exige que os programadores ajustem os seus pipelines de inferência de acordo com as necessidades específicas do ambiente de implantação.
Pode avaliar o desempenho dos modelos Ultralytics utilizando o modo de benchmark integrado. Esta ferramenta fornece métricas detalhadas métricas detalhadas sobre a velocidade de inferência em diferentes formatos, como ONNX ou TorchScript.
from ultralytics import YOLO
# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")
# Benchmark the model on CPU to measure latency
# Results will display inference time per image in milliseconds
model.benchmark(data="coco8.yaml", imgsz=640, device="cpu")
Para obter a menor latência possível, os programadores utilizam frequentemente um motor de inferência adequado ao seu hardware. Por exemplo, a implantação de um modelo em um dispositivo NVIDIA Jetson usando otimizaçãoTensorRT pode produzir acelerações significativas em comparação com a execução do PyTorch bruto. Da mesma forma, a utilização de Intel OpenVINO pode acelerar o desempenho em arquiteturas CPU padrão. Estas ferramentas optimizam o gráfico computacional, fundem camadas e gerem a memória de forma mais memória com mais eficiência do que as estruturas de treinamento padrão.