executorch
On-device AI across mobile, embedded and edge for PyTorch
What it is and what it does
ExecuTorch is a PyTorch deployment platform that bridges the gap between model development and on-device execution. It provides tools to export trained PyTorch models into a portable `.pte` format optimized for mobile, embedded, and edge hardware—including AR/VR wearables, iOS, and Android devices. The package includes both an export path (EXIR) for converting models and a prebuilt runtime module for executing those models with hardware acceleration.
The runtime is built around a restricted but efficient operator set and pluggable backend delegates. The prebuilt wheel includes XNNPACK for general acceleration, with platform-specific backends: Core ML and MPS on macOS, QNN on Linux x86_64, and OpenVINO on Linux. This architecture trades some model flexibility for predictable performance and small binary size on constrained devices. A minimal build mode is available for export-only workflows, reducing dependencies significantly.
Use it for:
- Export a trained PyTorch model and deploy it to iOS or Android apps without requiring the full PyTorch runtime on the device.
- Accelerate inference on edge devices using hardware-specific backends like Core ML on Apple Silicon or QNN on Qualcomm processors.
- Run large language models locally on mobile devices by exporting and quantizing them with ExecuTorch's optimization pipeline.
- Build AR/VR applications that execute neural networks directly on wearable hardware with minimal latency and power consumption.
- Create a minimal export-only environment for model conversion without bundling runtime dependencies like pandas or hydra-core.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
ExecuTorch exports and runs PyTorch models on mobile, embedded, and edge devices with support for hardware acceleration backends like XNNPACK, Core ML, and QNN.
Yes, if you need to deploy PyTorch models to mobile or edge devices. The active maintenance, permissive license, and platform-specific prebuilt backends make it a practical choice for on-device AI. Install with conditions: verify that your model uses only core ATen operators, confirm backend availability for your target platform, and plan for the 21 runtime dependencies unless you use the minimal build mode.
Install
executorch on PyPI
pip
pip install executorchuv
uv add executorchpoetry
poetry add executorchInstalling executorch
Before you install
Medium install friction: 21 runtime dependencies including torch, numpy, pandas, and optional backends (coremltools, hydra-core, omegaconf). A minimal build mode available via EXECUTORCH_BUILD_MINIMAL=1 reduces the dependency footprint for export-only use. Package is actively maintained with recent releases.
License in practice
BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; you must include a copy of the license and disclaimer.
Quickstart
pip install executorch torch
import executorch.runtime
# Load and run a .pte model file
runtime = executorch.runtime.Runtime()
result = runtime.run(model_path)
Requires torch to be installed separately; prebuilt runtime supports only core ATen operators and specific backends (XNNPACK always; Core ML and MPS on macOS; QNN on Linux x86_64; OpenVINO requires separate pip install executorch[openvino]).
Verify before relying
- Whether the prebuilt runtime's core ATen operator set is sufficient for your model architecture
- Performance characteristics and latency benchmarks for your target hardware
- Compatibility of your PyTorch model version with the export pipeline
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 21 — expecttest, flatbuffers, hypothesis, kgb, mpmath, numpy, packaging, pandas, parameterized, pytorch-tokenizers, pyyaml, ruamel.yaml, sympy, tabulate, torch, torchao, typing-extensions, coremltools, scikit-learn, hydra-core, omegaconf |
| Maintenance | actively maintained — 0 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 448,392/month — #6,601 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: executorch-1.4.1-cp310-cp310-macosx_14_0_arm64.whl; executorch-1.4.1-cp310-cp310-manylinux_2_28_aarch64.whl; executorch-1.4.1-cp310-cp310-manylinux_2_28_x86_64.whl; executorch-1.4.1-cp310-cp310-win_amd64.whl; executorch-1.4.1-cp311-cp311-macosx_14_0_arm64.whl; executorch-1.4.1-cp311-cp311-manylinux_2_28_aarch64.whl; executorch-1.4.1-cp311-cp311-manylinux_2_28_x86_64.whl; executorch-1.4.1-cp311-cp311-win_amd64.whl; executorch-1.4.1-cp312-cp312-macosx_14_0_arm64.whl; executorch-1.4.1-cp312-cp312-manylinux_2_28_aarch64.whl; executorch-1.4.1-cp312-cp312-manylinux_2_28_x86_64.whl; executorch-1.4.1-cp312-cp312-win_amd64.whl; executorch-1.4.1-cp313-cp313-macosx_14_0_arm64.whl; executorch-1.4.1-cp313-cp313-manylinux_2_28_aarch64.whl; executorch-1.4.1-cp313-cp313-manylinux_2_28_x86_64.whl; executorch-1.4.1-cp313-cp313-win_amd64.whl; executorch-1.4.1-cp314-cp314-macosx_14_0_arm64.whl; executorch-1.4.1-cp314-cp314-manylinux_2_28_aarch64.whl; executorch-1.4.1-cp314-cp314-manylinux_2_28_x86_64.whl; executorch-1.4.1-cp314-cp314-win_amd64.whl
Keywords: pytorch, machine learning
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
tflite-runtimeTensorFlow Lite runtime enables on-device…
permissive · top 15,000 on PyPI
ai-edge-litertai-edge-litert runs machine learning models on…
permissive · top 15,000 on PyPI
moblyMobly is a Python test framework designed to…
permissive · top 15,000 on PyPI
pte-adapter-model-explorerExtends Model Explorer with visualization…
permissive · top 15,000 on PyPI
mediapipeMediaPipe provides pre-built machine learning…
permissive · top 5,000 on PyPI
optimumOptimum provides optimization tools to export…
permissive · top 5,000 on PyPI
litert-torchConverts PyTorch models to .tflite format for…
permissive · top 15,000 on PyPI
mnnMNN is a lightweight deep learning inference…
permissive · top 15,000 on PyPI
ncnnncnn is a neural network inference framework…
permissive · top 15,000 on PyPI
torch-npuEnables PyTorch to run computations on Huawei…
permissive · top 5,000 on PyPI