- Meta는 모바일 기기에서 실행 가능한 경량화된 양자화 Llama 모델을 출시
- 8K 이하의 짧은 컨텍스트 애플리케이션에 맞춤
- 양자화된 모델은 2-4배의 속도 향상과 56%의 모델 크기 감소, 41%의 메모리 사용량 감소를 달성함.
-
양자화 기법
- Llama 3.2 1B 및 3B 모델에 대해 Quantization-Aware Training(QAT)과 SpinQuant 기법을 사용함.
- QAT는 정확성을, SpinQuant는 이식성을 우선시함.
- PyTorch의 ExecuTorch 프레임워크를 통해 두 양자화 기법을 지원함.
-
모바일 기기 최적화
- Qualcomm과 MediaTek SoC에서 실행 가능하도록 설계됨.
- Android OnePlus 12 모델에서 테스트 결과, 모델 크기와 메모리 사용량이 크게 감소함.
- 모바일 CPU와 NPU를 활용하여 성능을 최적화함.
-
양자화 설정
- PyTorch의 ExecuTorch 추론 프레임워크와 Arm CPU 백엔드를 고려하여 설계됨.
- 모든 선형 레이어를 4비트 그룹 단위로 양자화하고, 활성화는 8비트 동적 양자화를 사용함.
-
양자화 인식 훈련(QAT)과 LoRA
- Llama 3.2 모델의 훈련 중 양자화 효과를 시뮬레이션하는 QAT를 사용하여 저정밀 환경에서의 성능 최적화
- QAT 초기화를 위해 BF16 Llama 3.2 모델 체크포인트를 활용하고 QAT로 추가 SFT 훈련을 수행
- QAT 모델의 백본을 고정하고 LoRA 어댑터를 적용한 채 SFT를 한 번 더 수행
- torchao API를 사용하여 QAT를 수행함
-
SpinQuant
- QAT + LoRA보다 덜 정확하지만, 데이터셋 접근 없이도 작동 가능하여 이식성이 뛰어남.
- 다양한 하드웨어 타겟과 사용 사례에 맞춰 모델을 양자화할 수 있음.
-
결과
- QLoRA 방식이 모든 면에서 가장 우수한 품질을 보임
- BF16 대비 디코드 지연 시간은 평균 2.5배, 프리필 지연 시간은 4.2배 개선됨
- 모델 크기는 평균 56% 감소, 메모리 사용량은 41% 감소함
- Android OnePlus 12 기기에서 측정되었으며, iOS 기기에서는 정확도는 유사하나 성능은 평가되지 않음
GN⁺의 정리
- Meta의 양자화된 Llama 모델은 모바일 기기에서의 실행을 위한 경량화와 성능 최적화를 목표로 함
- QAT와 SpinQuant 기법을 통해 정확성과 이식성을 모두 고려한 양자화 모델을 제공함
- 모바일 CPU와 NPU를 활용하여 성능을 극대화하며, 다양한 하드웨어에서의 사용을 지원함
- 다양한 모바일 플랫폼과 협력사들과의 긴밀한 협업을 통해 실제 제품에 적용 가능한 수준의 솔루션을 제공한 것으로 보임
- 메타의 Llama 모델은 개방성, 수정 가능성, 비용 효율성 측면에서 경쟁력이 있다고 평가받고 있으며, 지속적인 혁신을 통해 모바일에서의 강력한 AI 경험을 제공할 것으로 기대됨