본문으로 건너뛰기

MacBook M5 Pro에서 로컬 코딩 AI 구축하기: 시행착오와 최적의 설정

Apple Silicon 환경에서 mlx-lm의 메모리 누수 문제를 해결하고 Ollama와 Qwen 3.6 MoE 모델을 활용해 안정적인 로컬 코딩 서버를 구축한 사례이다.

섹션별 상세

Apple Silicon 전용 라이브러리인 mlx-lm 서버는 실무 환경에서 사용하기에 안정성이 부족했다. KV 캐시가 무제한으로 증가하면서 Metal GPU 메모리를 모두 점유하여 시스템이 강제 종료되는 현상이 반복됐다. 0.31.3 버전 기준으로 서버 컴포넌트의 메모리 관리 기능이 미비하여 단발성 생성 외의 지속적인 대화에는 부적합함이 확인됐다.
근거
  • mlx-lm은 Apple Silicon에서 llama.cpp보다 20-30% 빠르지만 서버 구성 시 메모리 관리 문제가 있다. First attempt: mlx-lm server 섹션
Ollama는 컨텍스트 크기를 강제로 제한하여 메모리 크래시 문제를 해결했다. OLLAMA_KEEP_ALIVE 설정을 통해 모델 재로드 대기 시간을 없애고 네트워크 호스트 설정을 통해 외부 기기에서도 접속 가능한 환경을 구축했다. 32,768 토큰의 컨텍스트 환경에서도 100% GPU 가동률을 유지하며 안정적으로 작동했다.
bash
mlx_lm.server \
  --model unsloth/Qwen3.6-27B-UD-MLX-4bit \
  --port 8080 \
  --host 0.0.0.0

MLX 기반 서버를 실행하여 로컬 API 엔드포인트를 생성하는 명령어

모델 선택 시 일반적인 GGUF 양자화보다 Apple Silicon에 최적화된 mxfp8 형식이 우수한 품질을 보였다. Qwen 3.6 35B MoE 모델은 전체 크기는 크지만 토큰당 활성 파라미터가 3B 수준이라 48GB 메모리 환경에서 매우 빠른 속도를 제공했다. 특히 mxfp8 양자화는 8비트 부동 소수점을 사용하여 4비트 양자화 모델보다 코딩 정확도가 높았다.
bash
OLLAMA_HOST=0.0.0.0 OLLAMA_KEEP_ALIVE=24h ollama serve

네트워크 접속을 허용하고 모델 로드 상태를 유지하도록 Ollama 서버를 실행하는 설정

근거
  • Qwen 3.6 27B 모델은 SWE-bench Verified에서 77.2%를 기록하여 1년 전 클라우드 모델 수준의 성능을 보여준다. Picking a model 섹션
기본 설정된 presence_penalty 값이 코딩 모델의 성능을 저해하는 요소로 작용했다. 변수명이나 키워드가 반복되어야 하는 코드 작성 특성상 반복을 억제하는 페널티는 품질 저하의 원인이 됐다. Modelfile을 통해 해당 값을 0으로 조정하고 컨텍스트를 16K로 최적화하여 실무에 적합한 응답을 얻을 수 있었다.
dockerfile
FROM qwen3.6:35b-a3b-mxfp8
PARAMETER num_ctx 16384
PARAMETER presence_penalty 0
PARAMETER temperature 0.7

코딩 성능 최적화를 위해 컨텍스트 크기와 페널티 설정을 조정한 Ollama Modelfile

용어 해설

키-값 캐시(KV Cache)
LLM 추론 시 이전 토큰들의 연산 결과를 저장해 재계산 부하를 줄이는 메커니즘이다. 컨텍스트가 길어질수록 메모리 점유율이 선형적으로 증가하며, 적절히 관리되지 않으면 시스템 메모리 부족(OOM)을 유발한다.
전문가 혼합 모델(MoE)
전체 파라미터 중 일부(전문가)만 활성화하여 추론하는 구조이다. 모델의 전체 크기에 비해 연산량과 메모리 압박이 적어, 로컬 환경에서 고성능 모델을 효율적으로 실행할 수 있게 한다.
통합 메모리(Unified Memory)
CPU와 GPU가 동일한 메모리 풀을 공유하는 Apple Silicon의 아키텍처이다. 데이터 복사 과정이 없어 LLM 추론 속도가 빠르며, 대용량 VRAM이 필요한 모델 실행에 유리하다.
소프트웨어 엔지니어링 벤치마크(SWE-bench)
실제 GitHub 리포지토리의 이슈를 해결하는 능력을 측정하는 벤치마크이다. 단순 코드 생성을 넘어 실제 버그 수정 능력을 평가하므로 코딩 모델의 실무 성능을 판단하는 핵심 지표로 쓰인다.

기술

  • Qwen 3.6
  • Ollama
  • MLX
  • Metal GPU
  • OpenCode

활용 사례

  • 오프라인 로컬 코딩 어시스턴트
  • 보안이 중요한 기업 내부 코드 분석
  • API 비용 절감을 위한 로컬 추론 서버

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 05. 06.수집 2026. 05. 06.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.