YOLO Vision 2026:

Exportar para o Formato de Modelo TF.js a partir de um Formato de Modelo YOLO26#

Descontinuado — substituído por LiteRT

A partir de Ultralytics 8.4.83, o formato de exportação tfjs (TensorFlow.js) foi removido e substituído pelo formato unificado Google LiteRT. O LiteRT é executado no navegador através do LiteRT.js (com aceleração WebGPU) — cobrindo os casos de uso de navegador e Node.js que o TF.js geria, juntamente com dispositivos móveis, incorporados e de borda, a partir de um único modelo .tflite.

O format="tfjs" ainda funciona, mas emite um aviso de descontinuação e exporta um modelo LiteRT. Usa format="litert" daqui em diante; para instruções de exportação atuais e o caminho de implementação no navegador, consulta o guia de exportação do LiteRT.

Implementar modelos de aprendizagem automática diretamente no navegador ou no Node.js pode ser complicado. Precisas de garantir que o teu formato de modelo está otimizado para um desempenho mais rápido, para que o modelo possa ser utilizado para executar aplicações interativas localmente no dispositivo do utilizador. O formato de modelo TensorFlow.js, ou TF.js, foi concebido para utilizar energia mínima enquanto proporciona um desempenho rápido.

A funcionalidade 'exportar para o formato de modelo TF.js' permite-te otimizar os teus modelos Ultralytics YOLO26 para inferência de deteção de objetos de alta velocidade e executada localmente. Neste guia, vamos ajudar-te a converter os teus modelos para o formato TF.js, tornando mais fácil para os teus modelos terem um bom desempenho em vários navegadores locais e aplicações Node.js.

Porque deverias exportar para TF.js?#

Exportar os teus modelos de machine learning para TensorFlow.js, desenvolvido pela equipa do TensorFlow como parte do ecossistema mais amplo do TensorFlow, oferece inúmeras vantagens para a implantação de aplicações de machine learning. Ajuda a melhorar a privacidade e segurança do utilizador ao manter dados sensíveis no dispositivo. A imagem abaixo mostra a arquitetura do TensorFlow.js e como os modelos de machine learning são convertidos e implantados tanto em navegadores web como no Node.js.

TensorFlow.js browser ML inference architecture

Executar modelos localmente também reduz a latência e proporciona uma experiência de utilizador mais responsiva. O TensorFlow.js também inclui capacidades offline, permitindo aos utilizadores utilizar a tua aplicação mesmo sem ligação à internet. O TF.js foi concebido para a execução eficiente de modelos complexos em dispositivos com recursos limitados, uma vez que foi projetado para escalabilidade, com suporte para aceleração por GPU.

Principais Funcionalidades do TF.js#

Aqui estão as principais funcionalidades que fazem do TF.js uma ferramenta poderosa para programadores:

  • Suporte Multiplataforma: O TensorFlow.js pode ser utilizado tanto em navegadores como em ambientes Node.js, proporcionando flexibilidade na implantação em diferentes plataformas. Permite que os programadores criem e implantem aplicações mais facilmente.

  • Suporte para Múltiplos Backends: O TensorFlow.js suporta vários backends para computação, incluindo CPU, WebGL para aceleração por GPU, WebAssembly (WASM) para uma velocidade de execução próxima da nativa, e WebGPU para capacidades avançadas de machine learning baseadas no navegador.

  • Capacidades Offline: Com o TensorFlow.js, os modelos podem ser executados no navegador sem a necessidade de uma ligação à internet, tornando possível desenvolver aplicações que funcionam offline.

Opções de Implantação com TensorFlow.js#

Antes de mergulharmos no processo de exportação de modelos YOLO26 para o formato TF.js, vamos explorar alguns cenários típicos de implantação onde este formato é utilizado.

