Gemma 4 31B 로컬에 깔고 Claude랑 일주일 붙여본 결과
4월 초 공개된 Gemma 4 31B를 RTX 4090에 올려놓고 일주일 동안 실제 파이썬 작업으로 Claude Opus 4.6, GPT-5.4와 정면으로 붙여봤습니다. 벤치마크 말고 신규 기능 작성, 디버깅, 리팩터링, 테스트에서 어디까지 따라오고 어디서 무너지는지 솔직하게 정리했어요.
지난주에 GPU 팬이 쉴 새 없이 돌아갔어요. 4월 초에 풀린 Gemma 4 31B를 RTX 4090에 올려놓고 일주일 내내 굴렸거든요. 새 모델 나올 때마다 벤치마크 점수는 일단 의심하고 보는 편이에요. LiveCodeBench 80점이 무슨 의미인지보다, 내 프로젝트에서 진짜 일을 해주느냐가 훨씬 중요해서.
그래서 똑같은 파이썬 작업 5가지를 Gemma 4 31B, Claude Opus 4.6, GPT-5.4한테 같은 컨텍스트로 던져봤어요. FastAPI 엔드포인트 추가, 깨진 테스트 디버깅, 리팩터링, 테스트 작성, 처음 보는 코드 설명. 이 글은 "오픈소스로 갈아탈 만한가" 고민 중인 사람용입니다.
Gemma 4가 뭐가 다른가
먼저 짧게. 4월 2일에 구글이 푼 모델이고 사이즈가 네 종류예요. E2B/E4B는 노트북·모바일용 엣지 모델, 26B는 MoE 중간급, 31B Dense가 플래그십. 코딩이면 31B가 정답이고, 컨텍스트는 큰 모델 기준 256K까지 갑니다. 코드베이스 통째로 한 프롬프트에 욱여넣을 수 있다는 뜻.
근데 진짜 중요한 건 라이선스. Apache 2.0이라 사용량 제한 없고, 자기 서버에 깔아서 돌리고, 파인튜닝하고, 거기서 만든 제품 팔아도 됩니다. 무료라는 게 핵심이 아니라 "내 마음대로 써도 된다"는 게 핵심.
세팅은 10분쯤 걸려요:
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "google/gemma-4-31b-it"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id, torch_dtype=torch.bfloat16, device_map="auto"
)
VRAM 24GB 이상이어야 31B가 제대로 돌아간다는 점만 미리 알아두세요. 4090이면 빠듯하지만 굴러갑니다.
1. 신규 기능 작성
세 모델한테 똑같이 던진 프롬프트:
"인증 엔드포인트에 rate limiting 추가해줘. 기존 Redis 설정 그대로 쓰고, 로그인은 토큰 갱신보다 더 빡세게 제한 걸어."
- Claude Opus 4.6: 한 방에 정답. 기존 코드 패턴까지 자동으로 맞춤
- GPT-5.4: 정답이긴 한데 프로젝트 패턴 맞추려면 손봐야 했음
- Gemma 4 31B: 로직은 한 방에 통과. 프로젝트 네이밍 컨벤션 한 군데를 놓쳤는데, 1분이면 고칠 수준
256K 컨텍스트가 여기서 빛났어요. Redis 설정이랑 기존 인증 코드 통째로 던져도 다 읽고 답함. 로컬에서 돌리는 모델치고는 예상보다 한참 위였습니다.
(잠깐 딴 얘긴데, 사내 코드를 외부 API에 안 올려도 된다는 점이 진짜 마음 편하더라고요. 컴플라이언스 부서랑 입씨름 안 해도 되는 건 돈 주고도 살 만한 가치예요)
2. 디버깅
여기서 격차가 클 줄 알았는데 의외로 가까웠음.
깨진 테스트 + 관련 소스 던졌을 때:
- Claude: 5개 중 5개 정답. 설명 깊이도 좋음
- GPT-5.4: 5개 중 4개. 설명은 얕음
- Gemma 4: 5개 중 4개. 한 건은 증상만 잡고 진짜 원인 못 찾아서 추가 프롬프트 필요
단순한 버그는 거의 따라옵니다. 여러 파일에 걸친 복잡한 이슈에선 살짝 약해지는 패턴.
3. 리팩터링
200줄짜리 함수를 잘게 쪼개는 작업. Gemma 4가 깔끔하게 분리해줬고 네이밍도 합리적이었어요. 다만 이전에 테스트했던 Gemini 3.1 Pro만큼은 아니었음. GPT-5.4랑 비등비등한 수준.
코드베이스 컨텍스트 깊이 안 들어가도 되는 작업이면 그냥 Gemma 4한테 시켜도 됩니다.
4. 테스트 작성 — 약점 발견
해피 패스는 다 잘 짭니다. 문제는 엣지 케이스. 두 개의 테스트 스위트에서 Claude는 자동으로 잡아낸 케이스를 Gemma 4가 놓쳤어요.
근데 "이런 엣지 케이스도 커버해" 하고 명시적으로 지시하면 결과가 확 좋아져요. 지시를 잘 따르는 모델이라, 알아서 챙겨주길 바라기보단 떠먹여줘야 함.
진짜 핵심: 로컬에서 돌아간다는 것
벤치 비교는 절반의 이야기일 뿐이에요. 더 중요한 비교는 Gemma 4 vs 아무것도 안 쓰는 상태, 또는 Gemma 4 vs 사용량 제한 걸린 유료 API.
코드가 내 머신 밖으로 안 나간다는 점. 사내 코드, 클라이언트 데이터, 보안 민감한 코드 다룰 때 벤치 점수 1~2점보다 이게 훨씬 큽니다.
응답 속도는 4090 24GB 기준 일반 코딩 프롬프트에서 8~15초. API보다 느리지만 작업 흐름 끊을 정도는 아님.
솔직한 한계
전부 좋다고만 쓰면 거짓말이고요:
- VRAM 진입 장벽: 24GB가 사실상 최소선. 3060 12GB 같은 거 갖고는 31B는 못 굴림. 양자화 버전이 있긴 한데 품질 손해는 감수해야 해요
- 복잡한 멀티 파일 로직: 진짜 어려운 거 시키면 Claude Opus 4.6이 결국 이깁니다. 이건 인정해야 함
- 첫 응답 깊이: Claude는 같은 답을 줘도 "왜 이렇게 짰는지"까지 친절히 설명해주는데, Gemma 4는 좀 단답형. 학습 목적이면 아쉬움
- 속도 체감: 8~15초가 빠른 편이긴 해도 Claude API 2~3초에 비하면 흐름 끊기는 느낌이 분명히 있어요. 어쩔 수 없는 부분
결론
개인적으로는 상황 따라 둘 다 쓰는 게 답이라고 봐요. 사내 코드 만지거나 NDA 걸린 프로젝트면 Gemma 4 로컬, 까다로운 멀티 파일 작업이나 빠르게 돌려야 할 일은 Claude.
Gemma 4가 Claude Opus 4.6보다 낫다는 건 거짓말이에요. 그럴 필요도 없고. 다만 "오픈 모델 중에 진짜 써먹을 만한 거 처음 나왔다"는 점에서 의미 있는 릴리스라고 봅니다. 일주일 굴려보면서 꽤 자주 "어, 이 정도면 됐는데?" 싶었거든요.
API 청구서 매달 부담스럽거나, 코드 외부에 못 보내는 환경이면 지금 깔아서 일주일만 써보세요. 의외로 안 돌아갈 거 같았던 프로젝트가 잘 돌아갈 수도 있음.
댓글
NEXT_PUBLIC_GISCUS_*환경변수 구성 필요)