Exportar do formato de modelo YOLO26 para o formato de modelo TF.js#
A partir do 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 por meio do LiteRT.js (com aceleração WebGPU), atendendo aos casos de uso no navegador e no Node.js que eram atendidos pelo TF.js, além de dispositivos móveis, embarcados e de borda, usando um único modelo .tflite.
format="tfjs" ainda funciona, mas emite um aviso de obsolescência e exporta um modelo LiteRT. A partir de agora, use format="litert"; para consultar as instruções de exportação atuais e o fluxo de implantação no navegador, veja o guia de exportação do LiteRT.
Implantar modelos de aprendizado de máquina diretamente no navegador ou no Node.js pode ser complicado. Você precisa garantir que o formato do modelo esteja otimizado para um desempenho mais rápido, permitindo executar aplicações interativas localmente no dispositivo do usuário. O formato de modelo TensorFlow.js, ou TF.js, foi projetado para consumir o mínimo de energia e oferecer um desempenho rápido.
O recurso de exportação para o formato de modelo TF.js permite otimizar seus modelos Ultralytics YOLO26 para inferência de detecção de objetos local e de alta velocidade. Neste guia, explicaremos como converter seus modelos para o formato TF.js, facilitando a obtenção de um bom desempenho em vários navegadores locais e aplicações Node.js.
Por que exportar para TF.js?#
Exportar seus modelos de aprendizado de máquina para TensorFlow.js, desenvolvido pela equipe do TensorFlow como parte do ecossistema mais amplo do TensorFlow, oferece inúmeras vantagens para implantar aplicações de aprendizado de máquina. Isso ajuda a melhorar a privacidade e a segurança dos usuários, mantendo os dados confidenciais no dispositivo. A imagem abaixo mostra a arquitetura do TensorFlow.js e como os modelos de aprendizado de máquina são convertidos e implantados em navegadores web e no Node.js.
Executar modelos localmente também reduz a latência e proporciona uma experiência mais responsiva para o usuário. TensorFlow.js também oferece recursos off-line, permitindo que os usuários utilizem sua aplicação mesmo sem conexão com a internet. O TF.js foi projetado para executar modelos complexos com eficiência em dispositivos com recursos limitados e oferecer escalabilidade, além de suporte à aceleração por GPU.
Principais recursos do TF.js#
Veja os principais recursos que fazem do TF.js uma ferramenta poderosa para desenvolvedores:
-
Suporte multiplataforma: TensorFlow.js pode ser usado em navegadores e em ambientes Node.js, oferecendo flexibilidade para implantação em diferentes plataformas. Isso permite que os desenvolvedores criem e implantem aplicações com mais facilidade.
-
Suporte a vários backends: TensorFlow.js oferece suporte a vários backends de computação, incluindo CPU, WebGL para aceleração por GPU, WebAssembly (WASM) para velocidade de execução quase nativa e WebGPU para recursos avançados de aprendizado de máquina no navegador.
-
Recursos off-line: com TensorFlow.js, os modelos podem ser executados no navegador sem conexão com a internet, permitindo desenvolver aplicações que funcionam off-line.
Opções de implantação com TensorFlow.js#
Antes de detalharmos o processo de exportação de modelos YOLO26 para o formato TF.js, vamos explorar alguns cenários típicos de implantação em que esse formato é usado.
O TF.js oferece várias opções para implantar seus modelos de aprendizado de máquina:
-
Aplicações de ML no navegador: você pode criar aplicações web que executam modelos de aprendizado de máquina diretamente no navegador. Isso elimina a necessidade de computação no servidor e reduz a carga nele.
-
Aplicações Node.js: TensorFlow.js também oferece suporte à implantação em ambientes Node.js, permitindo desenvolver aplicações de aprendizado de máquina no servidor. Isso é particularmente útil para aplicações que precisam do poder de processamento de um servidor ou de acesso a dados nele armazenados.
-
Extensões do Chrome: um cenário interessante de implantação é a criação de extensões do Chrome com TensorFlow.js. Por exemplo, você pode desenvolver uma extensão que permite aos usuários clicar com o botão direito em uma imagem em qualquer página da web e classificá-la usando um modelo de ML pré-treinado. TensorFlow.js pode ser integrado à navegação cotidiana na web para fornecer informações ou melhorias imediatas com base em aprendizado de máquina.
Exportação de modelos YOLO26 para TensorFlow.js#
Você pode ampliar a compatibilidade e a flexibilidade de implantação dos modelos convertendo modelos YOLO26 para TF.js.
Instalação#
Para instalar o pacote necessário, executa:
# Install the required package for YOLO26
pip install ultralyticsPara obter instruções detalhadas e boas práticas relacionadas ao processo de instalação, consulte nosso guia de instalação da Ultralytics. Se tiver dificuldades ao instalar os pacotes necessários para YOLO26, consulte nosso guia de problemas comuns para ver soluções e dicas.
Uso#
Todos os modelos Ultralytics YOLO26 foram concebidos para suportar a exportação de origem, o que facilita a integração no fluxo de trabalho de implementação que preferires. Podes consultar a lista completa de formatos de exportação suportados e opções de configuração para escolheres a melhor configuração para a tua aplicação.
O argumento tfjs agora exporta um modelo .tflite LiteRT, que oferece suporte local aos modos Export, Predict e Validate, e é executado no navegador por meio do LiteRT.js. Consulte o guia de exportação do LiteRT para conhecer o fluxo atual de implantação no navegador e no dispositivo.
from ultralytics import YOLO
# Carrega um modelo YOLO26
model = YOLO("yolo26n.pt")
# Exporta o modelo para o formato LiteRT (substitui TF.js)
model.export(format="litert", imgsz=640) # usar imgsz=224 para classificaçãoO modelo LiteRT .tflite exportado é carregado diretamente com yolo predict e yolo val e é executado no navegador por meio do LiteRT.js. Consulte o guia de exportação do LiteRT.
Argumentos de exportação#
| Argumento | Tipo | Padrão | Descrição |
|---|---|---|---|
format | str | 'litert' | Formato de destino do modelo exportado; o valor obsoleto 'tfjs' exporta para LiteRT. |
imgsz | int ou tuple | 640 | Tamanho de imagem desejado para a entrada do modelo. Pode ser um inteiro para imagens quadradas ou uma tupla (height, width) para dimensões específicas. |
quantize | int ou str | None | Precisão da quantização: 8 (INT8 estático, pesos int8 + ativações int8; requer calibração data/fraction), 'w8a16' (estático, pesos int8 + ativações int16; requer calibração data/fraction), 'w8a32' (INT8 dinâmico, pesos int8 + ativações FP32; não requer calibração) ou 32/não definido (FP32). FP16 não é exportado separadamente — um modelo FP32 é executado automaticamente em FP16 em delegados de GPU. Substitui as flags obsoletas half/int8. |
batch | int | 1 | Especifica o tamanho do lote de inferência do modelo exportado ou o número máximo de imagens que o modelo exportado processará em simultâneo no modo predict. |
data | str | None | Caminho para o YAML do conjunto de dados, essencial para a quantização; para classificação, use um diretório de conjunto de dados ou o nome de um conjunto de dados integrado. Se omitido com quantize=8 ou 'w8a16', Ultralytics seleciona o conjunto de dados de calibração padrão para a tarefa do modelo. |
fraction | float, int ou list | 1.0 | Subconjunto de calibração como proporção, número de imagens ou proporções/contagens [train, val, test]. Listas de dois itens deixam test completo, enquanto 0 o ignora. |
device | str | None | Especifica o dispositivo para a exportação: CPU (device=cpu), MPS para Apple silicon (device=mps). |
Para mais detalhes sobre o processo de exportação, visita a página da documentação da Ultralytics sobre exportação.
Implantação de modelos YOLO26 TensorFlow.js exportados#
Agora que você exportou seu modelo YOLO26, o próximo passo é implantá-lo. A exportação gera um modelo .tflite LiteRT, executado no dispositivo e no navegador por meio do LiteRT.js — consulte o guia de exportação do LiteRT para conhecer o fluxo atual.
Para referência, veja abaixo os recursos do runtime legado do TensorFlow.js:
-
Extensão do Chrome: consulte a documentação do desenvolvedor sobre como implantar seus modelos TF.js em uma extensão do Chrome.
-
Executar TensorFlow.js no Node.js: uma publicação do blog do TensorFlow sobre como executar TensorFlow.js diretamente no Node.js.
-
Implantação do TensorFlow.js — projeto Node na plataforma de nuvem: uma publicação do blog do TensorFlow sobre como implantar um modelo TensorFlow.js em uma plataforma de nuvem.
Resumo#
Neste guia, aprendemos a exportar modelos Ultralytics YOLO26 para o formato TensorFlow.js. Ao exportar para TF.js, você ganha flexibilidade para otimizar, implantar e dimensionar seus modelos YOLO26 em uma ampla variedade de plataformas.
Para mais detalhes sobre o uso, consulte a documentação oficial do TensorFlow.js.
Para saber mais sobre como integrar Ultralytics YOLO26 a outras plataformas e frameworks, não deixe de conferir nossa página do guia de integração. Ela reúne ótimos recursos para ajudar você a aproveitar ao máximo YOLO26 nos seus projetos.
Perguntas frequentes#
Exportar modelos Ultralytics YOLO26 para o formato TensorFlow.js (TF.js) é simples. Você pode seguir estas etapas:
Usofrom ultralytics import YOLO # Carrega um modelo YOLO26 model = YOLO("yolo26n.pt") # Exporta o modelo para o formato LiteRT (substitui TF.js) model.export(format="litert", imgsz=640) # usar imgsz=224 para classificação # O modelo '.tflite' exportado é executado no navegador via LiteRT.js ou localmente com yolo predict/val.Para mais detalhes sobre as opções de exportação compatíveis, consulte a página da documentação da Ultralytics sobre opções de implantação.
Exportar modelos YOLO26 para TensorFlow.js oferece várias vantagens, incluindo:
- Execução local: os modelos podem ser executados diretamente no navegador ou no Node.js, reduzindo a latência e melhorando a experiência do usuário.
- Suporte multiplataforma: TF.js oferece suporte a vários ambientes, proporcionando flexibilidade na implantação.
- Recursos off-line: permite que as aplicações funcionem sem conexão com a internet, garantindo confiabilidade e privacidade.
- Aceleração por GPU: aproveita WebGL para aceleração por GPU, otimizando o desempenho em dispositivos com recursos limitados.
TensorFlow.js foi projetado especificamente para executar modelos de ML com eficiência em navegadores e ambientes Node.js. Veja como ele beneficia aplicações executadas no navegador:
- Reduz a latência: executa modelos de aprendizado de máquina localmente e fornece resultados imediatos, sem depender de computação no servidor.
- Melhora a privacidade: mantém os dados confidenciais no dispositivo do usuário, minimizando os riscos de segurança.
- Permite o uso off-line: os modelos podem funcionar sem conexão com a internet, garantindo funcionalidade consistente.
- Oferece suporte a vários backends: proporciona flexibilidade com backends como CPU, WebGL, WebAssembly (WASM) e WebGPU para diferentes necessidades computacionais.
Quer saber mais sobre TF.js? Confira o guia oficial do TensorFlow.js.
Os principais recursos do TensorFlow.js incluem:
- Suporte multiplataforma: TF.js pode ser usado em navegadores web e no Node.js, oferecendo ampla flexibilidade de implantação.
- Vários backends: oferece suporte a CPU, WebGL para aceleração por GPU, WebAssembly (WASM) e WebGPU para operações avançadas.
- Recursos off-line: os modelos podem ser executados diretamente no navegador sem conexão com a internet, o que torna o TF.js ideal para desenvolver aplicações web responsivas.
Para conhecer cenários de implantação e obter informações mais detalhadas, consulte nossa seção sobre opções de implantação com TensorFlow.js.
Sim, TensorFlow.js permite implantar modelos YOLO26 em ambientes Node.js. Isso possibilita criar aplicações de aprendizado de máquina no servidor que aproveitam seu poder de processamento e acessam dados armazenados nele. Entre os casos de uso típicos estão o processamento de dados em tempo real e os pipelines de aprendizado de máquina em servidores de backend.
Para começar a implantar no Node.js, consulte o guia do TensorFlow Executar TensorFlow.js no Node.js.