소개
내 Mac(M5, 24GB)에서 Hermes Agent를 로컬 AI로 돌리 고 싶었다. 매번 클라우드 API 호출 비용도 부담스럽고, 응답 속도도 내 손에 두고 싶었기 때문이다.
문제는 단순하지 않았다. Hermes는 최소 64,000 토큰 컨텍스트를 요구하는데, 막상 모델을 골라 깔아보면 "32K 한계"라며 거부당하는 경우가 많았다. 더 황당한 건, LM Studio에서 직접 쓰면 빠른 모델이 Hermes를 거치면 답답할 정도로 느려졌다는 것.
진행 방법
Claude Code와 같이 시행착오를 정리하면서, 세 가지 함정에 차례로 부딪혔다.
1) "Qwen2.5 = 128K"라는 착각
- 모델 카드에는 128K라고 적혀 있지만, 실제 일반 빌드는 32K 고정
- 128K는 YaRN 스케일링이 적용된 별도 빌드에서만 가능
- → Hermes 64K 요구를 못 채워서 사용 불가
2) 같은 모델인데 Hermes가 더 느린 이유
- Hermes는 매 턴 시스템 프롬프트(툴 정의 + 페르소나 + 규칙)에 5K~15K 토큰을 더 얹는다
- personality: kawaii 같은 무거운 페르소나가 속도를 크게 갉아먹음
- VL(비전) 모델은 텍스트만 쓸 거면 비전 인코더 오버헤드만큼 손해
3) Apple Silicon 통합 메모리 최적화 핵심 설정
- Context Length 65536 정확히 (더 늘리면 메모리 압박)
- K/V Cache는 Q8_0 양자화로 메모리 절감
- Flash Attention 필수, Concurrent Predictions는 1로 (KV 캐시 절약)
- Keep Model in Memory ON, Try mmap ON
최종 후보 모델은 Gemma 4 E4B (131K 컨텍스트 확인)와 Qwen2.5-7B-Instruct-1M-GGUF (1M 컨텍스트 명시) 두 개로 좁혔다.
메모리 가계부 (64K 컨텍스트, 24GB Mac 기 준)
항목
사용량
macOS 시스템
~7GB
모델 (Q4_K_M)
~4GB
KV 캐시 64K (Q8 양자화)
~4-5GB
여유
~8GB
결과
- Before: 모델만 막무가내로 깔다가 "context window가 부족합니다" 메시지로 시간 날림. 같은 모델인데 Hermes에서만 느린 이유를 몰라서 답답.
- After: 64K 검증 → LM Studio 최적화 → Hermes 설정까지 한 호흡으로 정리된 체크리스트 완성. 다음에 다른 모델로 갈아탈 때도 5분이면 셋업 가능.
남은 숙제: 실제 응답 속도(tok/s, 첫 토큰까지의 지연) 측정과 페르소나 concise 적용 효과 검증. 그리고 Openclaw에 있는 팀 셋업을 Hermes로 옮겨와서 실행해보기\
배운 점
1. 모델 카드의 컨텍스트 수치를 의심하라 — "최대 128K 지원"이라고 적혀 있어도, 실제 빌드는 32K일 수 있다. 다운로드 전에 LM Studio UI에서 "Model supports up to X tokens" 표시를 직접 확인하는 게 가장 확실하다.
2. 에이전트가 느린 건 모델 탓이 아닐 수 있다 — 시스템 프롬프트, 페르소나, 툴 정의가 매 턴 토큰을 잡아먹는다. 페르소나를 concise로 바꾸는 것만으로도 체감 속도가 달라진다.
3. 로컬 AI는 메모리 가계부 싸움 — 24GB Mac에서 64K 컨텍스트를 굴리려면 K/V 양자화, Flash Attention, Concurrent Predictions=1 같은 옵션이 단순히 "있으면 좋은" 게 아니라 "안 켜면 죽음"의 영역이다.
도움 받은 글 (옵션)
https://www.gpters.org/nocode/post/finding-optimal-setting-values-7G0aMAeK2GhslYz
https://www.gpters.org/nocode/post/ai-agent-installation-guide-da1iLvYl078zPS8