많은 사람들이 AI 채팅을 검색의 대안으로 사용합니다. 이를 안전하게 하려면 LLM이 정보를 어디서 얻는지 이해하는 것이 중요합니다. LLM이 잘못된 정보를 내놓을 때, 이는 보통 누락되었거나, 잘못되었거나, 품질이 낮은 컨텍스트의 부작용입니다.
그런 일이 왜 일어나는지 모른다면, 모델이 정보를 지어내서 여러분을 속이려 한다고 느끼기 쉽습니다. 하지만 모델의 지식이 어디서 오는지 이해하고 나면, 모델이 어디서 실수할 수 있는지를 더 명확하게 예측할 수 있습니다. 또한 여러분의 토큰이 어디로 쓰이고 있는지 파악하고, 언제 더 많은 컨텍스트에 비용을 지불할 가치가 있는지 판단할 수도 있습니다.
답변은 어디서 오는가
몸풀기입니다 - 그냥 한번 추측해 보세요.
AI 채팅 모델이 질문에 답할 때, 그 답은 어디서 오는 걸까요?
세 가지 모두 일어납니다. 이 레슨에서는 학습을 통해 얻은 지식, 여러분이 대화에 입력한 내용, 그리고 모델이 스스로 찾아보는 내용 순서로 이를 살펴봅니다.
파라메트릭 메모리
모델은 때때로 그냥... 무언가를 알고 있습니다. 이러한 내장된 지식을 파라메트릭 메모리(parametric memory)라고 부르는데, 이는 모델의 가중치, 즉 매개변수(parameters)에 내재되어 있기 때문입니다.
누구도 백과사전을 만들려고 한 것은 아니지만, LLM이 기억 속에서 암송할 수 있는 사실들은 텍스트를 예측하도록 학습하는 과정의 부산물로 생겨났습니다.
파라메트릭 메모리가 한계에 부딪히는 지점
파라메트릭 메모리는 어떤 것에는 강하고 어떤 것에는 약합니다. 아래는 모델이 가장 가능성이 높은 다음 단어를 예측하며 작성 중인 문장들입니다. 각 문장에서 다음 몇 단어를 클릭해 확인한 후, 모델이 올바른 정보를 생성했는지 직접 판단해 보세요.
컨텍스트 추가하기
Claude가 학습만으로는 답할 수 없는 질문을 살펴보겠습니다.
이 위젯에서 추가 컨텍스트를 제공하여 질문을 조금 수정하면, 모델에게 작업이 눈에 띄게 쉬워집니다.
컨텍스트 창
언어 모델의 컨텍스트에는 최대 크기가 있습니다. 이 글을 쓰는 시점을 기준으로, 현재 Claude의 플래그십 모델은 최대 100만 개의 토큰(새 탭에서 열림)을 담을 수 있습니다.
이는 모비딕(Moby-Dick) 약 세 권 분량에 해당합니다. 그렇다면 어떻게 공간이 부족해질 수 있을까요?
초창기 AI 채팅에서는 이 한계에 도달하면 처음부터 다시 시작해야 했습니다. 2024년이나 2025년에 채팅 인터페이스를 사용하다가 직접 이 한계에 도달해 본 적이 있을 수도 있습니다. 하지만 그런 일이 일어났을 때도, 여러분은 자신이 소설 서너 권보다 훨씬 적게 입력했다는 것을 알고 있습니다 - 대부분의 사람들은 그렇게 수다스럽지 않으니까요. 그렇다면 여러분의 100만 토큰은 어디로 간 걸까요? 함께 살펴보겠습니다.
창 채우기
일반적인 채팅 상호작용을 진행하면서 컨텍스트 창이 채워지는 과정을 지켜보세요. 이 예시를 이해하기 쉽게 만들기 위해, 컨텍스트 창이 단 1,000 토큰에 불과한 훨씬 더 작은 모델을 상상해 보겠습니다.
컴팩션
컨텍스트 창이 한계에 가까워지면, 앱은 Claude에게 지금까지의 전체 대화를 요약하도록 요청하고, 그 요약이 이전에 있던 컨텍스트를 대체합니다.
컴팩션(Compaction)을 사용하면 새로운 대화를 시작하는 대신 기존 대화를 계속할 수 있습니다. 작동 방식은 다음과 같습니다:
- 먼저, 앱이 이를 감지합니다. 컨텍스트 창에 과부하를 줄 수 있는 요청을 보내는 대신, 앱은 여러분의 다음 턴을 보류하고 컴팩션을 시작합니다.
- 다음으로, Claude가 요약합니다. 지금까지의 대화가 "첨부된 것은 인간과 모델 간의 대화입니다. 지금까지 있었던 모든 일에 대한 요약을 생성해 주세요"와 같은 프롬프트와 함께 Claude에게 전달됩니다.
- 마지막으로, 대화는 그 요약으로부터 이어집니다. 요약이 대화 기록을 대체하고, 1단계에서 보류되었던 질문이 Claude에게 전달되어 응답을 받습니다.
직접 해보기: 컴팩션
기록된 메모리
메모리는 엄격하게 제한된 창이 무한하게 느껴지도록 만드는 방법입니다. Claude는 한 대화에서 메모를 작성하고, 그 메모는 다음 대화의 시작 부분에 다시 추가됩니다.
메모리를 Claude가 메멘토(Memento) 스타일로 무언가를 적어두고 나중에 다시 읽는 것이라고 생각해 보세요: Claude는 낮잠을 자고 완전히 상쾌하게 깨어나서, 이전에 스스로를 위해 작성해 둔 메모리 파일들을 둘러볼 수 있습니다. 이를 파라메트릭 메모리와 혼동되지 않도록 기록된 메모리(written memory)라고 부르겠습니다.
컴팩션은 Claude가 컨텍스트 한계를 넘어 하나의 대화를 계속할 수 있게 해주는 방법입니다. 기록된 메모리는 Claude가 여러 대화에 걸쳐 중요한 세부 정보를 컨텍스트에 유지하는 방법입니다.
스케치를 왼쪽에서 오른쪽으로 읽어 보세요. 화요일에 여러분이 선호사항을 말하면 Claude가 이를 눈에 보이게 적어둡니다. 그런 다음 목요일, 새로운 대화에서 Claude는 그 선호사항을 다시 전달받지 않습니다. 하지만 메모리 노트는 여러분의 첫 메시지 이전에 조용히 컨텍스트에 삽입됩니다. 이 과정을 통해 Claude는 여러분이 공유한 직접적인 피드백을 바탕으로 시간이 지나도 여러분의 선호사항을 기억할 수 있습니다.
이 메모리는 화요일의 전체 컨텍스트가 없는 완전히 새로운 세션에서도 미래의 대화에 반영됩니다.
Claude 제품마다 메모리를 구현하는 방식이 다릅니다. Claude Code는 코드베이스 전반에 걸쳐 CLAUDE.md 파일(새 탭에서 열림)을 읽는 반면, claude.ai는 설정에 메모리를 보관합니다(새 탭에서 열림). 하지만 위치가 다르더라도 과정은 동일합니다: Claude가 중요한 정보를 적어두면, 이후의 Claude 인스턴스가 다음 대화가 시작될 때 그것을 다시 읽어옵니다.
메모리의 일주일
동일한 어시스턴트와 함께하는 5일. Claude가 무엇을 적어두는지 주목하고, 그것을 매번 새로 찾아보는 것과 비교해 보세요.
선행 삽입 컨텍스트
한 걸음 물러서서 보면, Claude가 여러분의 첫 번째 토큰을 보기도 전에 매우 많은 것이 컨텍스트에 추가됩니다. 아래 위젯은 Claude와의 대화에 어떤 선행 삽입 컨텍스트(prepended context)가 추가될 수 있는지 보여줍니다. 정확한 내용은 제품마다 다릅니다.
에이전틱 컨텍스트
컨텍스트가 Claude의 능력을 보강하는 데 얼마나 중요한지 알게 되었으니, 이제 에이전틱 컨텍스트(agentic context), 즉 Claude가 답하기 전에 더 많은 컨텍스트를 얻기로 결정하는 경우를 이해하는 것이 중요합니다. 앞서 토마토 화분에 관한 예시에서 이런 일이 일어나는 것을 보았습니다. 그때 Claude는 파라메트릭 메모리나 이미 가지고 있던 컨텍스트로 답하는 대신 검색 도구를 사용했습니다.
다음 위젯에서는 여러분이 Claude라고 상상해 보세요. 사이드바에는 사용자의 메시지 이전에 조용히 컨텍스트에 삽입된 정보가 표시됩니다. 각 프롬프트에 대해, 이미 알고 있는 내용으로 답할지, 아니면 외부에서 더 많은 컨텍스트를 가져올지 결정해 보세요.
Claude는 매 턴마다 이와 동일한 판단을 내리며, 더 많은 컨텍스트를 얼마나 적극적으로 가져올지는 부분적으로 effort 설정에 따라 달라집니다. effort가 높을수록 Claude는 답하기 전에 검색하고, 읽고, 확인할 가능성이 높아지는데, 이는 대체로 더 나은 답변과 더 큰 컨텍스트 창을 의미합니다. effort가 낮을수록 Claude는 바로 답할 가능성이 높습니다. Claude Cowork와 Chat에서 effort 수준을 선택하는 방법(새 탭에서 열림)이나 Claude Code에서 선택하는 방법(새 탭에서 열림)을 알아보세요.
컨텍스트 추적하기
Claude의 다음 예시 답변을 살펴보세요. 강조 표시된 각 부분은 선행 삽입 컨텍스트의 일부로부터 영향을 받았습니다. 한 부분을 클릭해서 그것이 어디서 왔다고 생각하는지 확인해 보세요.
이제 여러분이 할 수 있는 것
- 가중치 안에 있는 것(파라메트릭 메모리)과 창 안에 있는 것(컨텍스트)의 차이를 구분해서 말할 수 있습니다.
- 창에는 상한선이 있으며, 그 창을 채우는 것이 여러분 혼자만이 아니라는 것을 알고 있습니다.
- 매 턴마다 전체 창이 다시 전송된다는 것을 알고 있으며, 언제 새로운 세션을 시작할지 의도적으로 결정할 수 있습니다.
- 컴팩션이 창을 무한하게 느껴지도록 만들 수 있는 요약 기법이지만, 세부 정보를 누락시킬 수도 있다는 것을 이해하고 있습니다.
- 기록된 메모리가 세션 사이에 어떻게 유지되는지 설명할 수 있습니다.
- Claude의 답변을 보고 선행 삽입 컨텍스트가 그 답변을 어떻게 형성했을지 추측해 볼 수 있습니다.
다음: Claude에서 effort 수준 선택하기(새 탭에서 열림) · Claude Code에서(새 탭에서 열림)
더 알아보기: AI 작동 방식(새 탭에서 열림) · AI의 역량과 한계(새 탭에서 열림)