Skip to main content

좋은 지식이 답의 근거를 만든다면, 좋은 기억은 대화의 연속성을 만듭니다. 둘은 비슷해 보이지만 역할이 다릅니다. 지식은 "무엇이 사실인가"에 가깝고, 기억은 "지금까지 무슨 일이 있었는가, 앞으로 무엇을 이어 가야 하는가"에 가깝습니다. 이 차이를 놓치면 AI는 자꾸 처음 만난 사람처럼 굴거나, 반대로 이미 잊어야 할 것까지 오래 붙들고 놓지 않습니다.

실무에서는 종종 이런 장면이 벌어집니다. 어제 분명히 정한 보고서 형식을 오늘 또 설명해야 하고, 사용자가 매번 같은 선호를 반복해서 말해야 하며, 긴 작업은 중간에 끊겼다가 다시 시작하면 맥락이 사라집니다. 이때 사람들은 "모델이 멍청하다"고 느끼지만, 실제 원인은 기억 설계가 없거나 엉성한 경우가 많습니다.

기억은 많이 쌓는다고 좋은 것이 아닙니다. 무엇을 남기고, 무엇을 버리고, 어떤 것은 잠깐만 들고 있다가 놓아야 합니다. 바로 그 선택이 성능과 안전을 동시에 좌우합니다.

기억을 설계하는 법

기억은 지식과 다르다

지식과 기억을 구분하는 가장 쉬운 방법은 시간성을 보는 것입니다. 지식은 비교적 안정된 정보입니다. 회사 환불 규정, 제품 기능 설명, 법적 절차, 조직의 정책 같은 것들이 여기에 가깝습니다. 반면 기억은 흐르면서 바뀌는 상태입니다. 지금 대화에서 사용자가 이미 밝힌 조건, 지난 회의에서 합의한 방향, 이번 프로젝트에서만 유효한 작업 규칙, 특정 사용자의 취향 같은 것들이 기억에 속합니다.

예를 들어 "우리 회사 환불 정책은 무엇인가"는 지식 문제입니다. 문서에서 찾아오면 됩니다. 하지만 "이 사용자는 지난 대화에서 빠른 요약을 선호한다고 말했다"는 기억 문제입니다. 검색 시스템이 아니라 상태 관리가 필요합니다.

이 둘을 섞어 버리면 이상한 일이 벌어집니다. 자주 바뀌는 상태를 영원한 규칙처럼 다루거나, 모두에게 공통인 정책을 개인의 선호처럼 취급하게 됩니다. 그래서 컨텍스트 엔지니어링에서 기억은 단순한 저장 기능이 아니라 시간에 따라 유지할 정보와 흘려보낼 정보를 구분하는 기술입니다.

대화 히스토리는 가장 쉬운 기억이지만, 가장 위험한 기억이기도 하다

많은 AI 시스템이 처음으로 사용하는 기억은 대화 히스토리입니다. 방금 오간 메시지를 그대로 넣는 방식입니다. 구현이 단순하고, 연속성도 금방 생깁니다. 사용자가 "아까 표로 정리해 달라고 했잖아"라고 말하면, 히스토리가 있으면 AI는 그 말을 이해할 수 있습니다.

문제는 대화 히스토리가 쌓일수록 점점 무거워진다는 점입니다. 사람도 긴 회의록을 처음부터 끝까지 매번 다시 읽으면 집중력이 흐려지듯, 모델도 너무 긴 히스토리 속에서는 중요한 정보와 잡음을 가려내기 어려워집니다.

대화 히스토리에는 특히 네 가지 위험이 있습니다.

  • 이미 끝난 지시가 계속 남아 현재 작업을 방해할 수 있습니다.

  • 사용자의 추측이나 잘못된 말이 사실처럼 굳어질 수 있습니다.

  • 오래된 결정과 최신 결정이 충돌할 수 있습니다.

  • 민감한 정보가 무심코 계속 재주입될 수 있습니다.

