서버 GPU를 벗어나는 세 가지 경로
서버 추론만이 유일한 배포 방식은 아니야. 모바일과 엣지 환경은 요구 사항이 크게 다르며 PyTorch 생태계에는 이를 위한 전용 도구가 있어:
- ExecuTorch: PyTorch의 모바일·엣지 실행 환경이야. iOS, Android, 마이크로컨트롤러를 대상으로 하며 기존 PyTorch Mobile의 후속 경로야.
- Core ML: Apple의 기기 내 머신러닝 프레임워크야. iOS와 macOS에서 높은 성능을 내며
coremltools를 통해 PyTorch 모델을 변환할 수 있어. - MLX: Apple Silicon을 위해 Apple이 만든 네이티브 머신러닝 프레임워크야. 통합 메모리 구조를 중심으로 설계되어 Mac이나 iPhone에서 성능을 끝까지 끌어내고 싶을 때 적합해.
변환 흐름
ExecuTorch와 Core ML의 현대적인 경로는 비슷해. 먼저 torch.export로 그래프를 포착한 뒤 실행 환경에 맞는 형식으로 변환해. ExecuTorch는 앱에 넣을 .pte 파일을 만들고 Core ML은 .mlpackage를 만들어.
MLX에서는 PyTorch 가중치를 MLX 형식으로 변환하거나 모델을 MLX로 직접 다시 구현하는 두 방법이 있어. 가중치 변환은 여러 구조에서 작동하고, 직접 구현하면 이식 노력이 들지만 가장 좋은 성능을 얻을 수 있어.