Biblioteca de otimização de deep learning que facilita e torna mais eficiente o treinamento distribuído e a inferência de modelos grandes.
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
Instale a versão estável mais recente do pacote Python (Python 3.11–3.15).
pip install executorch - 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
Uma plataforma open source completa para criar e implantar modelos de machine learning, com APIs para Python e C++.
Biblioteca e servidor rápidos e eficientes em memória para executar e servir modelos de linguagem grandes com uma API compatível com a OpenAI.
Ultralytics YOLOv5, toolkit de visão computacional baseado em PyTorch para detecção de objetos, segmentação de instâncias e classificação de imagens, com recursos de treinamento e exportação.
Biblioteca Python que executa LLMs grandes camada por camada, permitindo inferência com modelos da classe 70B em uma única GPU de 4 GB, sem quantização.
Implementação oficial do FlashAttention, um kernel de atenção exata e eficiente em memória para treinar e executar inferência de modelos Transformer em GPUs.