O TF.js oferece uma variedade de opções para implantar os teus modelos de machine learning:

  • Aplicações de ML no Navegador: Podes criar aplicações web que executam modelos de machine learning diretamente no navegador. A necessidade de computação no lado do servidor é eliminada e a carga no servidor é reduzida.

  • Aplicações Node.js: O TensorFlow.js também suporta a implantação em ambientes Node.js, permitindo o desenvolvimento de aplicações de machine learning no lado do servidor. É particularmente útil para aplicações que requerem o poder de processamento de um servidor ou acesso a dados do lado do servidor.

  • Extensões do Chrome: Um cenário de implantação interessante é a criação de extensões do Chrome com TensorFlow.js. Por exemplo, podes desenvolver uma extensão que permite aos utilizadores clicar com o botão direito numa imagem dentro de qualquer página web para a classificar usando um modelo de ML pré-treinado. O TensorFlow.js pode ser integrado em experiências diárias de navegação web para fornecer insights imediatos ou ampliações baseadas em machine learning.

Exportar Modelos YOLO26 para TensorFlow.js#

Podes expandir a compatibilidade do modelo e a flexibilidade de implantação convertendo modelos YOLO26 para TF.js.

Instalação#

Para instalar o pacote necessário, execute:

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

Para instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulta o nosso guia de instalação do Ultralytics. Ao instalar os pacotes necessários para o YOLO26, se encontrares alguma dificuldade, consulta o nosso guia de problemas comuns para obter soluções e dicas.

Uso#

Todos os modelos Ultralytics YOLO26 são projetados para suportar exportação nativamente, facilitando a integração deles no teu fluxo de trabalho de implantação preferido. Podes ver a lista completa de formatos de exportação suportados e opções de configuração para escolher a melhor configuração para a tua aplicação.

O argumento tfjs exporta agora um modelo LiteRT .tflite, que suporta os modos Exportar, Prever e Validar localmente e é executado no navegador através do LiteRT.js. Consulta o guia de exportação do LiteRT para o caminho atual de implementação no navegador e no dispositivo.

Exportar
from ultralytics import YOLO

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

# Export the model to TF.js format
model.export(format="litert", imgsz=640)  # use imgsz=224 for classification
Prever e Validar

O modelo LiteRT .tflite exportado é carregado diretamente com yolo predict e yolo val, e é executado no navegador através do LiteRT.js. Consulta o guia de exportação do LiteRT.

Argumentos de Exportação#

ArgumentoTipoPredefiniçãoDescrição
formatstr'tfjs'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.
quantizeint ou strNonePrecisão de quantização: 8 (INT8 estático, pesos int8 + ativações int8; precisa de calibração data/fraction), 'w8a16' (estático, pesos int8 + ativações int16; precisa de calibração data/fraction), 'w8a32' (INT8 dinâmico, pesos int8 + ativações FP32; sem necessidade de calibração) ou 32/não definido (FP32). O FP16 não é exportado separadamente — um modelo FP32 é executado em FP16 automaticamente em delegados de GPU. Substitui os sinalizadores obsoletos half/int8.
batchint1Especifica o tamanho de inferência em lote do modelo de exportação ou o número máximo de imagens que o modelo exportado processará concorrentemente no modo predict.
datastrNoneCaminho para o YAML do dataset, essencial para a quantização; a classificação, em vez disso, aceita um diretório de dataset ou um nome de dataset integrado. Se omitido com quantize=8 ou 'w8a16', o Ultralytics seleciona o dataset de calibração padrão para a tarefa do modelo.
fractionfloat, int ou list1.0Subconjunto de calibração como uma proporção, contagem de imagens ou proporções/contagens de [train, val, test]. Listas de dois itens deixam test cheio, enquanto 0 o pula.
devicestrNoneEspecifica o dispositivo para exportação: CPU (device=cpu), MPS para Apple silicon (device=mps).

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

Implantar Modelos YOLO26 TensorFlow.js Exportados#

Agora que exportaste o teu modelo YOLO26, o passo seguinte é implementá-lo. A exportação produz um modelo LiteRT .tflite que é executado no dispositivo e no navegador através do LiteRT.js — consulta o guia de exportação do LiteRT para o caminho atual.

Para referência, os recursos legados do runtime TensorFlow.js estão abaixo:

Resumo#

Neste guia, aprendemos como exportar modelos Ultralytics YOLO26 para o formato TensorFlow.js. Ao exportar para TF.js, ganhas a flexibilidade para otimizar, implantar e escalar os teus modelos YOLO26 numa vasta gama de plataformas.

Para mais detalhes sobre a utilização, visita a documentação oficial do TensorFlow.js.

Para mais informações sobre como integrar o Ultralytics YOLO26 com outras plataformas e frameworks, não te esqueças de conferir a nossa página do guia de integração. Ela está repleta de ótimos recursos para ajudar-te a aproveitar ao máximo o YOLO26 nos teus projetos.

FAQ#

  • Exportar modelos Ultralytics YOLO26 para o formato TensorFlow.js (TF.js) é simples. Podes seguir estes passos:

    Uso
    from ultralytics import YOLO
    
    # Load a YOLO26 model
    model = YOLO("yolo26n.pt")
    
    # Export the model to TF.js format
    model.export(format="litert", imgsz=640)  # use imgsz=224 for classification
    
    # The exported '.tflite' model runs in the browser via LiteRT.js or locally with yolo predict/val.

    Para mais detalhes sobre as opções de exportação suportadas, visita a página de documentação da Ultralytics sobre opções de implementação.

  • Exportar modelos YOLO26 para TensorFlow.js oferece várias vantagens, incluindo:

    1. Execução Local: Os modelos podem ser executados diretamente no navegador ou Node.js, reduzindo a latência e melhorando a experiência do utilizador.
    2. Suporte Multiplataforma: O TF.js suporta múltiplos ambientes, permitindo flexibilidade na implantação.
    3. Capacidades Offline: Permite que as aplicações funcionem sem uma ligação à internet, garantindo fiabilidade e privacidade.
    4. Aceleração por GPU: Aproveita o WebGL para aceleração por GPU, otimizando o desempenho em dispositivos com recursos limitados.
  • O TensorFlow.js foi especificamente concebido para a execução eficiente de modelos de ML em navegadores e ambientes Node.js. Eis como beneficia aplicações baseadas no navegador:

    • Reduz a Latência: Executa modelos de machine learning localmente, fornecendo resultados imediatos sem depender de computações no lado do servidor.
    • Melhora a Privacidade: Mantém dados sensíveis no dispositivo do utilizador, minimizando os riscos de segurança.
    • Permite o Uso Offline: Os modelos podem operar sem uma ligação à internet, garantindo funcionalidade consistente.
    • Suporta Múltiplos Backends: Oferece flexibilidade com backends como CPU, WebGL, WebAssembly (WASM) e WebGPU para diversas necessidades computacionais.

    Tens interesse em saber mais sobre o TF.js? Vê o guia oficial do TensorFlow.js.

  • As principais funcionalidades do TensorFlow.js incluem:

    • Suporte Multiplataforma: O TF.js pode ser usado tanto em navegadores web como no Node.js, proporcionando uma vasta flexibilidade de implantação.
    • Múltiplos Backends: Suporta CPU, WebGL para aceleração por GPU, WebAssembly (WASM) e WebGPU para operações avançadas.
    • Capacidades Offline: Os modelos podem ser executados diretamente no navegador sem ligação à internet, tornando-o ideal para desenvolver aplicações web responsivas.

    Para cenários de implementação e informações mais detalhadas, consulta a nossa secção sobre Opções de Implementação com o TensorFlow.js.

  • Sim, o TensorFlow.js permite a implantação de modelos YOLO26 em ambientes Node.js. Isto possibilita aplicações de machine learning no lado do servidor que beneficiam do poder de processamento de um servidor e do acesso a dados do lado do servidor. Casos de uso típicos incluem processamento de dados em tempo real e pipelines de machine learning em servidores backend.

    Para começares com a implementação no Node.js, consulta o guia Executar o TensorFlow.js no Node.js do TensorFlow.

Comentários