예를 들어 오전에는 "짧게 답해 달라"고 했다가 오후에는 "근거를 자세히 적어 달라"고 바꿨다면, 히스토리를 무조건 길게 넣는 방식은 둘 다 붙잡고 있다가 답을 흔들 수 있습니다. 그래서 히스토리는 기억의 출발점일 뿐, 기억 설계의 종착점이 되어서는 안 됩니다.

단기 기억은 지금 이 일을 이어 가기 위한 작업 메모다

단기 기억은 현재 세션이나 당장 진행 중인 작업을 위한 기억입니다. 쉽게 말해 책상 위에 펼쳐 둔 메모장과 비슷합니다. 지금 하는 일에 꼭 필요하지만, 일이 끝나면 치워도 되는 정보들이 여기에 들어갑니다.

단기 기억에 잘 어울리는 정보는 다음과 같습니다.

  • 현재 대화의 목표

  • 직전 몇 번의 질문과 답변

  • 방금 합의한 출력 형식

  • 지금 수정 중인 초안의 상태

  • 방금 실행한 도구 결과의 핵심 요약

예를 들어 문서 작성 에이전트가 있다고 해 봅시다. 사용자가 "임원 보고용으로 1페이지, 숫자 중심, 공격적인 표현은 빼고 써 달라"고 말했다면, 이것은 지금 작업의 단기 기억입니다. 오늘 이 문서를 쓰는 동안에는 중요하지만, 한 달 뒤 다른 문서를 쓸 때까지 영구히 기억할 필요는 없습니다.

좋은 단기 기억은 현재 작업을 빠르게 이어 가게 해 줍니다. 나쁜 단기 기억은 끝난 지시까지 질질 끌고 가며 다음 작업을 오염시킵니다.

요약 메모리는 긴 대화를 짧은 작업 상태로 바꾸는 장치다

대화가 길어지면 원문 전체를 계속 들고 가는 방식은 금방 한계에 부딪힙니다. 이때 필요한 것이 요약 메모리입니다. 요약 메모리는 대화의 모든 문장을 보존하는 것이 아니라, 지금 이후의 작업에 꼭 필요한 상태만 남기는 압축 메모입니다.

중요한 점은 요약 메모리가 단순한 줄거리 요약과 다르다는 것입니다. 좋은 요약 메모리는 "무슨 이야기를 했는가"보다 "지금 무엇이 결정되었고, 다음에 무엇을 이어야 하는가"를 남깁니다.

예를 들어 회의 보조 AI라면 다음처럼 남기는 편이 좋습니다.

  • 회의 목적: 3분기 출시 계획 조정

  • 결정 사항: 베타 일정 2주 연기, 마케팅 캠페인은 유지

  • 미해결 이슈: 법무 검토 일정 확정 필요

  • 다음 액션: PM이 수정 일정표 초안 작성

이런 메모는 길게 이어진 대화보다 훨씬 쓸모가 있습니다. 모델은 다시 긴 대화를 읽지 않아도 현재 상태를 파악할 수 있기 때문입니다.

다만 요약 메모리에는 함정도 있습니다. 요약이 틀리면 이후의 모든 답이 틀릴 수 있습니다. 특히 단정적인 문장으로 잘못 압축해 두면, 원문보다 더 위험해집니다. 그래서 요약 메모리는 가능하면 사실, 결정, 미해결 항목, 다음 행동처럼 구조를 나눠 저장하는 편이 안전합니다.

사용자 선호는 편의성을 높이지만, 성급하게 일반화하면 문제를 만든다

사용자 선호 기억은 AI를 훨씬 사람답게 보이게 만듭니다. 매번 "한국어로 답해 주세요", "표보다 문단을 선호합니다", "회의 요약은 세 줄로 짧게 부탁합니다"를 반복하지 않아도 되기 때문입니다. 이런 기억은 사용자 경험을 크게 개선합니다.

