Meet YOLO26: next-gen vision AI.

Link to this sectionExportação de modelos YOLO26 para TorchScript para implantação rápida#

A implantação de modelos de visão computacional em diferentes ambientes, incluindo sistemas embarcados, navegadores da web ou plataformas com suporte limitado a Python, requer uma solução flexível e portátil. O TorchScript foca na portabilidade e na capacidade de executar modelos em ambientes onde todo o framework Python não está disponível. Isso o torna ideal para cenários onde você precisa implantar suas capacidades de visão computacional em vários dispositivos ou plataformas.

Exporte para TorchScript para serializar seus modelos Ultralytics YOLO26 para compatibilidade entre plataformas e implantação simplificada. Neste guia, mostraremos como exportar seus modelos YOLO26 para o formato TorchScript, tornando mais fácil para você usá-los em uma gama mais ampla de aplicações.

Link to this sectionPor que exportar para TorchScript?#

Visão geral do fluxo de trabalho de serialização e implantação de modelos TorchScript

Desenvolvido pelos criadores do PyTorch, o TorchScript é uma ferramenta poderosa para otimizar e implantar modelos PyTorch em diversas plataformas. Exportar modelos YOLO26 para TorchScript é crucial para passar da pesquisa para aplicações do mundo real. O TorchScript, parte do framework PyTorch, ajuda a tornar essa transição mais suave, permitindo que modelos PyTorch sejam usados em ambientes que não suportam Python.

O processo envolve duas técnicas: tracing (rastreamento) e scripting (scripting). O tracing registra operações durante a execução do modelo, enquanto o scripting permite a definição de modelos usando um subconjunto de Python. Essas técnicas garantem que modelos como o YOLO26 ainda possam realizar sua mágica mesmo fora do seu ambiente Python habitual.

Comparação entre scripting e tracing no TorchScript

Modelos TorchScript também podem ser otimizados por meio de técnicas como fusão de operadores e refinamentos no uso de memória, garantindo uma execução eficiente. Outra vantagem de exportar para TorchScript é seu potencial para acelerar a execução do modelo em várias plataformas de hardware. Ele cria uma representação autônoma e pronta para produção do seu modelo PyTorch que pode ser integrada em ambientes C++, sistemas embarcados ou implantada em aplicações web ou móveis.

Link to this sectionPrincipais recursos dos modelos TorchScript#

O TorchScript, uma parte fundamental do ecossistema PyTorch, fornece recursos poderosos para otimizar e implantar modelos de deep learning.

Visão geral dos principais recursos do TorchScript

Aqui estão os principais recursos que tornam o TorchScript uma ferramenta valiosa para desenvolvedores:

  • Execução de grafo estático: O TorchScript usa uma representação de grafo estático da computação do modelo, o que é diferente da execução de grafo dinâmico do PyTorch. Na execução de grafo estático, o grafo computacional é definido e compilado uma vez antes da execução real, resultando em desempenho aprimorado durante a inferência.

  • Serialização de modelos: O TorchScript permite serializar modelos PyTorch em um formato independente de plataforma. Modelos serializados podem ser carregados sem exigir o código Python original, permitindo a implantação em diferentes ambientes de tempo de execução.

  • Compilação JIT: O TorchScript usa compilação Just-In-Time (JIT) para converter modelos PyTorch em uma representação intermediária otimizada. O JIT compila o grafo computacional do modelo, permitindo uma execução eficiente em dispositivos de destino.

  • Integração entre linguagens: Com o TorchScript, você pode exportar modelos PyTorch para outras linguagens, como C++, Java e JavaScript. Isso torna mais fácil integrar modelos PyTorch em sistemas de software existentes escritos em diferentes linguagens.

  • Conversão gradual: O TorchScript oferece uma abordagem de conversão gradual, permitindo que você converta incrementalmente partes do seu modelo PyTorch para TorchScript. Essa flexibilidade é particularmente útil ao lidar com modelos complexos ou quando você deseja otimizar partes específicas do código.

Link to this sectionOpções de implantação no TorchScript#

Antes de analisarmos o código para exportar modelos YOLO26 para o formato TorchScript, vamos entender onde os modelos TorchScript são normalmente usados.

