Apple Silicon에서의 긴 대화를 위한 KV 캐시 재사용으로 200배 속도 향상 달성

이것이 무엇인가
한 개발자가 Apple Silicon에서 MLX 프레임워크를 사용한 로컬 LLM 추론을 위한 세션 기반 KV(키-값) 캐시 재사용 구현 실험 결과를 공유했습니다. 목표는 각 턴마다 전체 컨텍스트를 재처리할 필요를 없애 장기 대화(100K+ 토큰)를 실용적으로 만드는 것이었습니다.
주요 발견 및 벤치마크
핵심 접근 방식은 대화 턴 간에 KV 캐시를 메모리에 유지하고 새로운 토큰만 처리하는 것이었습니다. 이 간단한 아이디어는 극적인 성능 향상을 가져왔습니다:
- 100K 컨텍스트에서 200배 TTFT 개선: 캐시 없음: 126초. 캐시 사용: 0.5초. 이는 처리된 토큰의 99.9% 감소를 나타냅니다.
- 실제 세션 수치: M3 Ultra 512GB Mac Studio에서 Qwen3.5-397B 모델로 266메시지 OpenClaw 에이전트 세션 중 테스트 결과:
- 캐시 적중률: 93.8%
- 캐시 적중 시 TTFT (<500 새 토큰): 1.0-1.3초
- 전체 캐시 미스 시 TTFT (124K 토큰): 528초 (8.8분)
효과가 없었던 것들
개발자는 성능을 저하시키거나 실패한 여러 최적화 시도를 테스트했습니다:
- 사고 토큰 제거: 공간 절약을 위해 모델의 내부 추론 토큰을 캐시에서 제거하려는 시도는 병리적 행동을 유발했습니다. 응답이 31% 길어지고 품질이 떨어졌는데, 이는 모델이 턴 간에 과거 추론을 참조하기 때문입니다.
- KV 캐시 회전 (8192 토큰): 이는 최고의 초당 토큰(TPS) 속도를 제공했지만, 모델이 초기 컨텍스트를 잃어버리게 했고, 회상력이 크게 떨어졌습니다(8개 항목 중 4개).
- KV 8비트 양자화: 이는 TPS가 16.5% 감소하는 결과를 가져왔는데, 계산 오버헤드가 메모리 대역폭 절감을 초과했기 때문입니다.
구현 및 하드웨어
구현은 SoloHeaven이라는 오픈소스 개인 프로젝트의 일부이며, GitHub에서 MIT 라이선스로 이용 가능합니다: https://github.com/joongom/mlx-soloheaven. README에는 전체 벤치마크 테이블이 포함되어 있습니다.
테스트는 512GB RAM과 4TB 저장 공간을 가진 Mac Studio M3 Ultra에서 수행되었으며, MLX용으로 변환된 다음 모델들을 사용했습니다:
- Qwen3.5-122B-A10B-bf16
- Qwen3.5-397B-A17B-MLX-8bit
📖 Read the full source: r/LocalLLaMA
👀 See Also

네이티브 macOS MCP 서버로 전체 OS 제어
네이티브 macOS 서버는 픽셀 정밀 클릭, 키 조합, 드래그 앤 드롭, 앱 관리, 다중 디스플레이 지원, 클립보드 접근을 위한 24가지 도구를 제공합니다. 오픈 소스이며 Claude Code, Cursor 또는 모든 MCP 클라이언트와 호환됩니다.

CLI-Anything-WEB: 모든 웹사이트를 Claude Code용 Python CLI로 리버스 엔지니어링하는 오픈소스 플러그인
CLI-Anything-WEB는 브라우저 트래픽을 모니터링하고, 프로토콜을 리버스 엔지니어링하며, 인증, 테스트, --json 지원을 포함한 완전한 Python CLI를 생성하는 오픈소스 Claude Code 플러그인입니다. Reddit, Booking, Airbnb, ChatGPT, LinkedIn 등의 사이트를 위한 19개의 샘플 CLI가 포함되어 있습니다.

soul.py는 간단한 파일 기반 접근 방식으로 로컬 LLM에 영구 메모리를 추가합니다.
soul.py는 두 개의 마크다운 파일을 사용하여 신원 정보와 대화 기록을 저장함으로써 Ollama, OpenAI, Anthropic 모델과 함께 작동하며 데이터베이스나 서버가 필요 없는 LLM에 지속적인 메모리를 추가하는 Python 라이브러리입니다.

실시간으로 Claude 사용량을 모니터링하는 무료 macOS 메뉴 바 앱
한 개발자가 Claude Code와 Opus를 전적으로 사용하여 Claude 사용량을 모니터링하는 무료 macOS 메뉴 바 앱을 구축했습니다. 이 앱은 5시간 및 7일 세션 사용량 바, 컨텍스트 창 채우기 비율을 표시하고 한계에 도달할 때 알림을 보냅니다.