Meet YOLO26: next-gen vision AI.

Link to this sectionExportação do modelo YOLO26 para TorchScript para implementação rápida#

A implementação de modelos de visão computacional em diferentes ambientes, incluindo sistemas embarcados, navegadores 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 precisas de implementar as tuas capacidades de visão computacional em vários dispositivos ou plataformas.

Exporta para TorchScript para serializar os teus modelos Ultralytics YOLO26 para compatibilidade entre plataformas e uma implementação otimizada. Neste guia, mostraremos como exportar os teus modelos YOLO26 para o formato TorchScript, tornando mais fácil para ti utilizá-los numa gama mais ampla de aplicações.

Link to this sectionPor que deverias exportar para TorchScript?#

Visão geral do fluxo de trabalho de serialização e implementação de modelo TorchScript

Desenvolvido pelos criadores do PyTorch, o TorchScript é uma ferramenta poderosa para otimizar e implementar modelos PyTorch numa variedade de 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 ao permitir que modelos PyTorch sejam usados em ambientes que não suportam Python.

O processo envolve duas técnicas: tracing e scripting. O tracing regista operações durante a execução do modelo, enquanto o scripting permite a definição de modelos usando um subconjunto de Python. Estas técnicas garantem que modelos como o YOLO26 ainda possam fazer a sua magia mesmo fora do seu ambiente Python habitual.

Comparação entre scripting e tracing no TorchScript

Os modelos TorchScript também podem ser otimizados através de técnicas como fusão de operadores e refinamentos no uso de memória, garantindo uma execução eficiente. Outra vantagem da exportação para TorchScript é o seu potencial para acelerar a execução do modelo em várias plataformas de hardware. Cria uma representação autónoma e pronta para produção do teu modelo PyTorch que pode ser integrada em ambientes C++, sistemas embarcados ou implementada em aplicações web ou móveis.

Link to this sectionPrincipais funcionalidades dos modelos TorchScript#

O TorchScript, uma parte fundamental do ecossistema PyTorch, fornece funcionalidades poderosas para otimizar e implementar modelos de aprendizagem profunda.

Visão geral das principais funcionalidades do TorchScript

Aqui estão as principais funcionalidades que tornam o TorchScript uma ferramenta valiosa para programadores:

  • Execução de Grafo Estático: O TorchScript utiliza 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 num melhor desempenho durante a inferência.

  • Serialização de Modelo: O TorchScript permite-te serializar modelos PyTorch num formato independente de plataforma. Modelos serializados podem ser carregados sem exigir o código Python original, permitindo a implementação em diferentes ambientes de runtime.

  • Compilação JIT: O TorchScript utiliza a compilação Just-In-Time (JIT) para converter modelos PyTorch numa representação intermédia otimizada. O JIT compila o grafo computacional do modelo, permitindo uma execução eficiente nos dispositivos de destino.

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

  • Conversão Gradual: O TorchScript fornece uma abordagem de conversão gradual, permitindo-te converter incrementalmente partes do teu modelo PyTorch para TorchScript. Esta flexibilidade é particularmente útil ao lidar com modelos complexos ou quando queres otimizar partes específicas do código.

Link to this sectionOpções de Implementaçã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 implementação para modelos de aprendizagem automática, tais como:

  • API C++: O caso de uso mais comum para o TorchScript é a sua API C++, que te permite carregar e executar modelos TorchScript otimizados diretamente em aplicações C++. Isto é 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.

  • Implementação Móvel: O TorchScript oferece ferramentas para converter modelos em formatos prontos para implementação em dispositivos móveis. O PyTorch Mobile fornece um runtime para executar estes modelos dentro de aplicações iOS e Android. Isto permite capacidades de inferência offline de baixa latência, melhorando a experiência do utilizador e a privacidade de dados.

  • Implementação na Cloud: Modelos TorchScript podem ser implementados em servidores baseados na cloud usando soluções como o TorchServe. Ele fornece funcionalidades como controlo de versão de modelos, processamento em lote e monitorização de métricas para implementação escalável em ambientes de produção. A implementação na cloud com o TorchScript pode tornar os teus modelos acessíveis através de APIs ou outros serviços web.

Link to this sectionExportar para TorchScript: Convertendo o teu modelo YOLO26#

Exportar modelos YOLO26 para TorchScript torna mais fácil usá-los em diferentes lugares e ajuda-os a correr de forma mais rápida e eficiente. Isto é ótimo para qualquer pessoa que procure usar modelos de aprendizagem profunda 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 instruções detalhadas e práticas recomendadas relacionadas ao processo de instalação, confira nosso Guia de Instalação Ultralytics. Ao instalar os pacotes necessários para o YOLO26, caso encontre alguma dificuldade, consulte nosso Guia de Problemas Comuns para soluções e dicas.

