본문으로 건너뛰기

[llm-compressor] GPTQ Block Quantization 지원

PR 링크: vllm-project/llm-compressor#2533 상태: Merged | 변경: +47/-0

들어가며

GPTQ는 LLM 양자화의 대표적인 기법으로, Hessian 기반의 최적 양자화를 수행한다. 이 PR은 GPTQ에 block quantization을 추가한다. Block quantization은 가중치 행렬을 2D 블록으로 분할하여 각 블록별로 독립적인 스케일 팩터를 사용하는 방식이다.

핵심 코드 분석

Block quantization vs. 기존 per-channel/per-group:

Per-channel: 전체 채널에 하나의 스케일 -> 양자화 오차 큼
Per-group:   group_size 단위로 스케일 -> 중간 수준의 정밀도
Block:       2D 블록(예: 128x128) 단위로 스케일 -> 높은 정밀도

47줄의 변경으로 기존 GPTQ 구현에 block 분할 로직을 추가했다. 이는 vLLM의 block quantization 커널과 호환되는 형식으로 양자화된 가중치를 생성한다.

왜 이게 좋은가

  1. 양자화 품질 향상: 블록 단위 스케일로 per-group 대비 정밀도 향상
  2. vLLM 호환: vLLM의 block quantization 추론 커널과 직접 호환
  3. FP8 시너지: block quantization은 FP8 양자화에서 표준 방식
  4. 최소 변경: 47줄 추가로 기존 GPTQ 파이프라인을 확장

정리

GPTQ에 block quantization을 추가하여 양자화 품질과 vLLM 호환성을 동시에 개선한 PR이다. 특히 FP8 block quantization이 표준이 되어가는 추세에서 중요한 기능이다.

참고 자료


이 글은 AI(Claude)의 도움을 받아 작성되었습니다. 코드 분석 내용은 실제 PR diff를 기반으로 합니다.

댓글

관련 포스트

PR Analysis 의 다른글