하지만 선호는 사실보다 훨씬 조심해서 저장해야 합니다. 이유는 간단합니다. 선호는 자주 바뀌고, 맥락에 따라 달라지기 때문입니다.

예를 들어 어떤 사용자가 평소에는 짧은 답을 좋아해도, 계약 검토나 리스크 분석에서는 자세한 설명을 원할 수 있습니다. 또 "농담 섞인 톤을 좋아한다"는 취향을 모든 업무 문맥에 적용하면 공식 문서 작성에서는 오히려 사고가 납니다.

그래서 사용자 선호는 다음처럼 다루는 편이 좋습니다.

  • 오래 유지될 가능성이 높은 것만 저장합니다.

  • 개인적 취향과 일회성 요청을 구분합니다.

  • 적용 범위를 함께 적습니다.

  • 확신이 낮으면 다음 대화에서 다시 확인합니다.

예를 들어 "사용자는 보고서 초안을 받을 때 먼저 결론 요약을 보는 것을 선호함"은 꽤 안정적인 선호입니다. 반면 "이번 답변은 조금 더 부드럽게 써 달라"는 일회성 요청일 가능성이 큽니다. 둘을 똑같이 기억하면 안 됩니다.

프로젝트 기억은 장기 작업의 뼈대다

프로젝트 기억은 특정 과업이 며칠, 몇 주, 길게는 몇 달에 걸쳐 이어질 때 필요합니다. 여기에는 단순한 대화 맥락보다 더 안정된 상태가 담깁니다. 목표, 범위, 용어 정의, 주요 결정, 버전 상태, 담당자 역할, 미해결 이슈 같은 것들입니다.

예를 들어 제품 기획 문서를 함께 쓰는 AI를 생각해 보겠습니다. 이때 프로젝트 기억에는 이런 정보가 들어갈 수 있습니다. 제품의 핵심 목표는 무엇인지, 이번 문서의 독자는 누구인지, 이미 합의된 기능 범위는 어디까지인지, 금지된 표현은 무엇인지, 아직 열려 있는 쟁점은 무엇인지 같은 내용입니다.

프로젝트 기억이 없으면 AI는 매번 처음 브리핑을 받는 사람처럼 행동합니다. 반대로 프로젝트 기억이 있으면 "지난주에 범위를 축소하기로 했으니 이번 제안서에서도 그 전제를 유지하겠다"처럼 일관된 진행이 가능해집니다.

다만 프로젝트 기억도 무한정 쌓이면 문제가 됩니다. 종료된 이슈, 폐기된 아이디어, 뒤집힌 결정이 계속 남아 있으면 현재 판단을 흐립니다. 그래서 프로젝트 기억에는 항상 상태 표시가 필요합니다. 진행 중인지, 폐기되었는지, 확정되었는지, 검토 중인지가 함께 관리되어야 합니다.

무엇을 기억할 것인가

기억 설계에서 가장 중요한 질문은 "얼마나 많이 저장할까"가 아니라 "무엇이 미래의 판단에 실제로 도움이 되는가"입니다. 도움이 되는 기억은 보통 세 조건을 만족합니다.

첫째, 반복해서 다시 사용할 가능성이 있어야 합니다. 한 번 말하고 끝나는 문장은 굳이 기억하지 않아도 됩니다.

둘째, 다음 행동이나 판단에 영향을 줘야 합니다. 기억해도 결과가 달라지지 않는 정보는 저장 비용만 늘립니다.

셋째, 비교적 안정적이어야 합니다. 자주 바뀌는 정보는 영구 기억보다 임시 상태로 두는 편이 낫습니다.

실무적으로 기억할 가치가 큰 정보는 보통 이런 종류입니다.

  • 사용자의 지속적 선호

  • 프로젝트의 핵심 목표와 제약

  • 이미 합의된 결정 사항

  • 반복 작업에 필요한 개인화 설정

  • 다음 작업을 이어 가기 위한 미해결 항목