O TorchScript oferece várias opções de implantação para modelos de machine learning, como:

  • API C++: O caso de uso mais comum para o TorchScript é sua API C++, que permite carregar e executar modelos TorchScript otimizados diretamente em aplicações C++. Isso é ideal para ambientes de produção onde o Python pode não ser adequado ou estar disponível. A API C++ oferece baixa sobrecarga e execução eficiente de modelos TorchScript, maximizando o potencial de desempenho.

  • Implantação móvel: O TorchScript oferece ferramentas para converter modelos em formatos facilmente implantáveis em dispositivos móveis. O PyTorch Mobile fornece um tempo de execução para executar esses modelos dentro de apps iOS e Android. Isso possibilita capacidades de inferência offline e de baixa latência, aprimorando a experiência do usuário e a privacidade de dados.

  • Implantação em nuvem: Modelos TorchScript podem ser implantados em servidores baseados em nuvem usando soluções como o TorchServe. Ele fornece recursos como controle de versão de modelos, processamento em lote (batching) e monitoramento de métricas para implantação escalável em ambientes de produção. A implantação em nuvem com TorchScript pode tornar seus modelos acessíveis via APIs ou outros serviços web.

Link to this sectionExportar para TorchScript: Convertendo seu modelo YOLO26#

Exportar modelos YOLO26 para TorchScript torna mais fácil usá-los em diferentes lugares e ajuda a executá-los de forma mais rápida e eficiente. Isso é excelente para qualquer pessoa que queira usar modelos de deep learning de forma mais eficaz em aplicações do mundo real.

Link to this sectionInstalação#

Para instalar o pacote necessário, execute:

Instalação
# Install the required package for YOLO26
pip install ultralytics

Para obter instruções detalhadas e práticas recomendadas relacionadas ao processo de instalação, consulte nosso Guia de Instalação do Ultralytics. Ao instalar os pacotes necessários para o YOLO26, se você encontrar alguma dificuldade, consulte nosso Guia de Problemas Comuns para obter soluções e dicas.

Link to this sectionUso#

Todos os modelos Ultralytics YOLO26 são projetados para suportar exportação pronta para uso, tornando fácil integrá-los ao seu fluxo de trabalho de implantação preferido. Você pode ver a lista completa de formatos de exportação suportados e opções de configuração para escolher a melhor configuração para sua aplicação.

O formato TorchScript suporta os modos Export, Predict e Validate. Exporte seu modelo e, em seguida, carregue o modelo exportado para executar a inferência ou validar sua precisão.

Exportar
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TorchScript format
model.export(format="torchscript")  # creates 'yolo26n.torchscript'
Prever
from ultralytics import YOLO

# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validar
from ultralytics import YOLO

# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionArgumentos de Exportação#

ArgumentoTipoPredefiniçãoDescrição
formatstr'torchscript'Formato de destino para o modelo exportado, definindo a compatibilidade com vários ambientes de implementação.
imgszint ou tuple640Tamanho de imagem desejado para a entrada do modelo. Pode ser um número inteiro para imagens quadradas ou uma tupla (height, width) para dimensões específicas.
dynamicboolFalsePermite tamanhos de entrada dinâmicos, aumentando a flexibilidade no manuseio de dimensões variáveis de imagem.
quantizeint ou strNonePrecisão de quantização: 16 (FP16) requer exportação via GPU com device=0; 32/não definido é FP32. Substitui a flag half obsoleta.
optimizeboolFalseAplica otimização para dispositivos móveis, potencialmente reduzindo o tamanho do modelo e melhorando o desempenho.
nmsboolFalseAdiciona a Supressão Não-Máxima (NMS), essencial para um pós-processamento de detecção preciso e eficiente.
batchint1Especifica o tamanho da inferência em lote do modelo de exportação ou o número máximo de imagens que o modelo exportado processará simultaneamente no modo predict.
devicestrNoneEspecifica o dispositivo para exportação: GPU (device=0), CPU (device=cpu), MPS para Apple silicon (device=mps).

Para mais detalhes sobre o processo de exportação, visite a página de documentação do Ultralytics sobre exportação.

Link to this sectionImplantação de modelos YOLO26 TorchScript exportados#

Após exportar com sucesso seus modelos Ultralytics YOLO26 para o formato TorchScript, você pode agora implantá-los. O primeiro passo principal e recomendado para executar um modelo TorchScript é usar o método YOLO("model.torchscript"), conforme descrito no snippet de código de uso anterior. Para instruções detalhadas sobre como implantar seus modelos TorchScript em outros ambientes, dê uma olhada nos seguintes recursos:

  • Explorar implantação móvel: A Documentação do PyTorch Mobile fornece diretrizes abrangentes para a implantação de modelos em dispositivos móveis, garantindo que suas aplicações sejam eficientes e responsivas.

  • Dominar a implantação do lado do servidor: Aprenda como implantar modelos do lado do servidor com o TorchServe, oferecendo um tutorial passo a passo para servir modelos de forma escalável e eficiente.

  • Implementar implantação em C++: Explore o Tutorial sobre como carregar um modelo TorchScript em C++, facilitando a integração de seus modelos TorchScript em aplicações C++ para maior desempenho e versatilidade.

