Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Dosagem contínua

Saiba como o processamento contínuo em lotes otimiza GPU e reduz a latência. Descubra como usar Ultralytics para maximizar a eficiência em tarefas de ML de produção.

O processamento contínuo em lotes é uma técnica avançada de otimização de programação e inferência usada em aprendizado de máquina (ML) para maximizar a utilização do hardware e o rendimento. No processamento estático tradicional em lotes, um mecanismo de inferência aguarda um número predeterminado de solicitações para acumular antes de processá-las simultaneamente. Isso muitas vezes leva a ineficiências, pois o sistema precisa aguardar a conclusão da solicitação de execução mais longa no lote antes de liberar recursos. O processamento contínuo em lote, também conhecido como processamento dinâmico ou em nível de iteração, resolve isso injetando novas solicitações no lote de computação assim que uma solicitação ativa é concluída, reduzindo significativamente o tempo ocioso nas GPUs e melhorando a eficiência geral.

Distinguir conceitos relacionados

Para entender melhor como os dados são processados durante a implementação do modelo, é útil diferenciar o processamento contínuo em lotes de outros termos relacionados no glossário:

  • Tamanho do lote: Refere-se ao número fixo de amostras processadas simultaneamente durante o treino ou inferência. Os fluxos de trabalho de processamento em lote tradicionais dependem de tamanhos estáticos, enquanto o processamento em lote contínuo permite que o tamanho efetivo do lote flutue dinamicamente com base no tráfego recebido.
  • Inferência em tempo real: Este conceito concentra-se em minimizar a latência da inferência para previsões imediatas, processando entradas únicas à medida que chegam. O processamento contínuo em lote preenche a lacuna entre o processamento estático em lote de alto rendimento e a inferência em tempo real de baixa latência, mantendo um alto rendimento sem forçar as solicitações rápidas a esperar pelas mais lentas .

Aplicações no Mundo Real

O processamento contínuo por lotes é fundamental para sistemas de produção que lidam com grandes volumes de solicitações imprevisíveis. Aqui estão dois exemplos concretos da sua aplicação:

  1. Geração de texto de alto rendimento: ao servir modelos de linguagem grandes (LLMs), a geração de respostas para diferentes utilizadores leva tempos variados, dependendo do comprimento da saída. Estruturas que aproveitam o processamento contínuo em lote — como o vLLM no Ray Serve— podem transmitir continuamente tokens recém-gerados e trocar imediatamente conversas concluídas por novos prompts. Esse método, originalmente popularizado por pesquisas sobre programação em nível de iteração, melhora drasticamente o rendimento da geração de texto.
  2. Análise de vídeo assíncrona: Em tarefas de compreensão de vídeo, como rastreamento de veículos pela rede de câmaras de trânsito de uma cidade, os quadros chegam em intervalos diferentes. O processamento contínuo em lote permite que os modelos de rastreamento de objetos processem dinamicamente os quadros de vídeo recebidos assim que os recursos ficam disponíveis, otimizando a aceleração de hardware para painéis de controle de cidades inteligentes.

Processamento contínuo em tarefas de visão

Ao gerir práticas de implementação de modelos de alto tráfego, o streaming iterativo de inferências pode simular os benefícios do processamento dinâmico em lotes, garantindo que a memória seja liberada progressivamente, em vez de bloqueada. O Python a seguir demonstra como usar o padrão gerador com a API de previsão do modelo para lidar com um fluxo contínuo de imagens de maneira eficiente.

from ultralytics import YOLO

# Load the latest Ultralytics YOLO26 model
model = YOLO("yolo26n.pt")

# Using stream=True acts as a generator, iteratively processing inputs
# to keep memory usage low and throughput high
results = model.predict(source=["img1.jpg", "img2.jpg", "img3.jpg"], stream=True)

# Process each result as soon as it completes
for result in results:
    print(f"Detected {len(result.boxes)} objects in this frame.")

A gestão do agendamento de recursos ao nível do sistema requer um equilíbrio entre velocidade bruta e custo operacional. As equipas que implementam visão computacional (CV) e modelos de linguagem em grande escala dependem cada vez mais de estruturas de serviço avançadas para gerir esses lotes dinâmicos. Para equipas empresariais que procuram otimizar a sua infraestrutura, a Ultralytics oferece ferramentas robustas para treinar, monitorizar e exportar modelos para ambientes de produção altamente otimizados.

Energize-se com o Ultralytics YOLO

Obtenha visão de IA avançada para seus projetos. Encontre a licença certa para seus objetivos hoje.

Explore as opções de licenciamento