반대로 재미있지만 쓸모없는 잡담, 확인되지 않은 추측, 이미 완료된 임시 지시, 민감하지만 작업에 필요 없는 정보는 기억의 후보에서 빼는 편이 좋습니다.

무엇을 잊게 할 것인가

잘 잊는 능력은 잘 기억하는 능력만큼 중요합니다. 오히려 실무에서는 잊기 설계가 더 어렵습니다. 사람은 무언가를 저장하는 일에 집중하지만, 시스템 품질은 종종 무엇을 버렸느냐에서 갈립니다.

잊어야 할 정보의 대표적인 예는 다음과 같습니다.

  • 현재 작업과 더 이상 관계없는 임시 지시

  • 오래된 버전의 결정 사항

  • 사용자가 말했지만 검증되지 않은 사실

  • 대화 중 우연히 나온 민감 정보

  • 이미 끝난 작업의 세부 시행착오

예를 들어 사용자가 초안을 세 번 수정하는 동안 "첫 문단은 조금 더 밝게", "아니다, 다시 차분하게", "역시 공식적으로"라고 바꿨다면, 마지막 상태만 남기고 중간 시행착오는 정리해서 버리는 편이 낫습니다. 모든 흔적을 다 들고 있으면 모델은 어느 톤이 최신인지 흔들릴 수 있습니다.

또 하나 중요한 것은 삭제와 무시의 차이입니다. 어떤 정보는 저장소에서 완전히 지워야 하고, 어떤 정보는 남겨 두되 현재 컨텍스트에 다시 넣지 않으면 됩니다. 개인정보나 민감 정보는 전자에 가깝고, 이미 끝난 작업 메모는 후자에 가깝습니다. 이 차이를 설계 단계에서 분명히 해야 합니다.

단기 기억과 장기 기억은 분리해서 다뤄야 한다

초보적인 시스템은 모든 기억을 한 통에 넣으려 합니다. 하지만 실제로는 단기 기억과 장기 기억의 성격이 너무 다릅니다.

단기 기억은 빠르게 읽고 빠르게 버리는 쪽에 가깝습니다. 현재 작업의 흐름이 중요합니다. 장기 기억은 쉽게 바꾸지 않고, 필요할 때만 불러오는 쪽에 가깝습니다. 안정성과 신뢰도가 중요합니다.

이 둘을 섞으면 두 가지 문제가 동시에 생깁니다. 단기 기억은 너무 오래 남아 오염원이 되고, 장기 기억은 임시 지시와 뒤섞여 신뢰도가 떨어집니다.

감각적으로는 이렇게 나누면 이해가 쉽습니다.

  • 단기 기억: 지금 책상 위에 펴 둔 메모

  • 장기 기억: 서랍에 정리해 둔 카드

  • 외부 지식: 필요할 때 찾아보는 참고서

예를 들어 개인 비서형 AI라면, "이번 주 금요일 회의 전까지 발표문 수정"은 단기 기억일 수 있습니다. 반면 "사용자는 오전 회의보다 오후 회의를 선호함"은 장기 기억이 될 수 있습니다. 그리고 "회의실 예약 정책"은 기억이 아니라 외부 지식으로 두는 편이 더 적절합니다.

기억은 원문 보관보다 '구조화된 상태'가 더 중요하다

사람들은 기억이라고 하면 대화를 통째로 저장하는 모습을 먼저 떠올립니다. 하지만 실무에서 더 강력한 방식은 원문 보관이 아니라 구조화입니다. 즉, 그냥 쌓는 것이 아니라 종류별로 정리하는 것입니다.

예를 들어 다음 네 칸으로만 나눠도 품질이 크게 좋아집니다.

  • 사용자 선호

  • 프로젝트 상태

  • 최근 결정 사항

  • 다음 행동 항목

