A sleep-like consolidation mechanism for LLMs
TL;DR Highlight
LLM이 긴 컨텍스트를 처리할 때 발생하는 Attention 비용 문제를 해결하기 위해, 사람의 수면처럼 주기적으로 컨텍스트를 fast weight에 압축·저장하는 새로운 메커니즘을 제안한 논문이다.
Who Should Read
LLM을 활용한 장기 작업(long-horizon task) 또는 긴 컨텍스트 처리가 필요한 서비스를 개발하는 ML 엔지니어나 연구자 중 추론 비용과 KV 캐시 메모리 문제를 고민하고 있는 분들.
Core Mechanics
- Transformer 기반 LLM의 Attention 메커니즘은 컨텍스트 길이에 따라 연산량이 제곱(quadratic)으로 늘어나는 근본적인 문제가 있다. 이 논문은 그 문제를 '수면'이라는 개념으로 해결하려 한다.
- 핵심 아이디어는 모델이 주기적으로 최근 컨텍스트를 fast weight(빠르게 접근 가능한 소형 가중치)로 변환하고, KV 캐시(Attention 계산 중간 결과를 저장해두는 메모리)를 비우는 것이다. 사람이 잠을 자면서 하루 동안의 기억을 장기 기억으로 정리하는 것과 유사한 개념이다.
- '수면(sleep)' 단계에서는 모델이 쌓인 컨텍스트를 N번 반복해서 오프라인으로 처리하고, SSM(State Space Model, 상태 공간 모델) 블록의 fast weight를 학습된 로컬 규칙(local rule)에 따라 업데이트한다.
- '깨어있는(wake)' 추론 시간에는 이미 압축된 fast weight를 활용하기 때문에 레이턴시가 유지된다. 즉, 무거운 계산을 수면 단계로 미루고 실제 응답 속도는 보존하는 구조다.
- 수면 횟수 N을 늘릴수록 성능이 향상되는 것을 확인했으며, 특히 깊은 추론이 필요한 문제에서 성능 향상 폭이 더 컸다.
- 실험은 세포 자동자(cellular automata), 멀티-홉 그래프 탐색(multi-hop graph retrieval), 수학 추론 태스크에서 진행됐다. 일반 Transformer와 SSM-Attention 하이브리드 모델이 실패하는 수학 추론 태스크에서 이 방식이 작동하는 것을 보였다.
- 이 구조는 SSM 블록을 포함한 하이브리드 아키텍처에서 동작하며, 순수 Transformer 모델에 그대로 적용 가능한 방식은 아니다.
Evidence
- 비슷한 아이디어인 E2E-TTT(End-to-End Test Time Training) 논문이 더 우아한 접근이라는 의견이 있었다. E2E-TTT는 최근 컨텍스트를 추가 학습 데이터처럼 다뤄 가중치를 업데이트하는 방식으로, 새로운 분포(unseen distribution)에도 잘 적응한다는 점에서 더 범용적이라는 평가다.
- Letta 팀의 관련 preprint가 언급됐는데, 해당 연구에서는 '수면 시간 컴퓨트(sleep-time compute)'로 쿼리 응답 전에 미리 생각해두는 방식을 써서 Stateful GSM-Symbolic, Stateful AIME 태스크에서 테스트 타임 컴퓨트를 약 5배 절감하고, 정확도를 각각 최대 13%, 18% 향상시켰다는 결과를 공유했다.
- 한 댓글 작성자는 3계층 메모리 시스템 아이디어를 공유했다: 기본 가중치(장기 기억) + KV 캐시 압축 결과로 만든 LoRA(중기 기억) + KV 캐시(단기 기억). 오프라인 시간에 KV 캐시 compaction 결과를 LoRA로 파인튜닝하는 것이 '수면' 개념과 정확히 맞아떨어진다며 흥미로운 구현 아이디어로 주목받았다.
- Quadratic attention 비용 문제를 해결할 수 있다면 장기 컨텍스트가 필요한 워크플로우가 훨씬 저렴해질 것이라는 실용적 기대감이 표현됐다. 반면 '이게 단순히 컨텍스트 pruning/최적화 아닌가'라는 회의적 시각도 있었다.
- 인간 뇌는 새로운 입력을 실시간으로 모델에 통합하는 선택적 가소성(plasticity)을 갖고 있는데, LLM은 현재 '작업 기억(working memory)'만 있고 에피소드 기억과 선택적 가소성이 없다는 지적이 있었다. 이 메커니즘이 그 방향으로 가는 한 걸음이 될 수 있다는 기대와 함께, 하드웨어 비용이 아직 이를 실시간으로 지원하기엔 부족하다는 현실적 언급도 있었다.
How to Apply
- 긴 대화 이력이나 문서를 처리하는 에이전트를 개발 중이라면, KV 캐시가 가득 찰 때마다 오프라인 패스를 통해 fast weight로 압축하는 패턴을 아키텍처 설계에 반영할 수 있다. 이렇게 하면 무한정 늘어나는 메모리 없이도 장기 컨텍스트 처리가 가능해진다.
- 수면 시간 동안의 오프라인 연산을 활용하고 싶다면, Letta 팀의 sleep-time compute 접근법(arxiv 2504.13171)을 참고해서 사용자 쿼리가 들어오기 전에 미리 컨텍스트를 처리해두는 구조를 구현해볼 수 있다. 유사한 쿼리가 반복되는 서비스에서는 쿼리당 비용을 최대 2.5배까지 줄일 수 있다는 실험 결과가 있다.
- 개인 어시스턴트나 장기 기억이 필요한 챗봇 서비스를 만들고 있다면, 댓글에서 제안된 3계층 메모리 시스템(base weight + LoRA compaction + KV cache)을 참고해서 오프라인 시간에 KV 캐시를 LoRA로 파인튜닝하는 파이프라인 설계를 검토해볼 수 있다.
- SSM 계열 모델(Mamba 등)과 Attention을 혼합한 하이브리드 모델을 사용 중이라면, 이 논문의 sleep 메커니즘이 SSM 블록에서 동작하도록 설계되어 있으므로 해당 아키텍처에서의 적용 가능성을 직접 실험해볼 수 있다.
Terminology
Related Papers
CODA: Rewriting Transformer Blocks as GEMM-Epilogue Programs
GPU에서 Transformer 학습 시 발생하는 메모리 병목을 해결하기 위해, 정규화·활성화 등 소규모 연산들을 GEMM 출력이 칩 위에 있는 동안 함께 실행하는 커널 추상화 CODA를 소개한다. LLM이 이 추상화를 활용해 고성능 커널을 자동 생성할 수 있다는 점이 특히 주목받고 있다.
KV-Fold: One-Step KV-Cache Recurrence for Long-Context Inference
모델 수정 없이 KV 캐시를 청크 간 누산기로 쓰면 128K 토큰까지 100% 정확도로 정보를 검색할 수 있다.
Training an LLM in Swift, Part 1: Taking matrix mult from Gflop/s to Tflop/s
Apple Silicon에서 Swift로 직접 행렬 곱셈 커널을 구현하며 CPU, SIMD, AMX, GPU(Metal)를 단계별로 최적화해 Gflop/s에서 Tflop/s 수준까지 성능을 높이는 과정을 상세히 설명한 글이다. 프레임워크 없이 LLM 학습의 핵심 연산을 밑바닥부터 구현하고 싶은 개발자에게 Apple Silicon의 성능 한계를 체감할 수 있는 드문 자료다.
Removing fsync from our local storage engine
FractalBits가 fsync 없이 SSD 전용 KV 스토리지 엔진을 구현해 동일 조건 대비 약 65% 높은 쓰기 성능을 달성한 설계 방법을 공유했다. fsync의 메타데이터 오버헤드를 피하기 위해 사전 할당, O_DIRECT, SSD 원자 쓰기 단위 정렬 저널을 조합한 구조가 핵심이다.
Google Chrome silently installs a 4 GB AI model on your device without consent
Google Chrome이 사용자 동의 없이 Gemini Nano 4GB 모델 파일을 자동 다운로드하고, 삭제해도 재다운로드되는 문제가 발견됐다. GDPR 위반 가능성과 수십억 대 기기에 적용될 때의 환경 비용 문제가 제기되고 있다.
How OpenAI delivers low-latency voice AI at scale
OpenAI redesigned its WebRTC stack to serve real-time voice AI to over 900 million users, detailing the design decisions and trade-offs of a relay + transceiver split architecture.