AI 기초
AI 에이전트 메모리란? 단기, 장기, 일화 및 의미 메모리 설명
에이전트 메모리는 하나의 데이터베이스나 끝없이 커지는 프롬프트가 아닙니다. 작업 컨텍스트, 에피소드, 사실, 학습된 절차를 보존하고 적시에 올바른 정보를 검색하도록 설계된 시스템입니다.

AI 에이전트 메모리는 에이전트가 즉각적인 모델 응답을 넘어 필요로 할 수 있는 정보를 저장, 조직 및 검색하는 시스템입니다. 이는 활성 작업 상태, 과거 경험, 사실, 선호도 및 학습된 절차를 보존할 수 있지만, 하나의 데이터베이스가 아니며 모델의 컨텍스트 윈도우와도 동일하지 않습니다.
메모리는 에이전트가 장기 작업 및 반복적인 상호작용에서 일관성을 유지하도록 돕습니다. 또한 오래된 사실, 프라이버시 위험, 오해를 일으키는 검색을 초래할 수도 있습니다. 핵심 설계 질문은 “에이전트가 모든 것을 기억하도록 할 수 있나요?”가 아니라 “무엇을, 얼마나 오래, 어떤 권한 하에 기억해야 하는가?” 입니다.
컨텍스트는 메모리가 아니다
모델의 컨텍스트 윈도우는 특정 추론 동안 이용 가능한 정보이며, 지시문, 메시지, 도구 결과, 검색된 문서 및 기타 입력을 포함합니다. 이는 일시적인 작업 공간과 같은 역할을 합니다.
메모리는 어떤 정보가 지속되고 선택된 기록이 작업 공간으로 돌아오는지를 결정하는 보다 포괄적인 메커니즘입니다. 대화가 가득한 데이터베이스는 저장소에 불과하며, 시스템이 적절한 시점에 올바른 정보를 검색하고 그 신뢰성을 표현할 수 있을 때 비로소 유용한 메모리가 됩니다.
이 구분은 중요합니다. 큰 컨텍스트 윈도우가 메모리 관리를 해결해 주지는 않기 때문입니다. 모든 이전 이벤트를 프롬프트에 채우면 비용이 증가하고 모델이 관련 없거나 모순되는 세부 정보에 방해받을 수 있습니다.
에이전트 메모리의 주요 유형
생산 시스템은 대화 상태, 구조화된 데이터베이스, 벡터 검색, 이벤트 로그 및 버전화된 지시문의 조합을 통해 네 가지 모두를 구현할 수 있습니다. 이 분류는 정보가 수행하는 역할을 설명하며, 이를 저장하는 데이터베이스 제품을 의미하지 않습니다. 고객 선호도는 관계형 테이블이든 벡터 인덱스이든 의미 메모리입니다.
작업(단기) 메모리
작업 메모리는 현재 작업의 활성 상태를 보관합니다: 목표, 현재 계획, 최근 관찰, 열린 질문, 도구 출력 및 완료된 단계들. 이는 대화 내에 일부, 구조화된 상태 객체에 일부 저장되는 경우가 많습니다.
작업 컨텍스트가 제한적이기 때문에, 장기 실행 에이전트는 오래된 이벤트를 요약하거나 중요한 변수를 별도로 보존하거나 작업의 다음 관련 부분만 로드할 수 있습니다.
일화 메모리
일화 메모리는 경험을 사건으로 기록합니다: 무슨 일이 일었는지, 언제, 어떤 상황에서, 어떤 행동을 취했는지, 그리고 어떤 결과가 있었는지. 에이전트는 특정 배포가 구성 변경 후 실패했거나 사용자가 명시된 이유로 추천을 거부했음을 기억할 수 있습니다.
일화 기록은 사례 기반 추론을 지원할 수 있습니다—현재 상황과 유사한 과거 상황을 찾는 것. 이전 결과가 더 이상 적용되지 않는 조건에 의존했을 수 있기 때문에 신중한 귀속이 필요합니다.
의미 메모리
의미 메모리는 단일 사건과 무관하게 사실과 개념을 나타냅니다. 예로는 고객이 선호하는 언어, 내부 지표의 정의, 제품 간 관계 등이 있습니다.
의미 메모리는 문서, 벡터 인덱스, 관계형 데이터베이스 또는 지식 그래프에 존재할 수 있습니다. 중요한 사실에는 출처, 타임스탬프 및 소유권이 포함되어야 하며, 이를 통해 에이전트는 권위 있는 기록과 모델이 생성한 요약을 구분할 수 있습니다.
절차 메모리
절차 메모리는 작업 수행 방법을 포착합니다: 워크플로, 도구 선택 규칙, 체크리스트, 성공적인 계획 또는 재사용 가능한 기술. 현재 시스템에서는 이는 종종 모델이 스스로 조용히 변경하는 것이 아니라 버전화된 지시문, 코드 또는 검증된 템플릿 형태로 나타납니다.
절차적 업데이트를 일반 대화와 분리하는 것은 안전 기능입니다. 단일 비정상적인 상호작용이 에이전트의 운영 규칙을 자동으로 재작성해서는 안 됩니다.
에이전트가 무언가를 기억하는 방법
| 작업 기억 | 현재 작업 중에 사용되는 임시 컨텍스트. |
|---|---|
| 에피소드 기억 | 선택된 사건 및 이전 상호작용의 기록. |
| 시맨틱 기억 | 경험에서 파생된 일반화된 사실이나 개념. |
| 망각 | 오래된, 민감한, 가치가 낮은 상태를 제한하는 제거 또는 부패. |
실용적인 메모리 파이프라인은 네 단계로 구성됩니다.
- 캡처: 메시지, 행동, 결과 또는 환경 변화를 관찰합니다.
- 선택 및 인코딩: 정보가 보존할 가치가 있는지 판단하고 메타데이터와 함께 기록으로 변환합니다.
- 저장: 기록을 접근 제어와 보존 정책이 있는 적절한 시스템에 배치합니다.
- 검색: 새로운 작업이 도착하면 관련 기록을 검색하고 순위를 매겨 소량을 컨텍스트에 배치합니다.
일부 시스템은 통합을 추가합니다: 반복 관찰을 결합하고, 중복을 해결하며, 사건을 지속 가능한 사실로 변환합니다. 이 과정은 출처나 불확실성을 지우지 않아야 합니다.
검색 작동 방식
벡터 유사도 검색은 표현이 달라도 의미적으로 관련된 기록을 찾을 수 있어 일반적입니다. 그러나 유사도만으로는 충분하지 않습니다. 6개월 된 선호도는 주제와 관련될 수 있지만 더 이상 유효하지 않을 수 있습니다.
견고한 검색은 여러 신호를 결합할 수 있습니다:
- 시맨틱 관련성: 기록이 현재 작업과 얼마나 밀접하게 일치하는지;
- 최신성: 최신 정보에 더 큰 가중치를 부여해야 하는지;
- 중요도: 기록이 핵심 결정이나 제약에 영향을 미치는지;
- 권위: 신뢰할 수 있는 시스템, 사용자, 혹은 모델 추론에서 왔는지;
- 범위: 현재 에이전트와 사용자가 접근 권한이 있는지;
- 다양성: 선택된 기억이 하나의 포인트를 반복하기보다 별개의 정보를 추가하는지.
영향력 있는 메모리 아키텍처
The Generative Agents 연구는 에이전트가 관찰을 저장하고, 관련성, 최신성, 중요성을 기반으로 기억을 검색하며, 계획을 안내하는 고차원 반성을 형성하는 아키텍처를 소개했습니다. 이는 메모리가 시뮬레이션 행동에 연속성을 만들 수 있음을 보여주었습니다.
MemGPT는 제한된 컨텍스트를 운영체제 비유로 접근했으며, 작은 활성 컨텍스트와 더 큰 외부 저장소 사이의 명시적 이동을 사용하는 메모리 계층을 활용했습니다. 더 넓은 교훈은 컨텍스트를 희소 자원으로 관리해야 한다는 것입니다.
이러한 아이디어는 현대 에이전트에 영향을 미치지만, 실제 메모리는 종종 더 단순한 구성 요소를 사용합니다: 구조화된 작업 상태, 이벤트 로그, 벡터 저장소, 명시적 사용자 선호도. 복잡성은 입증된 필요에 따라 도입되어야 합니다.
메모리 vs. 검색 강화 생성
검색 강화 생성(RAG)은 외부 정보를 모델 컨텍스트에 도입합니다. 에이전트 메모리는 동일한 검색 기술을 사용할 수 있지만, 출처와 수명 주기가 다릅니다.
RAG 시스템은 에이전트와 독립적으로 존재하는 정제된 지식 베이스에서 검색할 수 있습니다. 메모리 시스템은 종종 에이전트 자체 상호작용으로 생성된 기록을 포함하며, 무엇을 기록하고 무엇을 읽을지 결정해야 합니다. 경계가 흐려질 수 있지만, 메모리는 개인화, 보존, 자체 생성 데이터 위험을 도입하여 일반 문서 검색과는 다릅니다.
일반적인 메모리 실패
충돌은 불가피합니다. 사용자가 선호도를 변경할 수 있고, 두 시스템이 계정에 대해 의견이 다를 수 있으며, 요약이 중요한 예외를 누락할 수도 있습니다. 신뢰할 수 있는 메모리는 타임스탬프와 출처를 보관하고, 어느 시스템이 권위 있는지 정의하며, 첫 번째 레코드가 자동으로 선택되는 대신 해결되지 않은 모순을 드러냅니다.
- 오래된 메모리: 오래된 사실이 최신 시스템 기록 값을 무시합니다.
- 잘못된 메모리: 모델이 생성한 추론이 확인된 것처럼 저장됩니다.
- 검색 노이즈: 유사하지만 관련 없는 레코드가 모델을 방해합니다.
- 과도한 개인화: 시스템이 제공된 맥락을 벗어난 선호도를 적용합니다.
- 사용자 간 누출: 한 사람 또는 테넌트의 레코드가 다른 사람의 컨텍스트에 나타납니다.
- 중독: 악의적인 콘텐츠가 저장되어 이후 에이전트 행동을 조작할 수 있게 됩니다.
- 무제한 보존: 민감한 데이터가 명확한 목적이나 삭제 경로 없이 지속됩니다.
책임감 있게 메모리 설계하기
먼저 명확한 카테고리를 설정합니다. 권위 있는 사실, 사용자 제공 선호도, 모델 요약, 원시 상호작용 로그를 구분합니다. 출처와 타임스탬프를 저장합니다. 영향력이 큰 사실에는 만료 규칙을 적용하거나 증거가 충돌할 경우 확인을 요구합니다.
사용자는 적절한 경우 지속적인 개인 메모리를 확인하고, 수정하며, 삭제할 수 있어야 합니다. 접근 제어는 저장 및 검색 모두에 적용되어야 합니다. 데이터베이스에 존재하는 레코드가 모든 에이전트, 작업, 사용자에게 자동으로 허용되는 것은 아닙니다.
메모리를 시스템으로 평가합니다. 에이전트가 유용한 레코드를 검색하고, 관련 없는 레코드를 무시하며, 업데이트된 사실을 존중하고, 중독 시도에 견디며, 메모리가 없을 때 올바르게 동작하는지를 테스트합니다. 개선 효과를 추가된 지연 시간, 비용, 개인정보 노출과 비교하여 측정합니다.
메모리가 에이전트의 학습을 의미합니까?
보통 모델 가중치는 변경되지 않습니다. 대부분의 에이전트 메모리는 런타임에 모델 컨텍스트로 가져오는 외부 정보입니다. 이는 행동을 크게 바꿀 수 있지만, 기본 모델을 학습하거나 미세 조정하는 것과는 다릅니다. 구분을 명확히 하면 팀이 가역성을 판단하는 데 도움이 됩니다: 외부 레코드는 모델을 재학습하지 않고도 수정하거나 삭제할 수 있습니다.
반드시 그렇지는 않습니다. 대부분의 에이전트 메모리는 고정된 모델에 제공되는 정보를 변경할 뿐이며, 모델 파라미터를 업데이트하지 않습니다. 컨텍스트가 바뀌면서 시스템이 다르게 동작할 수 있는데, 이는 기본 신경망을 수정하지 않고 학습과 유사하게 보일 수 있습니다.
그 구분은 유용합니다. 외부 메모리는 학습을 통해 내재된 지식보다 더 쉽게 검사, 수정, 관리 및 삭제할 수 있습니다.
AI 에이전트 메모리에 대해 기억해야 할 점
AI 에이전트 메모리는 모델을 둘러싼 검색 및 관리 아키텍처입니다. 작업 메모리는 현재 작업을 유지하고, 에피소드 메모리는 경험을 기록하며, 의미 메모리는 사실을 보존하고, 절차 메모리는 재사용 가능한 작업 방식을 인코딩합니다.
최적의 메모리 시스템은 선택적이고, 출처가 명확하며, 권한을 인식하고, 수정하기 쉬워야 합니다. 더 많이 기억하는 것이 목표가 아닙니다. 에이전트가 올바른 증거를 올바른 결정에 활용하도록 돕는 것이—신뢰를 침해하지 않는 것이—목표입니다.