Link to this sectionUso#

Todos os modelos Ultralytics YOLO26 são projetados para suportar a exportação imediatamente, facilitando sua integração ao seu fluxo de trabalho de implementaçã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. Exporta o teu modelo, depois carrega o modelo exportado para realizar a inferência ou validar a 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#

ArgumentoTipoPadrãoDescrição
formatstr'torchscript'Formato de destino para o modelo exportado, definindo a compatibilidade com vários ambientes de implantaçã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 ao lidar com dimensões de imagem variáveis.
halfboolFalseAtiva a quantização FP16 (precisão metade), reduzindo o tamanho do modelo e potencialmente acelerando a inferência em hardware compatível.
optimizeboolFalseAplica otimização para dispositivos móveis, reduzindo potencialmente o tamanho do modelo e melhorando o desempenho.
nmsboolFalseAdiciona Non-Maximum Suppression (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 da Ultralytics sobre exportação.

Link to this sectionImplementar modelos YOLO26 TorchScript exportados#

Após exportares com sucesso os teus modelos Ultralytics YOLO26 para o formato TorchScript, podes agora implementá-los. O primeiro passo, principal e recomendado, para executar um modelo TorchScript é usar o método YOLO("model.torchscript"), conforme descrito no excerto de código de uso anterior. Para instruções detalhadas sobre a implementação dos teus modelos TorchScript noutros cenários, dá uma vista de olhos nos seguintes recursos:

  • Explorar Implementação Móvel: A Documentação do PyTorch Mobile fornece diretrizes abrangentes para implementar modelos em dispositivos móveis, garantindo que as tuas aplicações sejam eficientes e responsivas.

  • Dominar a Implementação no Lado do Servidor: Aprende como implementar modelos no lado do servidor com o TorchServe, oferecendo um tutorial passo a passo para um serviço de modelos escalável e eficiente.

  • Implementar Implementação C++: Mergulha no Tutorial sobre como Carregar um Modelo TorchScript em C++, facilitando a integração dos teus modelos TorchScript em aplicações C++ para um desempenho e versatilidade aprimorados.

Link to this sectionResumo#

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

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

Além disso, se 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 do modelo Ultralytics YOLO26 para TorchScript?#

Exportar um modelo Ultralytics YOLO26 para TorchScript permite uma implementaçã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 carecem de suporte a Python. Isto torna-o ideal para implementar modelos em sistemas embarcados, ambientes C++, aplicações móveis e até mesmo navegadores web. Exportar para TorchScript permite um desempenho eficiente e uma aplicabilidade mais ampla dos teus modelos YOLO26 em diversas plataformas.

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

Para exportar um modelo YOLO26 para TorchScript, podes 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, consulta a documentação da Ultralytics sobre exportação.

Link to this sectionPor que deveria usar TorchScript para implementar modelos YOLO26?#

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

  • Portabilidade: Modelos exportados podem ser executados em ambientes sem a necessidade de Python, tais como aplicações C++, sistemas embarcados ou dispositivos móveis.
  • Otimização: O TorchScript suporta a execução de grafo estático e a compilação Just-In-Time (JIT), o que pode otimizar o desempenho do modelo.
  • Integração entre Linguagens: Modelos TorchScript podem ser integrados noutras 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 insights sobre implementação, visita a Documentação do TorchServe e o Guia de Implementação C++. Para implementação móvel no dispositivo, o PyTorch recomenda agora o ExecuTorch, que usa o seu próprio pipeline separado torch.export().pte em vez do TorchScript.

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

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

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

Para instruções detalhadas, visita o guia de Instalação da Ultralytics. Se surgirem problemas durante a instalação, consulta o guia de Problemas Comuns.

Link to this sectionComo implemento os meus modelos YOLO26 TorchScript exportados?#

Após exportares modelos YOLO26 para o formato TorchScript, podes implementá-los numa variedade de plataformas:

  • API C++: Ideal para ambientes de produção de baixa sobrecarga e altamente eficientes.
  • Implementação Móvel: Executa modelos TorchScript no dispositivo com o LibTorch (o runtime C++ do PyTorch). Para novos projetos móveis, o PyTorch recomenda o ExecuTorch, um pipeline de exportação .pte separado.
  • Implementação na Cloud: Utiliza serviços como o TorchServe para implementação escalável no lado do servidor.

Explora diretrizes abrangentes para a implementação de modelos nestes cenários para tirares o máximo partido das capacidades do TorchScript.

Comentários