이렇게 정리하면 모델은 긴 히스토리를 헤매지 않고 필요한 슬롯만 볼 수 있습니다. "사용자가 표를 좋아하나?", "이번 프로젝트의 마감일이 언제인가?", "방금 무엇이 결정됐나?" 같은 질문에 더 빠르게 접근할 수 있습니다.

구조화의 장점은 또 있습니다. 업데이트가 쉬워집니다. 선호가 바뀌면 선호 칸만 고치면 되고, 프로젝트가 끝나면 프로젝트 상태만 닫으면 됩니다. 반면 대화 원문에 모든 것을 의존하면, 무엇이 바뀌었는지 찾는 일부터 어려워집니다.

기억은 추론을 돕는 도구이지, 진실의 저장소가 아니다

이 점은 꼭 강조할 필요가 있습니다. 기억에는 사람이 말한 내용이 들어옵니다. 그런데 사람의 말은 언제나 사실과 같지 않습니다. 추측, 오해, 과장, 임시 판단이 섞여 있습니다. 따라서 기억 저장소를 진실의 데이터베이스처럼 다루면 위험합니다.

예를 들어 사용자가 "지난번에 법무팀이 이 문구 괜찮다고 했던 것 같아요"라고 말한 내용을 기억해 두었다고 합시다. 이것을 확정 사실처럼 재사용하면 큰 문제가 됩니다. 이런 문장은 기억할 수는 있지만, 반드시 상태를 달리 표시해야 합니다. 예를 들면 "사용자 진술", "미검증", "확인 필요" 같은 꼬리표가 필요합니다.

기억의 본질은 사실 보관이 아니라 다음 추론에 참고할 상태 제공입니다. 따라서 기억에는 언제나 신뢰도와 출처 감각이 따라붙어야 합니다.

개인정보와 보안은 기억 설계의 핵심 조건이다

기억이 편리한 이유는 한 번 말한 것을 다시 말하지 않아도 되기 때문입니다. 그러나 바로 그 편리함 때문에 보안 사고도 생깁니다. 저장된 기억은 다음 대화에 다시 등장할 수 있고, 잘못 설계하면 불필요한 개인정보가 계속 살아남습니다.

특히 장기 기억에서는 다음 질문을 반드시 던져야 합니다.

  • 이 정보를 꼭 저장해야 하는가

  • 저장 기간은 얼마나 되어야 하는가

  • 누가 이 기억을 볼 수 있는가

  • 사용자가 수정하거나 삭제를 요청할 수 있는가

  • 민감 정보는 분리되거나 마스킹되어 있는가

예를 들어 사용자의 음식 취향을 기억하는 것은 비교적 가벼운 일일 수 있습니다. 그러나 주민등록번호, 건강 상태, 급여 정보, 계약서 민감 조항 같은 내용은 전혀 다르게 다뤄야 합니다. 어떤 정보는 아예 장기 기억에 들어가면 안 됩니다.

또한 권한 분리가 필요합니다. 고객지원 AI가 고객의 선호를 기억하는 것과, 재무 관련 민감 정보를 자유롭게 재사용하는 것은 완전히 다른 문제입니다. 기억이 있다고 해서 모든 작업에 다시 주입해도 된다는 뜻은 아닙니다.

좋은 기억 시스템은 자주 확인하고, 자주 정리한다

기억 설계는 한 번 저장 규칙을 정했다고 끝나지 않습니다. 시간이 지나면 기억은 낡고, 충돌하고, 쓸모없어집니다. 그래서 운영 단계에서는 정리 규칙이 꼭 필요합니다.

실무에서 효과적인 방법은 주기적으로 다음 작업을 하는 것입니다.

  • 오래된 기억 만료시키기

  • 충돌하는 기억 검토하기

  • 잘못 저장된 선호 수정하기

  • 프로젝트 종료 시 관련 기억 닫기

  • 민감 정보 보존 여부 재점검하기

