16GB VRAM 추론 모델 비교 (2026년 3월 기준)
Naran 프로젝트 핵심 추론 엔진 선택을 위한 HuggingFace 모델 비교. 중국 모델 포함, 양자화 포함.
후보 모델 요약표
| 모델 | 출처 | HF ID | VRAM (Q4_K_M) | Tool Call | Reasoning |
|------|------|-------|---------------|-----------|-----------|
| gpt-oss-20b | OpenAI 🇺🇸 | openai/gpt-oss-20b | ~14GB (MXFP4) | ⚠️ Harmony/Ollama XML | ✅ o3-mini 수준 |
| Qwen3-14B | Alibaba 🇨🇳 | Qwen/Qwen3-14B-GGUF | Q4_K_M ~9GB | ✅ 표준 OpenAI 포맷 | ✅ thinking/no-thinking 전환 |
| DeepSeek-R1-0528-Qwen3-8B | DeepSeek 🇨🇳 | deepseek-ai/DeepSeek-R1-0528 | Q4_K_M ~5GB | ⚠️ llama.cpp --jinja만 안정 | ✅ Qwen3-235B-thinking과 동급 |
| DeepSeek R1 Distill Qwen 14B | DeepSeek 🇨🇳 | deepseek-ai/DeepSeek-R1-Distill-Qwen-14B | ~9-10GB | ⚠️ 불안정 | ✅ 수학/순수 추론 특화 |
모델별 상세
Qwen3-14B (권장)
HuggingFace: Qwen/Qwen3-14B-GGUF
라이선스: Apache 2.0
GGUF 퀀트별 크기: | 퀀트 | 크기 | 비고 | |------|------|------| | Q4_K_M | 9GB | 기본 선택 | | Q6_K | 12.1GB | 권장 (context 여유) | | Q8_0 | 15.7GB | 최고 품질, OOM 주의 |
특징:
/think,/no_think명령어로 per-turn thinking 모드 전환 가능- 표준 OpenAI function calling 포맷 지원 → Harmony 포맷 불필요
- llama.cpp, Ollama, vLLM, LM Studio 모두 지원
- 한국어 포함 다국어 우수
- context 최대 32K (YaRN 활성화 시 128K)
Ollama 사용법:
ollama run qwen3:14b
# thinking 비활성화
# /no_think 를 프롬프트에 추가
DeepSeek-R1-0528-Qwen3-8B
HuggingFace: deepseek-ai/DeepSeek-R1-0528 (Qwen3-8B 증류 버전)
GGUF: unsloth/DeepSeek-R1-0528-GGUF
라이선스: MIT
특징:
- DeepSeek R1-0528의 CoT를 Qwen3-8B Base에 증류
- AIME 2024에서 Qwen3 8B 대비 +10%, Qwen3-235B-thinking과 동급
- VRAM이 작아서 여유 있게 운영 가능
Tool call 현황:
- llama.cpp
--jinja플래그 → 동작 (chat template 기반) - Ollama → "does not support tools" 에러 빈발, 미안정
- vLLM/SGLang PR 있음, 점진적 안정화 중
DeepSeek R1 Distill Qwen 14B
HuggingFace: deepseek-ai/DeepSeek-R1-Distill-Qwen-14B
라이선스: MIT
벤치마크:
- Math 500: 94.9%
- AIME: 66.7%
- IFBench(instruction following): 낮음 (0.221)
수학/순수 추론에서 강하지만 instruction following과 tool call 안정성이 떨어짐. 복잡한 agentic 시나리오에는 프롬프트 엔지니어링이 많이 필요함.
Naran 적용 판단
추론 품질: gpt-oss-20b > Qwen3-14B Q6_K ≈ DeepSeek-R1-Qwen3-8B
Tool Call: Qwen3-14B >> gpt-oss-20b(Ollama XML) >> DeepSeek 계열
설정 단순성: Qwen3-14B > DeepSeek > gpt-oss-20b
한국어: Qwen3-14B > gpt-oss-20b(영어 중심) > DeepSeek
VRAM 여유: DeepSeek-R1-Qwen3-8B(5GB) > Qwen3-14B Q4(9GB) > gpt-oss-20b(14GB)
결론:
- 중국 모델 허용 시: Qwen3-14B Q6_K — tool call 안정, reasoning, 한국어, context 여유 모두 균형
- 미국 모델만 허용 시: gpt-oss-20b — vLLM 방식으로 tool call 안정화
- 추론 전용(tool call 불필요): DeepSeek-R1-0528-Qwen3-8B — 8B에서 최강 reasoning
관련 노트
- gpt-oss-20b-naran — gpt-oss 상세 분석
- model-quantization — 양자화 원리
실험 결과 업데이트 (2026-03-25)
Qwen3.5-35B-A3B (llama.cpp)
- 간단한 search tool call 성공 확인
- 16GB VRAM에서 llama.cpp로 동작 확인 (CPU 오프로드 활용)
- 기본 function calling 파이프라인 검증됨
→ Naran 핵심 엔진 후보로 유효. multi-step tool call 안정성은 추가 테스트 필요.
→ -ngl 값(GPU 레이어 수) 기록하고 interactive 속도 확인 권장.
Unsloth 공식 문서 분석 (2026-03-25)
출처: https://unsloth.ai/docs/models/qwen3.5
메모리 요구사항 (RAM + VRAM 합산)
| 모델 | 3-bit | 4-bit | 6-bit | |------|-------|-------|-------| | 9B | 5.5GB | 6.5GB | 9GB | | 27B | 14GB | 17GB | 24GB | | 35B-A3B | 17GB | 22GB | 30GB |
→ 16GB VRAM 단독: 9B만 완전 GPU. 35B-A3B는 CPU 오프로드 필수.
핵심 제약사항
- Ollama 미지원: 별도 mmproj-F16.gguf 비전 파일 때문에 Ollama 불가. llama.cpp만 가능.
- Tool call 버그 픽스: 3월 5일 업데이트로 chat template 버그 수정. 이전 다운로드는 재다운로드 필요.
- Thinking 기본값: 35B/27B는 기본 ON, 9B/소형 시리즈는 기본 OFF.
권장 퀀트
- 35B-A3B:
UD-Q4_K_XL(Dynamic 2.0, 중요 레이어 8/16bit upcasting) - Non-thinking tool call 모드:
--chat-template-kwargs '{"enable_thinking":false}'
llama-server 실행 (tool call, non-thinking)
./llama.cpp/llama-server \
--model Qwen3.5-35B-A3B-UD-Q4_K_XL.gguf \
--mmproj mmproj-F16.gguf \
--alias "qwen3.5-35b" \
--temp 0.7 --top-p 0.8 --top-k 20 \
--ctx-size 16384 \
--port 8001 \
--chat-template-kwargs '{"enable_thinking":false}'
Naran 선택 기준
- 백그라운드 자동화 위주 → 35B-A3B (품질 우선)
- UI 인터랙션 위주 → 9B (속도 우선, VRAM 여유 9GB)