피드로 돌아가기
Making LLMs lighter with AutoGPTQ and transformers
Hugging Face BlogHugging Face Blog
AI/ML

Hugging Face가 AutoGPTQ를 Transformers에 통합해 LLM을 2~8비트 정밀도로 양자화하고 약 4배의 메모리 절감 달성

Making LLMs lighter with AutoGPTQ and transformers

2023년 8월 23일8intermediate

Context

대규모 언어 모델(LLM)의 훈련과 배포가 일반 소비자 하드웨어의 성능 요구사항을 급격히 초과하고 있다. 모델 접근성 민주화를 위해 경량화된 모델 배포 방식이 필수적이다.

Technical Solution

  • GPTQ 알고리즘 적용: 후훈련 양자화(PTQ) 방식으로 사전학습된 모델을 보정 데이터셋으로 2~8비트 정밀도로 변환
  • 혼합 정밀도 스킴: 가중치는 int4로 양자화하고 활성화는 float16으로 유지하며, 추론 시 가중치를 즉시 역양자화
  • 레이어별 독립 압축: Optimal Brain Quantization(OBQ) 프레임워크를 개선해 각 가중치 행을 독립적으로 양자화
  • Hessian 기반 오차 보정: 양자화된 단일 가중치의 오차를 보정하기 위해 아직 양자화되지 않은 가중치를 폐형 공식으로 업데이트
  • 다중 GPU 플랫폼 지원: Nvidia GPU와 RoCm 기반 AMD GPU에서 모두 작동하도록 최적화

Impact

  • 메모리 사용량 약 4배 절감(int4 양자화 기준)
  • 4비트 양자화 시 정확도 저하 무시할 수 있는 수준
  • 소형 배치 크기의 추론 속도가 fp16 기준선과 비교 가능
  • 양자화 속도 개선: OBQ 대비 GPTQ는 BERT 모델(336M) 2GPU시간 vs Bloom 모델(176B) 4GPU시간 미만

Key Takeaway

PTQ 방식의 GPTQ는 전체 훈련 비용 없이 거대 모델을 경량화할 수 있으며, 계층별 최적화와 오차 보정을 통해 정확도를 유지하면서 메모리-속도 트레이드오프를 효과적으로 관리할 수 있다.


LLM을 배포해야 하는 팀에서 AutoGPTQ의 Transformers API를 사용하면 사전학습된 모델을 보정 데이터셋 몇 개와 수 시간의 GPU 시간으로 4배 메모리 절감된 양자화 모델을 얻을 수 있으며, 특히 Llama, OPT, GPT-Neo, GPT-NeoX 등 디코더 전용 아키텍처 모델에서 정확도 손실 없이 추론 가능하다.

원문 읽기