# Google의 Sleep 프레임워크: LLM이 문맥으로 배운 지식을 덮어쓰기 없이 새 매개변수로 옮기는 지속 학습에 대한 연구

**URL:** <https://discuss.pytorch.kr/t/google-sleep-llm/12367>\
**Category:** 읽을거리&정보공유\
**Tags:** research, mixture-of-experts, google-research, continual-learning, google, llm, knowledge-distillation\
**Created:** [11월 2, 2026, 11:31오후 UTC](https://discuss.pytorch.kr/t/google-sleep-llm/12367 "2026-11-02T23:31:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![9bow](https://discuss.pytorch.kr/user_avatar/discuss.pytorch.kr/9bow/32/16301_2.png) [@9bow](https://discuss.pytorch.kr/u/9bow)\
**Post date:** [11월 2, 2026, 11:31오후 UTC](https://discuss.pytorch.kr/t/google-sleep-llm/12367/1 "2026-11-02T23:31:00Z")

</div>

## 핵심 요약

- Google Research가 [Sleep 프레임워크 소개 블로그](https://research.google/blog/the-sleep-framework-a-new-way-for-llms-to-retain-knowledge-in-continual-learning/)에서 LLM의 새 지속 학습 방식을 설명했습니다. 깨어 있는 동안 문맥으로 배운 지식을 잠자는 동안 새 저랭크 전문가로 옮기고(기억 통합), 스스로 만든 합성 데이터로 다시 연습합니다(꿈).
- [Language Models Need Sleep 논문](https://arxiv.org/abs/2606.03979)에 따르면 Qwen3-8B의 AIME-24 점수는 기본 모델 73.8에서 79.2로 올랐고, SQuAD 사실 지식 통합에서는 SEAL(46.7)보다 높은 48.9를 기록했습니다.
- 블로그가 강조한 BABILong 10M 토큰 결과는 BABILong 학습 절차로 미세조정한 Llama 기반 모델과 미세조정 없이 평가한 GPT-4의 비교입니다. 논문 그림에서 10M 토큰 정확도는 약 91%로 읽힙니다.
- 공식 코드와 가중치는 공개되지 않았습니다. 블로그의 "이론적 기반" 절에 나온 분석은 arXiv v2에는 없고, 2026년 9월 OpenReview에 올라온 ICLR 2027 투고본에 들어 있습니다.

 ![잠자는 동안 문맥 속 기억을 장기 매개변수로 옮기는 LLM, Google Research Sleep 프레임워크](https://discuss.pytorch.kr/uploads/default/original/3X/0/b/0bbb3b536a103b9fa46744bf066276b050504d0e.jpeg)

## Google Research의 Sleep 프레임워크 소개: 배포된 LLM이 새 지식을 잃지 않고 쌓는 방법

**Sleep 프레임워크** 는 배포된 언어 모델이 새로 들어온 정보를 문맥 창 밖의 매개변수로 옮겨, 세션이 끝나도 지식을 유지하게 하려는 Google Research의 지속 학습(continual learning) 연구입니다. 지속 학습은 모델이 과제를 순서대로 배우면서 앞서 배운 것을 잃지 않도록 하는 학습 설정입니다. 2026년 10월 27일 Ali Behrouz(Google, Cornell 대학교)와 Vahab Mirrokni(Google)가 블로그로 소개했습니다. 바탕이 된 논문에는 Farnoosh Hashemi(Cornell 대학교)와 Adel Javanmard(Google, USC)도 저자로 참여했습니다.

오늘날 LLM은 사전학습이 끝난 시점의 지식에 머뭅니다. 새 정보를 주는 방법은 크게 두 가지입니다. 하나는 매개변수를 다시 학습하는 것인데, 반복해서 미세조정하면 **파국적 망각(Catastrophic Forgetting)** 이 일어납니다. 새 과제를 배우는 과정에서 이전 과제 성능이 크게 떨어지는 현상입니다. 다른 하나는 **문맥 내 학습(In-Context Learning, ICL)** 으로 프롬프트에 정보를 넣는 것입니다. 이 방법은 매개변수를 건드리지 않지만, 세션이 끝나면 그 정보도 사라집니다.

논문은 이 상태를 **선행성 기억상실증(anterograde amnesia)** 에 빗댑니다. 발병 전의 기억은 남아 있지만 새 기억을 장기 기억으로 만들지 못하는 신경 질환입니다. LLM도 사전학습이 끝나기 전에 배운 지식(MLP 층)과 지금 문맥 창에 들어 있는 정보(어텐션)만 다룰 수 있고, 그 사이를 잇는 통로가 없다는 것이 저자들의 진단입니다. 이 비유는 Behrouz와 Mirrokni가 참여한 [Nested Learning 연구](https://research.google/blog/introducing-nested-learning-a-new-ml-paradigm-for-continual-learning/)에서 가져온 것입니다.

Sleep 프레임워크는 그 통로를 사람의 수면에서 착안한 주기적 과정으로 만듭니다. 다만 블로그는 _"수면, 꿈, 자기 개선 같은 용어는 신경과학에서 빌린 것일 뿐, 프레임워크는 고정된 모델 구조와 사람이 정의한 학습 규칙 안에서 동작한다"_ 고 밝힙니다. 실제로 하는 일은 미리 할당해 둔 MoE 전문가를 켜고, 모델이 스스로 만든 연습 데이터로 그 가중치를 갱신하는 자동 사후 학습 주기입니다.

이름이 거의 같은 다른 논문도 있습니다. 2026년 5월에 나온 [Do Language Models Need Sleep? Offline Recurrence for Improved Online Inference](https://arxiv.org/abs/2605.26099)(Sangyun Lee 외)입니다. 이 논문은 최근 문맥을 **상태 공간 모델(State Space Model, SSM)** 블록의 빠른 가중치(fast weights)로 옮긴 뒤 KV 캐시를 비우는 방법을 다룹니다. PyTorchKR에서는 [2026년 5월 마지막 주 논문 모음](https://discuss.pytorch.kr/t/2026-05-25-31-ai-ml/10463)에서 이 논문을 다뤘습니다. 이 글이 다루는 Google 논문은 arXiv `2606.03979` 인 _Language Models Need Sleep: Learning to Self-Modify and Consolidate Memories_ 입니다.

## 학습과 추론 대신 깨어 있는 단계와 잠자는 단계로 나누기

기존 머신러닝은 모델의 수명을 학습 시간과 추론(inference) 시간으로 나눕니다. 저자들은 지속 학습에서는 이 구분이 맞지 않는다고 봅니다. 계속 배우는 모델에게는 입력을 받을 때와 입력 없이 혼자 정리할 때가 있을 뿐이라는 것입니다. 그래서 두 단계를 정의합니다.

- **깨어 있는 단계(Active, Wake Phase)**: 모델이 입력을 받아 처리하고, 임시 정보를 빠른 단기 메모리(KV 캐시 같은 구성 요소)에 담습니다.
- **잠자는 단계(Sleep Phase)**: 새 입력을 거의 받지 않고, 내부 계산을 기억 통합과 자기 개선에 씁니다.

 ![Sleep 프레임워크 개요: 깨어 있는 단계의 입력이 KV 캐시 단기 메모리에 쌓였다가 잠자는 단계에서 기억 통합(저랭크 전문가, MoE)과 꿈(무작위 전문가 라우팅, 강화 학습 정제)을 거쳐 통합된 매개변수 메모리로 옮겨지는 흐름](https://discuss.pytorch.kr/uploads/default/original/3X/6/9/695a323754c0ba4fe85f8cdf64a442417cb2d099.jpeg)

위 그림은 원문 블로그의 개요도입니다. 왼쪽의 입력 흐름이 단기 메모리(KV 캐시)에 쌓이고, 가운데 잠자는 단계에서 위쪽 기억 통합(Consolidation)과 아래쪽 꿈(Dreaming)을 거쳐 오른쪽의 통합된 매개변수 메모리로 들어갑니다.

### 바탕 구조: 갱신 주기가 다른 메모리의 사슬

이 설계를 이해하려면 Nested Learning 논문의 **연속 메모리 시스템(Continuum Memory System, CMS)** 을 먼저 봐야 합니다. CMS는 어텐션 같은 시퀀스 모델 뒤에 MLP 블록을 사슬처럼 잇고, 블록마다 다른 **갱신 빈도(update frequency)** 를 줍니다. 갱신 빈도는 가장 느린 모듈이 한 번 갱신되는 동안 그 블록이 몇 번 갱신되는지를 뜻합니다.

이 관점에서 보면 일반 트랜스포머는 양 끝만 있는 메모리입니다. 어텐션은 문맥이 바뀔 때마다 내용이 바뀌는 무한대 빈도의 메모리이고, MLP는 사전학습 뒤 한 번도 갱신되지 않는 빈도 0의 메모리입니다. CMS는 그 사이에 빈도가 점점 낮아지는 블록을 둡니다. 앞쪽 블록일수록 단기 기억, 뒤쪽 블록일수록 장기 기억 역할을 합니다.

문제는 빠른 블록이 자기 매개변수를 갱신할 때입니다. 갱신하기 전에 그 블록이 담고 있던 지식을 느린 블록으로 옮기지 않으면, 그 지식은 사라집니다. 그래서 Sleep은 각 블록의 청크 길이 C^{(\ell)} 의 배수 시점, 즉 빠른 블록이 갱신되기 직전에 실행됩니다. 논문은 Nested Learning의 Hope 아키텍처가 깨어 있는 동안 하는 통합을 **온라인 통합** , Sleep이 하는 통합을 **오프라인 통합** 으로 구분합니다. Hope만으로는 모델 용량이 그대로이고, 문맥에 의존하는 갱신만 하므로 부족하다는 것이 이 논문의 출발점입니다.

## 1단계 기억 통합: 저랭크 전문가를 열고 위로 증류하기

기억 통합은 사람의 비렘(NREM) 서파 수면에 대응하는 단계입니다. 세 가지 동작으로 이뤄집니다.

### 매개변수 확장: 새 지식을 담을 자리를 먼저 만듭니다

저자들은 파국적 망각의 원인을 용량 부족으로 봅니다. 느린 블록 하나에 빠른 블록의 지식을 여러 번 옮겨 넣으면, 결국 기존 매개변수를 덮어써야 하기 때문입니다. 예를 들어 1K 스텝마다 갱신되는 블록 뒤에 10K 스텝마다 갱신되는 블록이 있으면, 느린 블록이 한 번 갱신되는 동안 빠른 블록의 지식이 열 번 옮겨집니다.

그래서 MLP 블록을 희소 **전문가 혼합(Mixture of Experts, MoE)** 으로 두고, 잠잘 때마다 지식을 받을 느린 블록에 **저랭크(low-rank)** 전문가를 하나 추가합니다. 저랭크 전문가는 A \in \mathbb{R}^{d \times d\_{low}}, B \in \mathbb{R}^{d\_{low} \times d} (d\_{low} \ll d) 두 행렬로 이뤄진 작은 MLP입니다. 구현에서는 텐서 크기를 실제로 바꾸지 않고, 처음부터 이 매개변수를 만들어 두되 활성화 전까지 순전파와 역전파에서 가립니다. 부록에 따르면 실험에서는 차원 64인 MLP 블록 5개를 추가 매개변수로 쓰고, 활성 매개변수 수는 기본 모델(8B 또는 3B)과 같게 유지했습니다.

### 지식 시딩: 작은 교사가 큰 학생을 가르칩니다

새 전문가를 채우는 방법이 **지식 시딩(Knowledge Seeding)** 입니다. 일반적인 **지식 증류(Knowledge Distillation)** 는 큰 교사 모델의 출력을 작은 학생 모델이 따라 배우게 합니다. 지식 시딩은 방향이 반대입니다. 확장 전 상태의 모델이 교사가 되고, 저랭크 전문가가 추가된 더 큰 상태의 모델이 학생이 됩니다. 저자들은 이를 **상향 증류(upward distillation)** 라고 부릅니다.

통합은 계산, 통합, 갱신 순서로 진행됩니다. 먼저 빠른 블록의 다음 가중치를 누적 기울기로 계산만 해 두고 적용하지 않습니다. 다음으로 갱신 전 모델을 교사, 계산해 둔 새 가중치와 새 저랭크 전문가를 넣은 모델을 학생으로 두고 증류합니다. 마지막으로 빠른 블록의 가중치 갱신을 적용하고, 새 전문가를 켭니다. 학생 쪽에서는 새로 추가한 저랭크 매개변수만 학습하고 나머지는 모두 얼립니다. 옮겨 온 지식이 기존 지식과 섞여 덮어쓰지 않도록 하기 위해서입니다.

증류 목표는 두 신호를 섞습니다. 하나는 [일반화 지식 증류(Generalized Knowledge Distillation, GKD)](https://huggingface.co/docs/trl/en/gkd_trainer) 방식의 **온-정책(on-policy) 증류** 입니다. 학생이 스스로 생성한 문장에 대해 교사의 토큰별 확률 분포를 피드백으로 받습니다. 다른 하나는 강화 학습으로 교사의 생성 방식을 흉내 내게 하는 **모방 학습(Learning to Imitate, LTI)** 입니다. 교사가 생성한 문장의 앞부분을 주고 학생에게 나머지를 쓰게 한 뒤, 두 결과가 얼마나 비슷한지로 보상을 줍니다.

r(\hat{d}^{(i)}; d^{(i)}) = \gamma \, r\_{sem}(\hat{d}^{(i)}; d^{(i)}) + (1-\gamma) \, r\_{abs}(\hat{d}^{(i)}; d^{(i)})

r\_{sem} 은 고정된 보상 모델이 두 문장의 의미가 같다고 판단하면 1, 아니면 0을 주는 의미 보상입니다. r\_{abs} 는 [레벤슈타인 거리(Levenshtein distance)](https://en.wikipedia.org/wiki/Levenshtein_distance) z 로 계산한 표면 유사도 보상이며, 거리가 임계값 z\_0 이하일 때만 1 - z / \max(|\hat{d}|, |d|) 를 주고 그 밖에는 0을 줍니다. 최종 지식 시딩 목표는 이 보상의 기대값과 교사, 학생 분포 사이의 발산을 \alpha 로 섞습니다.

\mathcal{L}\_{KS}(\theta, \theta\_{exp}) = \mathbb{E}\_{x \sim \mathcal{D}} \Big[(1-\alpha)\, \mathbb{E}\_{y \sim LM\_{\theta\_{exp}}(\cdot|x)} [r(y)] - \alpha\, \mathbb{E}\_{y \sim LM\_{\theta\_{exp}}(\cdot|x)}\, D(LM\_{\theta} \,\|\, LM\_{\theta\_{exp}})(y|x) \Big]

모방 항을 더한 이유를 논문은 관찰로 설명합니다. 증류만 했을 때 학생은 지식을 갖고 있으면서도 그것을 쓰는 법을 배우지 못해, 교사의 생성 결과와 성능을 약하게만 따라갔다는 것입니다.

### 시냅스 가지치기: 빠른 블록의 자리를 비웁니다

지식이 느린 블록으로 옮겨지면, 이전 잠자는 단계들에서 빠른 블록에 추가했던 저랭크 전문가를 모두 초기화합니다. 다음 깨어 있는 단계에서 쓸 용량을 비우는 것입니다. 저자들은 뇌가 불필요한 연결을 정리하는 **시냅스 가지치기(synaptic pruning)** 에 이 동작을 빗댑니다.

## 2단계 꿈: 무작위 전문가로 합성 데이터를 만들고 골라서 학습하기

꿈 단계는 렘(REM) 수면에 대응합니다. 기억 통합이 지식을 옮기는 단계라면, 꿈은 모델이 스스로 만든 **합성 데이터(dream)** 로 새 지식을 연습하고 능력을 다듬는 단계입니다. 저자들은 자기 편집 데이터를 생성해 스스로 미세조정하는 [SEAL(Self-Adapting Language Models)](https://arxiv.org/abs/2506.10943)을 기반으로 했고, SEAL을 그대로 쓸 때의 문제 세 가지를 지적합니다. 첫째, 내부 루프의 SFT 비용 때문에 꿈을 많이 만들 수 없습니다. 둘째, 자기 개선을 반복하면 망각이 생길 수 있습니다. 셋째, 모델이 이미 아는 공간에서만 표본을 추출합니다.

이를 해결하려고 꿈 단계는 다음 순서로 진행됩니다.

1. **무작위 전문가 선택** : 합성 데이터를 생성할 때 MoE 라우터가 원래 고르던 전문가에 더해 무작위 전문가를 하나 더 켭니다. 관련 없는 지식을 섞어, 평소 생성에서는 드러나지 않는 패턴을 드러내려는 장치입니다.
2. **기울기 기반 선별** : 생성한 꿈마다 언어 모델링 손실의 기울기로 중요도 점수를 매기고, 점수가 높은 상위 k 개와 다양성을 위한 무작위 b 개만 남깁니다.
3. **강화 학습 정제** : 남은 꿈 하나마다 모델 사본을 LoRA로 미세조정하고, 하위 과제 성능이 오르면 보상 1, 아니면 0을 줍니다. 이 보상으로 꿈을 생성하는 정책을 SEAL처럼 [ReST-EM](https://arxiv.org/abs/2312.06585) 알고리즘으로 최적화합니다.

부록에 실린 Llama-3.2-1B ARC 실험을 보면, 과제마다 꿈 60개를 만들어 45개를 버리고 15개를 남겼습니다.

## 이론적 기반: arXiv 판에는 없고 ICLR 2027 투고본에 있는 분석

블로그에는 arXiv 논문에 없는 **이론적 기반(Theoretical foundations)** 절이 있습니다. 블로그의 설명을 요약하면 다음과 같습니다.

- 지식 시딩은 구조화된 저랭크 압축 문제로 볼 수 있습니다. 모델은 단기 기억의 모든 세부를 복사하지 않고, 자기 온-정책 행동과 의미 보상을 가장 잘 보존하는 소수의 방향을 찾습니다.
- 온-정책 증류는 추론 때 모델이 실제로 만들 궤적에 통합을 맞추고, 의미 보상은 토큰 확률 일치보다 의미 보존을 우선하게 합니다. 매개변수 확장은 이렇게 고른 기억을 덮어쓰기 없이 기록할 용량을 줍니다.
- 꿈 단계의 무작위 전문가는 탐색하는 기울기 방향을 넓히고, 기울기 기반 선별은 유용한 방향을 강화합니다. 그 결과 기울기의 조건수(conditioning)가 나아지고 최적화가 소수 방향에 덜 치우친다고 블로그는 설명합니다.

이 분석은 [arXiv v2(2026년 7월 10일)](https://arxiv.org/abs/2606.03979v2) 26쪽에는 없고, 2026년 9월 OpenReview에 올라온 [ICLR 2027 투고본](https://openreview.net/forum?id=4BIMcGrZjq)에 들어 있습니다. 투고본 초록에 따르면, 저자들은 위쪽 망이 선형이라는 가정 아래 지식 시딩 목표가 **절단 특이값 분해(truncated SVD)** 형태의 닫힌 해를 갖는다고 보였습니다. 또 꿈 단계의 무작위 전문가 주입이 기울기 공분산의 조건수를 개선한다는 것을 증명했다고 밝힙니다. 이 글은 투고본의 초록까지만 확인했습니다.

## 실험 결과: 블로그 수치와 논문의 실험 조건

블로그는 결과를 다섯 가지로 요약합니다. 논문을 함께 보면 실험마다 백본 모델과 비교 조건이 다르고, 몇몇은 기억 통합만 쓴 실험입니다. 아래 표는 블로그와 논문의 수치를 실험 조건과 함께 정리한 것입니다.

| 실험 | 백본 | 사용한 단계 | 주요 결과 | 확인할 조건 |
| --- | --- | --- | --- | --- |
| 클래스 증분 학습 (CLINC, Banking, DBpedia) | Llama-3B, Llama3-8B | 기억 통합만 | 8B에서 Sleep 97, 92, 89% | 블로그 차트는 8B 막대만 실음 |
| 낯선 언어 연속 번역 (Manchu, Kalamang) | 논문에 명시 없음 | 기억 통합 (4.1절) | 두 언어를 순서대로 배운 뒤 ChRF 23.9, 38.1 | ICL은 두 번째 언어 추가 뒤 20.9에서 10.1로 하락 |
| 장문맥 BABILong | Llama 기반 (크기 명시 없음) | 기억 통합 절에 실림, 부록은 자기 개선도 언급 | 10M 토큰까지 약 91% 이상 유지 | 비교 대상 중 GPT-4는 미세조정 없이 평가 |
| 수학 추론 (AIME-24/25, HMMT-25) | Qwen3-1.7B, Qwen3-8B | 기억 통합 (4.1절) | 8B에서 79.2, 69.0, 46.1 | 16회 평균(average@16) |
| 사실 지식 통합 (SQuAD) | SEAL과 같은 설정 | 통합과 꿈 | 단일 문단 48.9, 연속 사전학습 46.2 | SEAL 개정판은 n=200에서 58.2 보고 |
| Few-shot ARC (블로그에는 없음) | Llama-3.2-1B | 통합과 꿈 | 성공률 80% (SEAL 72.5%) | 평가 과제 8개 |

### 연속 학습: 클래스 증분 분류와 낯선 언어 번역

 ![Sleep 프레임워크의 클래스 증분 학습 정확도(CLINC, Banking, DBpedia)와 Manchu, Kalamang 두 낯선 언어 연속 번역 ChRF 결과 막대 그래프](https://discuss.pytorch.kr/uploads/default/original/3X/0/7/079dd1400e06b8ca79fb47a046a1206b86e6c272.png)

위 그림은 원문 블로그의 결과 차트입니다. 위쪽 **클래스 증분 학습(Class-Incremental Learning)** 은 분류해야 할 클래스가 시간에 따라 하나씩 늘어나는 설정입니다. Sleep은 세 데이터셋 모두에서 가장 높은 정확도(97, 92, 89%)를 기록했습니다. 그 뒤를 기억 통합 없는 Hope(93, 84, 82%), 외부 학습기를 쓰는 InCA(89, 80, 77%), 중요한 가중치의 변화를 억제하는 정규화 기법인 **탄성 가중치 통합(Elastic Weight Consolidation, EWC)** (80, 75, 71%)이 이었습니다.

차트를 읽을 때 두 가지를 알아 두면 좋습니다. 첫째, 블로그 차트의 _No adaptation_ 막대는 논문 그림 3에서 In-Context, 즉 같은 연속 사전학습을 거쳤지만 잠자는 단계가 없는 ICL 기준선입니다. 둘째, 블로그가 실은 값은 Llama3-8B 결과입니다. 논문 그림 3의 Llama-3B 결과에서는 순위가 같지만 전체 수준이 낮아, Sleep도 CLINC에서 약 77%, DBpedia에서 50%에 못 미칩니다.

아래쪽 **낯선 언어 연속 번역** 은 사전학습에 거의 없던 만주어(Manchu)와 칼라망어(Kalamang, [MTOB](https://arxiv.org/abs/2309.16575) 데이터셋)를 문맥으로 배운 뒤 영어로 번역하는 과제입니다. Nested Learning 논문이 만든 설정을 그대로 따랐습니다. 두 언어를 따로 배우면 ICL도 만주어 ChRF 20.9를 기록하지만, 두 언어를 순서대로 배우면 10.1로 떨어집니다. 반면 Sleep은 통합 단계 수를 1, 2, 3으로 늘릴수록 점수가 올라, Sleep-3은 만주어 23.9, 칼라망어 38.1로 한 언어만 배웠을 때의 점수(차트의 세로 눈금)와 비슷하거나 조금 높습니다. 블로그는 Cartridges와 SFT도 _"심각한 파국적 망각을 겪었다"_ 고 쓰는데, 논문에서는 두 방법이 적어도 한 언어에서 ICL보다 낮아 그림 범위 밖에 놓였다고만 밝히고 수치는 싣지 않았습니다.

논문 그림 4에는 블로그에 없는 실험도 있습니다. LongHealth, QASPER, RULER의 MK-NIAH(여러 키를 찾는 needle-in-a-haystack 과제)에서 통합 단계를 1에서 4로 늘릴수록 성능이 오르고, 가장 느린 메모리의 갱신 빈도를 높일수록(512에서 8K로) 성능이 떨어졌습니다. 저자들은 가장 오래 남는 기억을 더 자주 바꾸면 보존력이 약해진다고 해석합니다.

### 장문맥: BABILong 10M 토큰 결과를 읽는 법

[BABILong](https://arxiv.org/abs/2406.10149)은 아주 긴 무관한 텍스트 사이에 흩어진 사실을 찾아 추론해야 하는 벤치마크입니다. 블로그는 Sleep이 _"10M 토큰까지 거의 완벽하게 확장되며 GPT-4와 [Titans](https://research.google/blog/titans-miras-helping-ai-have-long-term-memory/) 같은 강한 기준선을 앞섰다"_ 고 씁니다.

 ![BABILong 벤치마크 문맥 길이별 정확도: Llama + Sleep은 0에서 16K 토큰까지 99%, 10M 토큰에서 약 91%이고, GPT-4와 Llama3.1-8B-Instruct는 128K 토큰 부근에서 40%대로 떨어지는 그래프 (논문 그림 6)](https://discuss.pytorch.kr/uploads/default/original/3X/9/e/9e4bc92af5e01aa77182c25e2ad270d5fa4b199e.png)

위 그림은 논문 그림 6을 잘라 온 것입니다. Llama + Sleep 선은 16K 토큰까지 99%이고, 이후 서서히 내려가 10M 토큰에서 약 91%입니다. GPT-4와 Llama3.1-8B-Instruct는 128K 토큰 근처에서 30~40%대로 떨어지고, Llama3 + RAG는 처음부터 50% 아래에서 완만하게 내려갑니다.

이 결과를 읽을 때 확인할 조건이 두 가지 있습니다.

- **미세조정 여부가 다릅니다.** 부록 B.2에 따르면 Sleep을 포함한 소형 모델은 BABILong 공식 학습 절차로 미세조정했고, GPT-4와 GPT-4o-mini는 미세조정 없이(zero-shot) 평가했습니다. 저자들은 미세조정을 하지 않으면 Sleep을 포함한 모든 소형 모델의 성능이 크게 떨어진다고 직접 밝힙니다.
- **Titans는 그림에 없습니다.** 부록 본문은 Titans, ARMT(Associative Recurrent Memory Transformer), Sleep이 약 1M 토큰까지 비슷하다가 그 뒤 Titans와 ARMT가 급격히 떨어진다고 설명합니다. 그러나 그림 6에는 Llama3 + RAG, Llama3.1-8B-Instruct, GPT-4, Llama + Sleep 네 선만 있습니다. 블로그의 "Titans를 앞섰다" 는 문장은 수치로 확인할 수 없습니다.

### 추론: Qwen3 수학 벤치마크와 절제 실험

수학 추론 실험은 기억 통합이 추론(reasoning) 능력도 올리는지 봅니다. 아래 표는 논문 표 2와 표 1의 값이며, 모두 16회 평균 정확도(%)입니다. 비교 대상인 **GRPO(Group Relative Policy Optimization)** 는 그룹 단위 상대 보상으로 정책을 학습하는 강화 학습 방법이고, **OPSD(On-Policy Self-Distillation)** 는 검증된 풀이를 본 자기 자신을 교사로 삼아 온-정책 증류하는 방법입니다.

| 모델 | 방법 | AIME-24 | AIME-25 | HMMT-25 |
| --- | --- | --- | --- | --- |
| Qwen3-1.7B | 기본 모델 (Instruct) | 49.8 | 34.5 | 25.7 |
| Qwen3-1.7B | SFT | 47.3 | 36.1 | 22.9 |
| Qwen3-1.7B | GRPO | 51.0 | 38.6 | 26.1 |
| Qwen3-1.7B | OPSD | 51.6 | 40.0 | 28.1 |
| Qwen3-1.7B | Sleep | **53.2** | **40.2** | **29.3** |
| Qwen3-8B | 기본 모델 (Instruct) | 73.8 | 68.1 | 42.4 |
| Qwen3-8B | SFT | 75.5 | 66.4 | 43.7 |
| Qwen3-8B | GRPO | 76.4 | 68.1 | 44.9 |
| Qwen3-8B | OPSD | 76.6 | 67.4 | 45.1 |
| Qwen3-8B | Sleep | **79.2** | 69.0 | **46.1** |
| Qwen3-8B | Sleep, 모방 학습 제거 | 76.8 | 67.9 | 45.0 |
| Qwen3-8B | Sleep, 의미 보상 제거 | 78.9 | **69.2** | 44.5 |
| Qwen3-8B | Sleep, 매개변수 확장 제거 | 78.2 | 67.9 | 44.9 |
| Qwen3-8B | OPSD + 매개변수 확장 | 77.9 | 68.2 | 45.9 |

위 표에서 3가지를 확인할 수 있습니다. Qwen3-8B에서 Sleep이 기본 모델보다 오른 폭은 AIME-24가 5.4점, HMMT-25가 3.7점이지만 AIME-25는 0.9점입니다. 절제 실험에서 모방 학습을 뺐을 때 가장 많이 떨어지므로(AIME-24 79.2에서 76.8), 블로그가 _"기억 통합과 모방 학습의 조합"_ 을 강조하는 근거가 됩니다. 반면 논문은 _"모든 구성 요소가 성능에 기여했다"_ 고 쓰지만, 의미 보상을 뺀 변형이 AIME-25에서 69.2로 전체 Sleep(69.0)보다 조금 높습니다.

비용도 함께 봐야 합니다. 부록 B.5에 따르면 같은 학습 스텝 수에서 SFT가 Sleep보다 4배 효율적입니다. 저자들은 같은 점수에 도달하는 기준으로 바꾸면 SFT가 AIME-24, AIME-25, HMMT-25에서 각각 4.3배, 3.6배, 4.8배의 실제 학습 시간이 필요했다고 보고합니다. 학습 설정은 세 방법 모두 학습률 5 \times 10^{-6}, 유효 배치 32, LoRA 랭크 64이고, 스텝 수는 GRPO 500, SFT와 Sleep 100입니다.

### 사실 지식 통합과 few-shot 추론: 꿈 단계의 몫

사실 지식 통합은 SQuAD 문단을 학습한 뒤, 문단 없이 관련 질문에 답하게 하는 실험입니다. 저자들은 공정한 비교를 위해 모델과 하이퍼파라미터를 포함해 SEAL 논문의 설정을 그대로 따랐다고 밝힙니다. 단일 문단 설정은 문단 하나씩, **연속 사전학습(Continued Pre-Training, CPT)** 설정은 문단 200개를 한 번에 학습하고 관련 질문 974개로 평가합니다.

| 방법 | 단일 문단 (n = 1) | 연속 사전학습 (n = 200) |
| --- | --- | --- |
| 기본 모델 | 31.9 | 31.9 |
| 꿈 없이 미세조정 | 33.4 | 32.0 |
| SEAL | 46.7 | 43.2 |
| Sleep (Transformer) | 48.1 | 44.3 |
| Sleep (Transformer + 4단계 메모리) | **48.9** | **46.2** |
| 기울기 기반 선별 제거 | 47.1 | 45.2 |
| 무작위 전문가 제거 | 48.0 | 44.7 |
| 꿈 단계 제거 | 35.7 | 36.2 |

꿈 단계를 빼면 점수가 35.7, 36.2로 떨어져 SEAL보다도 낮아집니다. 이 과제에서 개선의 대부분은 꿈 단계, 즉 SEAL 계열의 자기 생성 학습에서 나온다고 볼 수 있습니다. 기울기 기반 선별과 무작위 전문가를 각각 뺐을 때의 하락 폭은 0.9~1.8점입니다. 연속 사전학습 열은 비교 기준도 확인해야 합니다. Sleep 논문이 적은 SEAL 43.2는 [SEAL 논문](https://arxiv.org/abs/2506.10943) 첫 판(2025년 6월)의 43.8에 가까운 값입니다. 2025년 9월 개정판은 같은 200문단 설정을 전체 미세조정(full fine-tuning)으로 돌려 SEAL 58.2를 보고합니다.

블로그가 다루지 않은 few-shot ARC(Abstraction and Reasoning Corpus) 실험도 있습니다. Llama-3.2-1B로 ARC 과제 중 기본 설정에서 풀 수 없는 것을 걸러 학습용 11개, 평가용 8개만 남겼고, 평가 과제마다 꿈 5개를 만들어 각각 적용한 뒤 정답을 낸 비율을 보고합니다. Sleep은 80%로 SEAL(72.5%), 테스트 시점 학습(Test-Time Training, TTT)(10%), ICL(0%)보다 높습니다. 다만 평가 과제 8개에 꿈 5개씩, 모두 40번의 시도라서 Sleep과 SEAL의 차이는 32번과 29번, 즉 3번입니다.

## 비슷한 이름, 비슷한 목표의 연구들과 비교

Sleep은 지식을 어디에, 언제 저장하느냐로 보면 기존 연구들과 위치가 구분됩니다. 아래 표는 논문이 직접 비교하거나 관련 연구 절에서 언급한 방법들을 정리한 것입니다.

| 방법 | 새 지식을 저장하는 곳 | 매개변수 수 | 통합 시점 |
| --- | --- | --- | --- |
| ICL | 문맥 창 (KV 캐시) | 그대로 | 없음 (세션이 끝나면 사라짐) |
| [Cartridges](https://arxiv.org/abs/2506.06266) | 미리 학습한 KV 캐시 어댑터 | 어댑터 추가 | 말뭉치마다 자기 학습(self-study)으로 미리 학습 |
| [Sleep-time Compute](https://arxiv.org/abs/2504.13171) | 미리 추론해 둔 텍스트 | 그대로 | 질문이 오기 전 유휴 시간 |
| Nested Learning의 Hope | 갱신 빈도가 다른 MLP 블록 | 그대로 | 깨어 있는 동안 온라인 통합 |
| SEAL | 자기 편집 데이터로 미세조정한 가중치 | 그대로 | 자기 편집마다 |
| Lee 외 2026 (Do Language Models Need Sleep?) | SSM 블록의 빠른 가중치 | 그대로 | 주기적으로 오프라인 반복 계산 |
| Google Sleep | 새로 켠 저랭크 MoE 전문가 | 잠잘 때마다 증가 | 빠른 블록이 갱신되기 직전 |

논문은 이름이 비슷한 Sleep-time Compute와의 차이를 직접 설명합니다. Sleep-time Compute는 질문이 오기 전 유휴 시간에 예상 질문에 필요한 내용을 문맥에서 미리 추론해 텍스트로 남겨 두는 방법이고, Sleep은 증류로 텍스트 지식을 가중치 갱신으로 바꾸는 방법이라는 것입니다. 2026년에 많이 나온 OPSD 계열 연구와의 차이도 저자들이 정리했습니다. 그 연구들은 교사와 학생이 같은 크기이고, 고정 용량 체크포인트를 단일 목표로 학습합니다. Sleep은 용량을 늘리면서 갱신 빈도 사슬을 따라 반복해서 통합합니다. 같은 저자가 교신저자로 참여한 메모리 연구로는 [Memory Caching(MC)](https://discuss.pytorch.kr/t/memory-caching-mc-rnn-feat-google/10672)도 있습니다.

## 지금 확인할 수 있는 것과 아직 없는 것

Sleep 프레임워크는 배포 뒤에도 배우는 LLM을 학습과 추론의 구분이 아닌 메모리 계층과 주기의 문제로 다시 정의합니다. 기억 통합으로 지식을 새 매개변수에 옮기고, 꿈으로 그 지식을 연습하는 두 단계 구성은 논문의 절제 실험에서 각각 효과가 확인됩니다.

다만 이 연구를 직접 써 보거나 재현하려는 독자는 다음을 알아 두어야 합니다.

- **공식 코드와 가중치가 없습니다.** 블로그와 논문 어디에도 저장소나 체크포인트 링크가 없습니다. 부록은 _"원래 벤치마크의 설정을 따르므로 모델 세부는 그 연구들을 참고하라"_ 고만 쓰고 있어, 연속 번역과 BABILong 실험의 백본 크기는 논문만으로 알 수 없습니다. 2026년 10월 30일 제3자가 올린 재현 시도는 두 건 있는데, 둘 다 원 논문의 Hope/CMS 구조 대신 기존 모델과 LoRA를 썼습니다. [jmars/sleep-public](https://github.com/jmars/sleep-public)은 고정한 4비트 OLMoE-1B-7B에서 SQuAD 200문단 실험을 했고, 꿈 조건의 정확 일치(exact match)가 0.33으로 기본 모델(10.94)보다 낮았다고 보고합니다. 저자 스스로 기반 구조가 달라 이 결론이 원 논문에 그대로 옮겨지지는 않는다고 밝힙니다. [harishkotra/sleep-replication](https://github.com/harishkotra/sleep-replication)은 가상의 사실을 Qwen2.5-7B 4비트 모델에 학습시켰습니다. 통합과 꿈 데이터로 학습한 LoRA는 42문항에서 세 번 반복 평균 37.3%로, 원문 그대로 뽑은 질문-답(QA) 쌍으로 미세조정한 경우(11.9%)보다 높았습니다. 다만 같은 내용을 프롬프트에 모두 넣은 ICL은 100%였습니다.
- **동료 평가를 거친 학회 논문이 아닙니다.** OpenReview에는 2025년 9월 [ICLR 2026에 투고된 판](https://openreview.net/forum?id=iiZy6xyVVE)이 채택 표시 없이 남아 있고, 2026년 9월 [ICLR 2027 투고본](https://openreview.net/forum?id=4BIMcGrZjq)이 올라 있습니다.
- **잠자는 단계는 공짜가 아닙니다.** 같은 스텝 기준 SFT보다 4배 비싸고, 꿈 단계에서는 꿈마다 모델 사본을 LoRA로 미세조정하는 내부 루프가 돕니다.

지속 학습을 연구하거나 에이전트 메모리를 설계한다면, 이 논문을 문맥 압축(Cartridges), 유휴 시간 사전 추론(Sleep-time Compute), 자기 편집 미세조정(SEAL)과 비교하는 기준점으로 쓸 수 있습니다. 다만 배포 중인 모델에 바로 적용할 수 있는 방법은 아직 아닙니다.

## 📜 The sleep framework: A new way for LLMs to retain knowledge in continual learning 소개 블로그

> **[The sleep framework: A new way for LLMs to retain knowledge in continual...](https://research.google/blog/the-sleep-framework-a-new-way-for-llms-to-retain-knowledge-in-continual-learning/)**

## 📜 Language Models Need Sleep: Learning to Self-Modify and Consolidate Memories 논문

> **[Language Models Need Sleep: Learning to Self-Modify and Consolidate Memories](https://arxiv.org/abs/2606.03979)**
>
> The past few decades have witnessed significant advances in the design of machine learning algorithms, from early studies on task-specific shallow models to more general deep Large Language Models (LLMs). Despite showing promising results in tasks...

## 더 읽어보기

- [Introducing Nested Learning: A new ML paradigm for continual learning (Google Research)](https://research.google/blog/introducing-nested-learning-a-new-ml-paradigm-for-continual-learning/)

- [Nested Learning: The Illusion of Deep Learning Architectures (arXiv)](https://arxiv.org/abs/2512.24695)

- [Self-Adapting Language Models, SEAL (arXiv)](https://arxiv.org/abs/2506.10943)

- [재귀적 자기 개선(RSI, Recursive Self-Improvement) 기법에 대한 서베이 연구 (1/2): 분류체계 및 배포 시점, 학습 시점의 자기 개선 루프 등](https://discuss.pytorch.kr/t/rsi-recursive-self-improvement-1-2/12068)

- [Memory Caching(MC): 길이에 따라 메모리가 커지는 RNN에 대한 연구 (feat. Google)](https://discuss.pytorch.kr/t/memory-caching-mc-rnn-feat-google/10672)

- [[2026/05/25 ~ 31] 이번 주에 살펴볼 만한 AI/ML 논문 모음](https://discuss.pytorch.kr/t/2026-05-25-31-ai-ml/10463)

- [LightMem: LLM 및 AI Agent를 위한 효율적인 경량 메모리 프레임워크에 대한 연구 및 라이브러리](https://discuss.pytorch.kr/t/lightmem-llm-ai-agent/8021)

- [Reef: 에이전트가 서비스되는 동안 모델 가중치와 하네스를 계속 갱신하는 지속 학습 인프라](https://discuss.pytorch.kr/t/reef/11830)

* * *

_이 글은 GPT 모델로 정리한 초안을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 댓글로 알려주시기를 부탁드립니다._ 🤗

[:pytorch:파이토치 한국 사용자 모임🇰🇷](https://pytorch.kr/)은 이런 글들을 한국어로 정리해 나누고 있습니다. [회원으로 가입](https://discuss.pytorch.kr/signup)하시면 주요 글들을 이메일💌로 보내드리고, [텔레그램(Telegram)](https://t.me/pytorchkr)과 [Slack/Discord/Teams/Dooray/GoogleChat 등](https://discuss-noti.pytorch.kr)으로도 새 글 알림을 받으실 수 있습니다. 😃

🎁 아래↘쪽에 좋아요👍를 눌러주시면 다음 글을 정리하는 데 힘이 됩니다~ 🤩
