Repolode
pytorch

pytorch/executorch

Stack de inferência on-device do PyTorch para executar modelos exportados em celulares, laptops, navegadores e microcontroladores.

Estrelas
5,107
Forks
1,207
Issues abertas
1,328
Último commit
há 11 horas

O que é?

O ExecuTorch recebe um modelo PyTorch, captura-o com torch.export, converte-o em um programa .pte específico para o backend do hardware-alvo e executa esse programa por meio de APIs C++, Python, Swift/Objective-C, Kotlin/Java ou JavaScript. Ele atende a dispositivos que vão de celulares e laptops a sistemas embarcados e microcontroladores.

A aceleração de hardware é feita por particionamento: regiões compatíveis do grafo são delegadas a backends de CPU, GPU, NPU ou DSP, como XNNPACK, Core ML, Vulkan, Qualcomm e Arm Ethos-U, enquanto kernels portáveis de CPU cuidam do restante. O runtime pode ser reduzido com selective build, vinculando apenas os operadores e delegates necessários para a implantação. ETDump, ETRecord e ferramentas de depuração numérica ajudam na criação de perfis e na verificação da precisão.

O projeto também inclui exemplos de LLM, fala e visão computacional, além de um servidor local experimental compatível com a OpenAI. Os modelos seguem o mesmo fluxo de exportação, mas cada alvo exige sua própria configuração de backend e validação de precisão e desempenho.

Recursos principais

  • 01Exporta modelos PyTorch por meio de torch.export para programas .pte que são executados on-device.
  • 02Delega regiões compatíveis do grafo a XNNPACK, Core ML, Vulkan, Qualcomm, Arm e outros backends.
  • 03Oferece APIs de runtime para C++, Python, Swift, Kotlin/Java e JavaScript.
  • 04Oferece selective build para incluir apenas os operadores necessários para a implantação.
  • 05Disponibiliza ETDump, ETRecord e ferramentas de depuração numérica para criação de perfis e verificação da precisão.
  • 06Inclui exemplos de LLMs, reconhecimento e síntese de fala e visão computacional.

Casos de uso

  • Executar um modelo de visão ou linguagem PyTorch em um app Android ou iOS, sem servidor.
  • Implantar uma rede neural em um microcontrolador ou DSP com hardware Arm Cortex-M ou Ethos-U.
  • Distribuir um LLM ou modelo de fala local em um aplicativo para desktop ou laptop.
  • Comparar a precisão e a latência de um modelo em vários backends de hardware.

Início rápido

  1. 1

    Instale a versão estável mais recente do pacote Python (Python 3.11–3.15).

    pip install executorch
  2. 2

    Salve o exemplo Add do README como um script e execute-o para exportar o modelo, convertê-lo para XNNPACK e executá-lo.

Antes de usar

  • O uso do Core ML, Qualcomm ou de outros aceleradores requer as dependências próprias desse backend e uma exportação separada.
  • Alguns recursos são experimentais ou estão marcados como Main/nightly e podem mudar antes do lançamento.
  • Builds nightly exigem a instalação separada do PyTorch nightly, e os wheels de CUDA estão disponíveis apenas para Linux.
  • Os wheels Python pré-compilados atendem apenas a Linux x86-64, Linux AArch64, macOS arm64 e Windows x86-64; outros hosts exigem uma compilação a partir do código-fonte.

Tópicos

Perguntas frequentes

O que é executorch?
Stack de inferência on-device do PyTorch para executar modelos exportados em celulares, laptops, navegadores e microcontroladores. O ExecuTorch recebe um modelo PyTorch, captura-o com torch.export, converte-o em um programa .pte específico para o backend do hardware-alvo e executa esse programa por meio de APIs C++, Python, Swift/Objective-C, Kotlin/Java ou JavaScript. Ele atende a dispositivos que vão de celulares e laptops a sistemas embarcados e microcontroladores.
executorch é gratuito? Qual é a licença?
executorch é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
executorch ainda é mantido?
Manutenção ativa. O último commit de executorch foi em 20 de out. de 2026.
Para que posso usar executorch?
Executar um modelo de visão ou linguagem PyTorch em um app Android ou iOS, sem servidor. Implantar uma rede neural em um microcontrolador ou DSP com hardware Arm Cortex-M ou Ethos-U. Distribuir um LLM ou modelo de fala local em um aplicativo para desktop ou laptop. Comparar a precisão e a latência de um modelo em vários backends de hardware.
Como instalar executorch?
Instale a versão estável mais recente do pacote Python (Python 3.11–3.15).: pip install executorch Salve o exemplo Add do README como um script e execute-o para exportar o modelo, convertê-lo para XNNPACK e executá-lo.
Onde consigo executorch?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pytorch/executorch

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados