16GB GPU와 64GB RAM 환경에서 로컬 LLM 자동 완성 및 에이전트 코딩 구축하기
Local LLM autocomplete + agentic coding on a single 16GB GPU + 64GB RAM
핵심 요약
16GB VRAM GPU와 64GB RAM 환경에서 Qwen 모델을 활용해 실용적인 로컬 코딩 환경을 구축하는 방법 공유.
- 모델 선정 — 자동 완성에는 Qwen2.5-Coder-7B, 에이전트 작업에는 Qwen3.6-35B-A3B 모델을 최적의 조합으로 추천함.
- 하드웨어 최적화 — 16GB VRAM 환경에서 RAM 오프로딩을 활용해 모델을 구동하고, 64GB 이상의 시스템 RAM 확보를 권장함.
- 실행 환경 — llama.cpp를 사용하여 모델을 로드하고, VSCode나 Zed IDE와 연동하여 에이전트 코딩 환경을 구성함.
- 성능 체감 — 35B-A3B 모델은 Q8 양자화 시 에이전트 작업에서 우수한 성능을 보이며, 27B 모델보다 효율적인 작업이 가능함.
오늘 저는 16GB RTX 5080 한 장(RAM 오프로딩 활용)에서 실제로 쓸만한 코딩 툴박스를 구축했습니다.
자동 완성: bartowski/Qwen2.5-Coder-7B-Instruct-GGUF:Q6_K_L
에이전트: unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q8_K_XL
이 모델들을 선택한 이유:
Qwen2.5는 여전히 인필링(infill) 작업에 가장 뛰어난 모델이라고 생각합니다. Gemma4 E4B와 Qwen3.5 9B/4B도 써봤는데 둘 다 이상한 제안을 내놓더군요.
이 자동 완성 모델은 아래 명령어를 사용했을 때 VRAM을 약 8GB 사용합니다. 제안 속도는 거의 즉각적입니다.
Qwen3.6 35B-A3B는 좋은 프롬프트를 주면 에이전트 코딩에서 실제로 좋은 성능을 냅니다. Q4에서는 솔직히 쓸만한 수준이 아니고 길을 잃을 때가 많지만, Q8에서는 문제를 파악하고 작업을 제대로 완수합니다. MoE 전문가 모델을 위한 RAM이 충분하지 않다면 Q6_K를 시도해보세요. 하지만 낮은 양자화 버전은 품질 저하가 눈에 띕니다. 최소 64GB의 시스템 RAM이 필요할 겁니다. 저는 96GB를 쓰는데, 두 모델을 모두 실행하고 이것저것(브라우저, IDE, Teams 등) 띄워놓으면 56GB 정도 사용합니다.
활성 파라미터가 3B라서 여전히 빠르고 남은 8GB VRAM 안에 들어갑니다.
명령어:
llama-server -hf bartowski/Qwen2.5-Coder-7B-Instruct-GGUF:Q6_K_L \
-ngl 99 --no-mmap --ctx-size 0 -ctk q8_0 -ctv q8_0 \
-np 1 --temp 0.5 --top-p 0.95 --top-k 20 --min-p 0.0 --port 8081
참고: Qwen2.5에 어떤 하이퍼파라미터를 써야 할지 사실 잘 모르겠습니다. 누가 알려주시면 글을 수정하겠습니다.
llama-server -hf unsloth/Qwen3.6-35B-A3B-GGUF:UD-Q8_K_XL \
--no-mmap --no-mmproj -fitt 0 -ngl 99 --cpu-moe \
-b 2048 -ub 2048 --jinja \
--temp 0.6 --top-p 0.95 --top-k 20 --min-p 0.01
llama.cpp가 모델을 자동으로 맞추고, 이 명령어로 약 145k 컨텍스트를 얻습니다. 더 많은 컨텍스트를 원하시면 -ctv q8_0 -ctk q8_0을 사용하세요.
이 설정에서의 35B-A3B 속도:
pp4096 | 2093.93 ± 22.64
tg128 | 35.29 ± 0.48

