Библиотека для оптимизации глубокого обучения, упрощающая и ускоряющая распределённое обучение и инференс больших моделей.
pytorch/executorch
Стек PyTorch для инференса на устройствах: запуск экспортированных моделей на телефонах, ноутбуках, в браузерах и на микроконтроллерах.
- Звёзды
- 5,107
- Форки
- 1,207
- Открытые issues
- 1,328
- Последний коммит
- 11 часов назад
Что это?
ExecuTorch принимает модель PyTorch, захватывает её с помощью torch.export, преобразует в программу .pte для конкретного бэкенда и запускает через API C++, Python, Swift/Objective-C, Kotlin/Java или JavaScript. Поддерживаются устройства от телефонов и ноутбуков до встроенных систем и микроконтроллеров.
Аппаратное ускорение обеспечивается разбиением графа: поддерживаемые его части передаются CPU, GPU, NPU или DSP-бэкендам, например XNNPACK, Core ML, Vulkan, Qualcomm и Arm Ethos-U, а для остальных используются переносимые CPU-ядра. Сборку runtime можно уменьшить с помощью selective build, чтобы подключать только необходимые для развёртывания операторы и делегаты. ETDump, ETRecord и инструменты численной отладки помогают профилировать модели и проверять точность.
В проект также входят примеры для LLM, речи и компьютерного зрения, а ещё экспериментальный локальный сервер с совместимостью с OpenAI API. Модели запускаются по одному и тому же процессу экспорта, но для каждой целевой платформы нужны собственная конфигурация бэкенда и проверка точности и производительности.
Ключевые возможности
- 01Экспортирует модели PyTorch через torch.export в программы .pte для запуска на устройствах.
- 02Передаёт поддерживаемые части графа бэкендам XNNPACK, Core ML, Vulkan, Qualcomm, Arm и другим.
- 03Предоставляет runtime API для C++, Python, Swift, Kotlin/Java и JavaScript.
- 04Поддерживает selective build, позволяя включать только необходимые для развёртывания операторы.
- 05Предлагает ETDump, ETRecord и численную отладку для профилирования и проверки точности.
- 06Содержит примеры для LLM, распознавания и синтеза речи, а также компьютерного зрения.
Сценарии использования
- Запуск модели компьютерного зрения или языковой модели PyTorch в приложении для Android или iOS без сервера.
- Развёртывание нейросети на микроконтроллере или DSP с оборудованием Arm Cortex-M или Ethos-U.
- Поставка локальной LLM или речевой модели в приложении для настольного компьютера или ноутбука.
- Сравнение точности и задержки одной модели на нескольких аппаратных бэкендах.
Быстрый старт
- 1
Установите последнюю стабильную версию пакета Python (Python 3.11–3.15).
pip install executorch - 2
Сохраните пример Add из README в виде скрипта и запустите его, чтобы экспортировать модель, преобразовать её для XNNPACK и выполнить.
Что важно знать
- Для работы с Core ML, Qualcomm и другими ускорителями требуются зависимости соответствующего бэкенда и отдельный экспорт.
- Некоторые функции экспериментальные или помечены как Main/nightly и могут измениться до выпуска.
- Для сборок nightly требуется отдельно установить PyTorch nightly, а CUDA wheels доступны только для Linux.
- Предварительно собранные Python wheels доступны только для Linux x86-64, Linux AArch64, macOS arm64 и Windows x86-64; для других хостов требуется сборка из исходного кода.
Темы
Частые вопросы
- Что такое executorch?
- Стек PyTorch для инференса на устройствах: запуск экспортированных моделей на телефонах, ноутбуках, в браузерах и на микроконтроллерах. ExecuTorch принимает модель PyTorch, захватывает её с помощью torch.export, преобразует в программу .pte для конкретного бэкенда и запускает через API C++, Python, Swift/Objective-C, Kotlin/Java или JavaScript. Поддерживаются устройства от телефонов и ноутбуков до встроенных систем и микроконтроллеров.
- executorch можно использовать бесплатно? Какая у него лицензия?
- executorch распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- executorch всё ещё поддерживается?
- Активно поддерживается. Последний коммит в executorch — 20 окт. 2026 г..
- Для чего можно использовать executorch?
- Запуск модели компьютерного зрения или языковой модели PyTorch в приложении для Android или iOS без сервера. Развёртывание нейросети на микроконтроллере или DSP с оборудованием Arm Cortex-M или Ethos-U. Поставка локальной LLM или речевой модели в приложении для настольного компьютера или ноутбука. Сравнение точности и задержки одной модели на нескольких аппаратных бэкендах.
- Как установить executorch?
- Установите последнюю стабильную версию пакета Python (Python 3.11–3.15).: pip install executorch Сохраните пример Add из README в виде скрипта и запустите его, чтобы экспортировать модель, преобразовать её для XNNPACK и выполнить.
- Где скачать executorch?
- Исходный код и инструкции по установке — на GitHub: https://github.com/pytorch/executorch
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Open source-платформа для полного цикла разработки и развёртывания моделей машинного обучения с API для Python и C++.
Быстрая и эффективная по памяти библиотека и сервер для запуска и обслуживания больших языковых моделей через API, совместимый с OpenAI.
Ultralytics YOLOv5 — библиотека компьютерного зрения на базе PyTorch для детекции объектов, сегментации экземпляров и классификации изображений, с обучением и экспортом моделей.
Библиотека Python, которая запускает большие языковые модели послойно и позволяет выполнять инференс моделей класса 70B на одной GPU с 4 ГБ памяти без квантования.
Официальная реализация FlashAttention — точного и экономного по памяти attention-ядра для обучения и инференса Transformer-моделей на GPU.