대규모 모델의 분산 학습과 추론을 더 쉽고 효율적으로 지원하는 딥러닝 최적화 라이브러리입니다.
pytorch/executorch
내보낸 모델을 휴대폰, 노트북, 브라우저, 마이크로컨트롤러에서 실행하는 PyTorch의 온디바이스 추론 스택입니다.
- 스타
- 5,107
- 포크
- 1,207
- 열린 이슈
- 1,328
- 마지막 커밋
- 5시간 전
어떤 프로젝트인가요?
ExecuTorch는 PyTorch 모델을 torch.export로 캡처한 다음, 대상 하드웨어에 맞는 백엔드별 .pte 프로그램으로 변환하고 C++, Python, Swift/Objective-C, Kotlin/Java 또는 JavaScript API를 통해 실행합니다. 휴대폰과 노트북부터 임베디드 시스템과 마이크로컨트롤러까지 다양한 대상을 지원합니다.
하드웨어 가속은 파티셔닝 방식으로 처리합니다. 지원되는 그래프 영역은 XNNPACK, Core ML, Vulkan, Qualcomm, Arm Ethos-U 등의 CPU, GPU, NPU 또는 DSP 백엔드로 위임하고, 나머지는 이식성 있는 CPU 커널로 처리합니다. 선택적 빌드를 사용하면 배포에 필요한 연산자와 delegate만 링크하도록 런타임을 줄일 수 있습니다. ETDump, ETRecord 및 수치 디버깅 도구는 프로파일링과 정확도 검증을 지원합니다.
프로젝트에는 LLM, 음성, 비전 예제와 실험 단계의 로컬 OpenAI 호환 서버도 포함되어 있습니다. 모델은 동일한 내보내기 흐름을 따르지만, 대상별로 백엔드 구성을 설정하고 정확도와 성능을 검증해야 합니다.
핵심 기능
- 01torch.export를 통해 PyTorch 모델을 온디바이스 실행용 .pte 프로그램으로 내보냅니다.
- 02지원되는 그래프 영역을 XNNPACK, Core ML, Vulkan, Qualcomm, Arm 등의 백엔드로 위임합니다.
- 03C++, Python, Swift, Kotlin/Java 및 JavaScript 런타임 API를 제공합니다.
- 04배포에 필요한 연산자만 포함하도록 선택적 빌드를 지원합니다.
- 05프로파일링과 정확도 검증을 위한 ETDump, ETRecord 및 수치 디버깅 기능을 제공합니다.
- 06LLM, 음성 인식, 음성 합성 및 컴퓨터 비전 예제를 포함합니다.
활용 사례
- 서버 없이 Android 또는 iOS 앱에서 PyTorch 비전 또는 언어 모델을 실행합니다.
- Arm Cortex-M 또는 Ethos-U 하드웨어를 사용하는 마이크로컨트롤러나 DSP에 신경망을 배포합니다.
- 데스크톱 또는 노트북 애플리케이션에 로컬 LLM이나 음성 모델을 포함해 배포합니다.
- 여러 하드웨어 백엔드에서 동일한 모델의 정확도와 지연 시간을 비교합니다.
빠른 시작
- 1
최신 안정 버전 Python 패키지를 설치합니다(Python 3.11–3.15).
pip install executorch - 2
README의 Add 예제를 스크립트로 저장하고 실행해 모델을 내보내고, XNNPACK용으로 변환한 다음 실행합니다.
사용 전 알아둘 점
- Core ML, Qualcomm 등의 가속기를 대상으로 하려면 해당 백엔드 전용 종속 항목과 별도의 내보내기 작업이 필요합니다.
- 일부 기능은 실험적이거나 Main/nightly로 표시되어 있으며, 정식 출시 전에 변경될 수 있습니다.
- nightly 빌드에는 PyTorch nightly를 별도로 설치해야 하며, CUDA wheel은 Linux에서만 제공됩니다.
- 미리 빌드된 Python wheel은 Linux x86-64, Linux AArch64, macOS arm64, Windows x86-64만 지원합니다. 그 외 호스트에서는 소스 빌드가 필요합니다.
토픽
자주 묻는 질문
- executorch은(는) 무엇인가요?
- 내보낸 모델을 휴대폰, 노트북, 브라우저, 마이크로컨트롤러에서 실행하는 PyTorch의 온디바이스 추론 스택입니다. ExecuTorch는 PyTorch 모델을 torch.export로 캡처한 다음, 대상 하드웨어에 맞는 백엔드별 .pte 프로그램으로 변환하고 C++, Python, Swift/Objective-C, Kotlin/Java 또는 JavaScript API를 통해 실행합니다. 휴대폰과 노트북부터 임베디드 시스템과 마이크로컨트롤러까지 다양한 대상을 지원합니다.
- executorch은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- executorch은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- executorch은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. executorch의 마지막 커밋은 2026년 10월 20일입니다.
- executorch은(는) 어디에 사용할 수 있나요?
- 서버 없이 Android 또는 iOS 앱에서 PyTorch 비전 또는 언어 모델을 실행합니다. Arm Cortex-M 또는 Ethos-U 하드웨어를 사용하는 마이크로컨트롤러나 DSP에 신경망을 배포합니다. 데스크톱 또는 노트북 애플리케이션에 로컬 LLM이나 음성 모델을 포함해 배포합니다. 여러 하드웨어 백엔드에서 동일한 모델의 정확도와 지연 시간을 비교합니다.
- executorch는 어떻게 설치하나요?
- 최신 안정 버전 Python 패키지를 설치합니다(Python 3.11–3.15).: pip install executorch README의 Add 예제를 스크립트로 저장하고 실행해 모델을 내보내고, XNNPACK용으로 변환한 다음 실행합니다.
- executorch은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/pytorch/executorch
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Python 및 C++ API를 제공하는, 머신러닝 모델을 구축하고 배포하기 위한 엔드투엔드 오픈소스 플랫폼입니다.
OpenAI 호환 API로 대규모 언어 모델을 빠르고 메모리 효율적으로 실행하고 서빙하는 라이브러리 및 서버입니다.
Ultralytics YOLOv5는 객체 탐지, 인스턴스 분할, 이미지 분류를 지원하며 학습과 내보내기를 제공하는 PyTorch 기반 컴퓨터 비전 툴킷입니다.
대형 언어 모델을 레이어별로 실행해 양자화 없이도 70B급 모델을 단일 4GB GPU에서 추론할 수 있는 Python 라이브러리입니다.
Transformer 모델의 GPU 학습과 추론을 위한 메모리 효율적인 exact attention 커널 FlashAttention의 공식 구현입니다.