반응형

LLM(대형 언어 모델)을 다운로드할 때 흔히 볼 수 있는 Quantization (양자화) 기호를 읽는 방법을 정리해볼게요.


1. 기본 개념

LLM을 사용할 때 모델의 크기를 줄이고 속도를 높이기 위해 양자화(Quantization) 를 적용하는 경우가 많습니다. 이를 나타내는 기호가 모델 파일 이름에 포함됩니다.

예를 들어:

mistral-7B.Q4_K_M.gguf
llama-3-8B.Q5_1.gguf

이런 식으로 .gguf, .ggml, .safetensors 등의 확장자 앞에 Q4_K_M, Q5_1 같은 기호가 붙습니다.


2. 양자화 기호 분석

양자화 기호는 보통 다음과 같은 구조로 되어 있습니다.

🔹 QX (X 비트 양자화)

  • Q4, Q5, Q6 등으로 나타남
  • 숫자는 사용되는 비트 수를 의미
    • Q4 → 4비트 양자화 (더 작은 크기, 성능은 조금 감소)
    • Q5 → 5비트 양자화 (균형 잡힌 성능)
    • Q6 → 6비트 양자화 (더 높은 정밀도)

🔹 세부 양자화 방식

  • Q4_0, Q4_1, Q5_0, Q5_1 같은 형식으로 세부 옵션이 붙음
  • 예시: Q4_0 vs Q4_1
    • _0: 기본적인 양자화
    • _1: 좀 더 정밀한 양자화 방식 (더 많은 가중치 유지)

🔹 K-서픽스 (K-양자화)

  • 예시: Q4_K_M, Q5_K_S
  • K가 붙으면 더 정교한 양자화 알고리즘 사용
  • M, S 같은 추가 기호는 세부적인 변형 방식

3. 실제 예제 분석

모델 파일명 의미

mistral-7B.Q4_K_M.gguf Mistral 7B 모델, 4비트 K-양자화 (M 변형), gguf 포맷
llama-3-8B.Q5_1.gguf LLaMA 3 8B 모델, 5비트 양자화 (더 정밀한 _1 방식)
gemma-2B.Q6_K.gguf Gemma 2B 모델, 6비트 K-양자화

4. 어떤 양자화 모델을 선택해야 할까?

  • RAM이 적으면? → Q4_0 또는 Q4_K
  • 균형 잡힌 선택? → Q5_1
  • 최대한 정밀한 모델이 필요하면? → Q6_K

양자화 모델은 작은 메모리로도 실행할 수 있도록 도와주지만, 정확도가 조금씩 낮아질 수 있습니다. 따라서 사용할 환경 (RAM, 속도, 정확도) 에 맞춰 선택하면 됩니다.


🚀 요약

  1. Q4, Q5, Q6 → 숫자가 클수록 더 정밀한 모델
  2. _0, _1 → _1이 더 정밀함
  3. K가 붙으면 더 정교한 양자화 알고리즘 사용
  4. 작은 RAM에서는 Q4, 높은 정밀도 필요하면 Q6 추천

이제 LLM 다운로드할 때 파일명만 보고도 쉽게 이해할 수 있겠죠? 😊

+ Recent posts