이 과정이 없으면 기억 저장소는 편리한 비서가 아니라 지저분한 창고가 됩니다. 처음에는 똑똑해 보이지만, 시간이 갈수록 옛 정보에 끌려 다니는 시스템이 됩니다.

실전 감각: 어떤 기억이 답을 좋게 만들고, 어떤 기억이 답을 망치는가

문서 작성 AI를 예로 들어 보겠습니다. 사용자가 "나는 초안에서 먼저 결론을 보고 싶다"는 선호를 갖고 있다면, 이것을 기억하는 것은 답의 품질을 높입니다. 매번 좋은 형식을 더 빨리 만들 수 있기 때문입니다.

반대로 사용자가 한 번 화가 나서 "앞으로는 무조건 세 줄로만 답해"라고 말했다고 해서 이를 영구 선호로 저장하면 문제가 됩니다. 다음에 정밀한 분석이 필요한 상황에서도 지나치게 짧은 답만 내놓게 될 수 있습니다.

고객지원 챗봇도 비슷합니다. "이 고객은 최근 배송 지연으로 불만이 큰 상태"라는 정보는 단기적으로 매우 유용한 기억일 수 있습니다. 응대 톤과 우선순위를 조정할 수 있기 때문입니다. 하지만 그 감정 상태를 장기 프로필처럼 계속 유지하면, 다음 문의에서도 과도하게 조심스러운 답을 하거나 오판할 수 있습니다.

좋은 기억은 미래의 판단을 돕습니다. 나쁜 기억은 과거의 우연을 미래의 규칙으로 바꿔 버립니다.

기억 설계의 실전 원칙

마지막으로, 기억을 설계할 때 붙잡아 둘 만한 원칙을 간단히 정리해 보겠습니다.

  • 반복해서 쓸 정보만 기억합니다.

  • 임시 지시와 장기 선호를 구분합니다.

  • 사실, 추측, 결정, 미해결 항목을 섞지 않습니다.

  • 대화 원문보다 구조화된 상태를 우선합니다.

  • 오래된 기억은 주기적으로 만료하거나 재검토합니다.

  • 민감 정보는 최소한만 저장하고, 가능하면 저장하지 않습니다.

  • 사용자가 수정·삭제할 수 있는 길을 열어 둡니다.

이 원칙을 지키면 기억은 단순한 편의 기능이 아니라, AI 시스템의 안정성을 높이는 기반이 됩니다.

잘 설계된 기억은 AI를 '말 잘하는 도구'에서 '이어 가는 시스템'으로 바꾼다

AI가 매번 처음부터 설명을 다시 들어야 한다면, 아무리 문장을 잘 써도 실무에서는 금방 피곤해집니다. 반대로 필요한 것만 적절히 기억한다면, AI는 점점 더 맥락을 아는 협업 도구처럼 움직이기 시작합니다. 방금 한 말을 이어 받고, 지난 결정을 존중하고, 사용자의 선호를 무리 없이 반영하며, 긴 작업을 중간에 끊겨도 다시 이어 갑니다.

하지만 그 변화는 자동으로 오지 않습니다. 기억은 많이 쌓는 기술이 아니라, 필요한 것만 남기고 나머지는 흘려보내는 기술입니다. 결국 좋은 기억 설계는 저장의 기술이면서 동시에 망각의 기술입니다.

AI에게 무엇을 알려 줄지는 지식 설계의 문제였습니다. AI가 무엇을 계속 붙잡고 갈지는 기억 설계의 문제입니다. 이 둘을 구분할 수 있을 때, 비로소 시스템은 더 정확해질 뿐 아니라 더 안전해집니다.

책 목록

컨텍스트 엔지니어링: 프롬프트를 넘어 AI가 제대로 일하게 만드는 정보 설계의 기술

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기