Gemma 4 양자화 정리 - bf16, IQ, K, IT, MXFP4가 뭐가 다른가
Gemma 4 모델을 로컬에서 돌려보려고 허깅페이스를 뒤지다 보면, 모델명 뒤에 이상한 꼬리표가 끝도 없이 붙어 있다.
bf16Q4_K_MIQ4_XSMXFP4nvfp4it
처음 보면 “같은 Gemma 4인데 왜 파일이 이렇게 많지?” 싶다. 나도 그랬다. 그런데 조금 뜯어보니, 이건 서로 다른 모델이 아니라 같은 모델을 어떤 방식으로 압축했고, 어떤 용도로 튜닝했는지를 이름으로 설명한 것이었다.
이 글은 그때 공부한 내용을 정리한 기록이다. 특히 Mac Mini 24GB에서 뭘 받아야 하는지까지 기준을 남겨두려고 썼다.
먼저 큰 그림부터: 파일명이 말해주는 것은 세 가지다
모델 파일명은 보통 아래 세 층위의 정보를 담고 있다.
- 정밀도
bf16,8bit,4bit처럼 몇 비트로 저장했는지 - 압축 레시피
Q,IQ,K,XS,M,XL,MXFP4처럼 같은 4비트 안에서도 어떻게 압축했는지 - 용도
it처럼 대화형 모델인지, 베이스 모델인지
즉 Gemma-4-...-it-IQ4_XS 같은 이름은,
- Gemma 4 계열이고
- instruction tuned 되어 있고
- 중요도 기반 4비트 압축을 썼고
- 그 안에서도 비교적 작은 사이즈 쪽 설정이라는 뜻이다.
1. bf16, 8bit, 4bit는 무엇이 다른가
이 부분은 가장 단순하다. 숫자가 작아질수록 모델이 작아지고 빨라지지만, 오차는 늘어난다.
대충 이렇게 이해하면 된다.
| 구분 | 메모리 사용 | 품질 | 체감 |
|---|---|---|---|
bf16 | 가장 큼 | 가장 좋음 | 원본에 가장 가까움 |
8bit | 큼 | 좋음 | 고품질이지만 여전히 무거움 |
4bit | 훨씬 작음 | 실사용 가능 | 속도와 메모리의 타협점 |
2bit~3bit | 매우 작음 | 손실 큼 | ”일단 돌린다”에 가까움 |
양자화는 쉽게 말해 모델의 숫자를 덜 정밀하게 저장해서 RAM에 얹을 수 있게 만드는 기술이다. 원본은 똑똑하지만 무겁고, 압축할수록 가벼워지지만 조금씩 둔해진다.
로컬 LLM에서는 보통 여기서 타협한다.
- 최고 품질이 필요하면
bf16 - 현실적인 고품질이면
8bit - 개인 장비에서 가장 많이 쓰는 구간은
4bit
2. 그런데 왜 같은 4bit가 이렇게 여러 종류인가
여기서부터가 진짜 헷갈리는 부분이다.
예를 들어 4비트라고 해도 이런 식으로 다시 갈린다.
Q4_K_MIQ4_XSIQ4_NLMXFP4nvfp4
겉으로는 전부 4비트인데, 실제로는 어떤 값을 더 보존하고, 어떤 단위로 묶어서 압축하고, 스케일을 어떻게 잡는지가 다르다.
즉 “4비트”는 대분류일 뿐이고, 그 뒤의 접미사가 세부 성격을 정한다.
3. Q와 IQ 차이: 그냥 압축하느냐, 중요한 곳을 덜 깎느냐
GGUF 계열에서 자주 보이는 구분이 Q와 IQ다.
Q: 일반적인 양자화IQ: 중요도 기반 양자화
핵심은 단순하다. IQ는 모든 값을 똑같이 줄이지 않고, 중요한 부분은 조금 더 보존하려는 계열이다.
그래서 같은 4비트라도 보통은 이렇게 받아들여진다.
Q4_*: 표준형 4비트IQ4_*: 4비트인데 품질 보존을 더 노린 쪽
실사용 관점에서는 같은 용량이면 IQ 쪽이 더 낫다고 느끼는 경우가 많다. 특히 24GB 같은 제한된 메모리에서 “무조건 더 작은 것”보다 “같은 크기에서 덜 망가지는 것”이 중요해진다.
다만 이건 어디까지나 계열 설명이다. 실제 품질은 모델 구조, 변환자, 배포자가 사용한 설정에 따라 달라진다.
4. K는 무엇인가: 레이어별로 다르게 압축하는 쪽
Q4_K_M, Q5_K_S 같은 이름의 K도 자주 보인다.
이건 대체로 한 가지 방식으로 전체를 균일하게 누르는 대신, 레이어나 블록 특성에 따라 압축을 더 정교하게 나눈 계열로 이해하면 편하다. 실전에서는 오래된 단순 Q4_0류보다 Q4_K_* 쪽이 더 선호되는 경우가 많다.
즉 이런 느낌이다.
Q4_0: 예전의 단순한 4비트Q4_K_M: 좀 더 다듬어진 현대적인 4비트
같은 4비트라도 K 계열이 보이면 보통 그쪽부터 보게 된다.
5. XS, S, M, XL은 무엇인가
이건 옷 사이즈처럼 생각하면 된다.
XXS,XS: 더 공격적으로 줄인 쪽SM: 대개 균형형L,XL: 용량을 더 쓰고 품질 보존을 노린 쪽
예를 들어 Q4_K_M과 Q4_K_XL이 있으면, 둘 다 4비트지만 XL 쪽이 대체로 더 크고 품질 보존 쪽으로 기운다. 반대로 XS는 더 빡세게 압축한 쪽이다.
그래서 이름만 봐도 어느 정도 감이 온다.
- 작고 가볍게 돌리고 싶다 →
XS,S - 균형을 원한다 →
M - 메모리가 허용하는 선에서 최대한 품질을 챙기고 싶다 →
XL
6. MXFP4와 NVFP4는 왜 따로 특별 취급받나
이 둘은 단순히 “4비트 하나 더”가 아니라, 최근 계열의 더 정교한 4비트 표현 방식으로 보는 편이 맞다.
내가 이해한 핵심은 이렇다.
- 일반 4비트: 숫자를 거칠게 줄인다
MXFP4: 더 작은 단위로 나눠 각 구간에 맞게 스케일을 잡는다NVFP4: 그보다 더 공격적으로 정밀도를 보존하려는 최신 계열
그래서 같은 4비트라도 기대치는 보통 이렇게 올라간다.
일반 4bit < MXFP4 < NVFP4
즉 “용량은 4비트급인데, 머리는 일반 4비트보다 덜 망가졌으면 좋겠다”는 요구에 맞춰 나온 쪽이다.
특히 Apple Silicon용 MLX 변환본이나 최신 배포본을 보다 보면 mxfp4, mxfp8, nvfp4 같은 이름이 점점 늘고 있는데, 그 이유가 여기에 있다. 같은 메모리 예산에서 더 나은 품질을 뽑으려는 경쟁이다.
7. it는 사실 비트보다 더 중요할 수도 있다
모델명에 붙은 it는 Instruction Tuned의 약자다.
이건 양자화 방식이 아니라, 모델이 사용자 지시를 따르도록 후처리 학습이 되었는지를 뜻한다.
차이는 꽤 크다.
it없음: 문장 이어쓰기 성향이 강한 베이스 모델it있음: 질문에 답하고, 요약하고, 지시를 수행하는 챗봇형 모델
실제로 일반 사용자가 원하는 건 대부분 it다.
- 대화
- 코드 도움
- 번역
- 요약
- 질의응답
이런 용도라면 거의 무조건 it가 붙은 모델을 고르는 편이 맞다. it가 없는 모델은 보통 연구용, 파인튜닝용, 특수 목적 튜닝용 재료에 가깝다.
한마디로 정리하면 이렇다.
it있음: 비서it없음: 원재료
8. 파일명 앞의 UD- 같은 건 표준이 아니다
여기서 한 가지 주의할 점이 있다.
예를 들어 이런 이름:
UD-IQ4_XSUD-Q4_K_M
IQ, Q, K처럼 널리 쓰이는 표기와 달리, 앞의 접두사(UD- 등)는 배포자나 변환자가 붙인 이름일 수 있다. 즉 이 부분은 업계 공통 표준이라고 보기 어렵다.
이럴 때는 앞의 접두사보다 뒤의 핵심 패턴을 읽는 편이 낫다.
IQ4_XSQ4_K_MQ5_K_M
즉 파일명 전체를 외우기보다, 표준적으로 반복되는 조각을 읽는 습관이 더 중요했다.
9. 그럼 Mac Mini 24GB에서는 뭘 고르는 게 맞나
내 기준은 단순하다. 24GB라고 해서 24GB를 전부 모델에 쓸 수는 없다.
- macOS가 메모리를 먹고
- 브라우저, 에디터, 터미널도 먹고
- 컨텍스트가 길어질수록 KV cache도 늘어난다
그래서 체감상 모델 자체는 13GB~17GB 사이가 가장 마음 편한 구간이다.
이 기준으로 보면 선택은 대략 이렇게 정리된다.
가장 무난한 추천
IQ4_XSIQ4_NLQ4_K_M
이 구간은 대체로 24GB Mac에서 품질과 안정성의 균형이 좋다. 특히 긴 대화나 코딩처럼 컨텍스트가 계속 누적되는 작업에서는, 모델 파일 크기만 간신히 맞추는 것보다 여유 메모리가 남는 쪽이 훨씬 낫다.
품질을 조금 더 욕심내는 경우
MXFP4Q4_K_XL
가능은 하지만, 다른 앱을 많이 띄우거나 세션이 길어지면 압박이 올 수 있다. “된다”와 “쾌적하다”는 다르다.
메모리가 너무 빡빡할 때
IQ3_*Q3_K_*
품질 손실은 더 있지만, 속도와 안정성은 좋아질 수 있다. 응답이 너무 버벅이거나 스왑이 심하면 이쪽으로 한 단계 내리는 게 현실적이다.
굳이 피할 것
BF16- 일부
8bit
24GB 장비에서는 돌아가더라도 여유가 거의 없어서 실사용이 불편할 가능성이 높다.
10. 내 결론: 24GB 맥미니라면 4비트의 “좋은 버전”을 먼저 본다
결국 내가 내린 기준은 이거였다.
- 챗봇처럼 쓸 거면
it - 24GB Mac이면 우선
4bit - 가능하면
IQ나K계열 - 최신 변환본이 있으면
MXFP4,NVFP4도 우선 검토
한 줄 추천으로 줄이면 이렇다.
- 가장 먼저 볼 것:
it + IQ4_*또는it + Q4_K_M - 최신 변환본이 좋게 나와 있으면:
it + MXFP4또는it + NVFP4 - 너무 무겁거나 스왑이 생기면:
IQ3_*로 한 단계 낮추기
중요한 건 “비트 숫자만” 보는 게 아니라는 점이다. 이제는 나도 모델명을 볼 때,
- 몇 비트인지
it인지Q인지IQ인지K인지XS/M/XL어느 쪽인지
이 다섯 개부터 먼저 읽는다. 이것만 익숙해져도 허깅페이스에서 파일 목록을 볼 때 훨씬 덜 막막해진다.
로컬 LLM을 만질수록 느끼는 건, 결국 이런 이름들이 다 내 장비에 맞는 현실적인 타협점을 고르기 위한 힌트라는 점이다. 특히 24GB 맥처럼 “아예 못 돌리는 건 아닌데 아무거나 고르면 바로 빡빡해지는” 환경에서는 더 그렇다.
이제 적어도 bf16, IQ4_XS, Q4_K_M, MXFP4, it 정도는 보고 어떤 성격의 파일인지 감이 온다. 그 정도만 돼도 모델 고르는 시간이 꽤 줄어든다.