Link to this sectionResumo#

Neste guia, exploramos o processo de exportação de modelos Ultralytics YOLO26 para o formato TorchScript. Ao seguir as instruções fornecidas, você pode otimizar modelos YOLO26 para desempenho e ganhar a flexibilidade de implantá-los em várias plataformas e ambientes.

Para mais detalhes sobre o uso, visite a documentação oficial do TorchScript.

Além disso, se você quiser saber mais sobre outras integrações do Ultralytics YOLO26, visite nossa página de guia de integração. Você encontrará muitos recursos e insights úteis por lá.

Link to this sectionFAQ#

Link to this sectionO que é a exportação de modelo Ultralytics YOLO26 para TorchScript?#

Exportar um modelo Ultralytics YOLO26 para TorchScript permite uma implantação flexível entre plataformas. O TorchScript, parte do ecossistema PyTorch, facilita a serialização de modelos, que podem então ser executados em ambientes que não possuem suporte a Python. Isso o torna ideal para a implantação de modelos em sistemas embarcados, ambientes C++, aplicações móveis e até mesmo navegadores da web. Exportar para TorchScript permite um desempenho eficiente e uma aplicabilidade mais ampla de seus modelos YOLO26 em diversas plataformas.

Link to this sectionComo posso exportar meu modelo YOLO26 para TorchScript usando o Ultralytics?#

Para exportar um modelo YOLO26 para TorchScript, você pode usar o seguinte código de exemplo:

Uso
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TorchScript format
model.export(format="torchscript")  # creates 'yolo26n.torchscript'

# Load the exported TorchScript model
torchscript_model = YOLO("yolo26n.torchscript")

# Run inference
results = torchscript_model("https://ultralytics.com/images/bus.jpg")

Para mais detalhes sobre o processo de exportação, consulte a documentação do Ultralytics sobre exportação.

Link to this sectionPor que devo usar o TorchScript para implantar modelos YOLO26?#

Usar o TorchScript para implantar modelos YOLO26 oferece várias vantagens:

  • Portabilidade: Modelos exportados podem ser executados em ambientes sem a necessidade de Python, como aplicações C++, sistemas embarcados ou dispositivos móveis.
  • Otimização: O TorchScript suporta execução de grafo estático e compilação Just-In-Time (JIT), o que pode otimizar o desempenho do modelo.
  • Integração entre linguagens: Modelos TorchScript podem ser integrados em outras linguagens de programação, aumentando a flexibilidade e a expansibilidade.
  • Serialização: Modelos podem ser serializados, permitindo o carregamento e a inferência independentes de plataforma.

Para mais informações sobre implantação, visite a Documentação do TorchServe e o Guia de Implantação C++. Para implantação móvel on-device, o PyTorch agora recomenda o ExecuTorch, que usa seu próprio pipeline separado torch.export().pte em vez do TorchScript.

Link to this sectionQuais são as etapas de instalação para exportar modelos YOLO26 para TorchScript?#

Para instalar o pacote necessário para exportar modelos YOLO26, use o seguinte comando:

Instalação
# Install the required package for YOLO26
pip install ultralytics

Para instruções detalhadas, visite o guia de instalação do Ultralytics. Se algum problema surgir durante a instalação, consulte o guia de problemas comuns.

Link to this sectionComo implanto meus modelos YOLO26 TorchScript exportados?#

Após exportar modelos YOLO26 para o formato TorchScript, você pode implantá-los em uma variedade de plataformas:

  • API C++: Ideal para ambientes de produção de baixa sobrecarga e altamente eficientes.
  • Implantação móvel: Execute modelos TorchScript on-device com o LibTorch (o tempo de execução PyTorch C++). Para novos projetos móveis, o PyTorch recomenda o ExecuTorch, um pipeline de exportação .pte separado.
  • Implantação em nuvem: Utilize serviços como o TorchServe para implantação escalável do lado do servidor.

Explore diretrizes abrangentes para implantar modelos nesses ambientes para aproveitar ao máximo as capacidades do TorchScript.

Comentários