AI 에이전트 메모리는 “대화 내용을 오래 저장”하는 기능 하나가 아니다. 정보가 한 턴만 필요한지, 세션을 넘어야 하는지, 사용자별인지 조직 공통인지, 자주 바뀌는지에 따라 working memory, episodic memory, semantic memory, procedural memory를 다르게 써야 한다.
네 가지 메모리 유형
| 유형 | 저장 대상 | 예시 |
|---|---|---|
| Working memory | 현재 턴·현재 작업 상태 | 진행 중 계획, 임시 계산, tool 결과 |
| Episodic memory | 과거 사건과 세션 기록 | “지난 배포에서 이 테스트가 깨졌다” |
| Semantic memory | 안정적인 사실과 지식 | 사용자 선호, 도메인 지식, 제품 정책 |
| Procedural memory | 반복 가능한 방법 | 코드 리뷰 절차, 릴리스 체크리스트 |
선택 기준
- 현재 턴 이후에도 필요한가? 아니라면 working memory로 충분하다.
- 세션을 넘어 유지해야 하는가? 그렇다면 외부 저장소에 둔다.
- 개별 사건인가, 일반 지식인가? 사건은 episodic, 일반화된 사실은 semantic이다.
- 행동 방법인가? 절차와 워크플로는 procedural memory나 skill로 둔다.
- 자주 바뀌는가? 자주 바뀌면 TTL, version, drift check를 둔다.
흔한 실수
- 모든 memory를 vector DB 하나에 넣고 검색 점수만 믿는다.
- 사용자 선호, 보안 정책, 임시 작업 상태를 같은 저장소에 섞는다.
- 오래된 memory를 폐기하거나 반박할 방법을 만들지 않는다.
- 에이전트가 memory를 언제 쓰고 언제 무시해야 하는지 policy를 주지 않는다.
실무 패턴
좋은 구조는 레이어드다. 현재 작업 상태는 prompt/session state에 두고, 반복 절차는 repo의 skill이나 문서로 둔다. 사용자·프로젝트 지식은 key-value 또는 문서 저장소에 버전과 출처를 붙인다. 대규모 지식 검색은 rag 또는 cognee 같은 장기 메모리 계층으로 보낸다.
관련 문서
- agent-harness — 에이전트 성능을 결정하는 스캐폴딩 설계
- context-memory-engineering-tips-boundary — 메모리 엔지니어링과 컨텍스트 엔지니어링의 경계
- mex — AI 코딩 에이전트를 위한 영속 프로젝트 메모리
- cognee — 에이전트를 위한 오픈소스 장기 메모리 플랫폼
참고 자료
- Choosing the Right AI Agent Memory Strategy — Machine Learning Mastery (2026-07)