Memory layer architecture는 AI 에이전트가 기억을 한곳에 쌓지 않고, 목적별로 나눠 저장하고 회수하는 구조입니다. 검색어로는 memory layer, agent memory architecture, persistent memory, RAG memory, stateful agent가 자주 함께 등장합니다.
단순한 채팅 앱에서는 대화 로그만 있어도 괜찮지만, 에이전트 제품에서는 그 방식이 금방 한계에 부딪힙니다. 사용자 선호, 프로젝트 상태, 업무 규칙, 검색 가능한 지식, 만료 가능한 임시 정보는 모두 성격이 다르기 때문입니다.
왜 중요한가 #
메모리 계층이 없으면 모든 정보를 같은 형식으로 저장하게 됩니다. 그러면 검색 품질이 떨어지고, 컨텍스트는 길어지고, 비용은 올라갑니다.
- 반복 질문은 단기 기억으로 처리합니다.
- 선호와 프로필은 장기 기억으로 저장합니다.
- 도메인 지식은 검색 가능한 지식 레이어로 둡니다.
- 정책과 보안 규칙은 별도 정책 레이어로 둡니다.
이 구분이 있어야 에이전트가 무엇을 기억해야 하는지와 무엇을 잊어야 하는지를 판단할 수 있습니다.
메모리 계층 #
실무적으로는 아래처럼 나누는 것이 가장 이해하기 쉽습니다.
| 레이어 | 역할 |
|---|---|
| Session layer | 현재 턴과 직전 작업 상태 |
| Profile layer | 사용자 선호, 역할, 반복 패턴 |
| Knowledge layer | 문서, 제품 지식, 프로젝트 지식 |
| Policy layer | 보안, 권한, 금지 규칙 |
| Cache layer | 빠른 회수용 요약과 임베딩 |
Mem0는 profile과 memory retrieval에 강점이 있고, LangGraph는 session layer와 상태 전환에 적합합니다. Semantic Cache는 cache layer를 보완합니다.
설계 방식 #
- 먼저 무엇을 저장할지 레이어별로 정의합니다.
- 원문 저장, 요약 저장, 임베딩 저장을 분리합니다.
- 회수 조건은 레이어마다 다르게 둡니다.
- 장기 기억에는 만료와 갱신 정책을 넣습니다.
- 정책 레이어는 사용자 메모리와 분리합니다.
이 방식의 핵심은 검색 가능한 저장소를 하나 만드는 것이 아니라, 역할이 다른 저장소들을 조합하는 것입니다. 그래야 회수 속도와 정확도를 같이 챙길 수 있습니다.
체크리스트 #
- 레이어별 데이터 모델을 먼저 정의합니다.
- 저장 포맷을 원문, 요약, 벡터로 나눕니다.
- 검색 우선순위를 레이어별로 다르게 둡니다.
- 만료와 재요약 규칙을 명시합니다.
- 정책 메모리는 일반 메모리와 분리합니다.
결론 #
Memory layer architecture는 AI 에이전트가 기억을 제품 기능으로 만들기 위한 기본 구조입니다. 저장소를 늘리는 것이 아니라 역할을 분리해야 검색 품질, 비용, 보안이 같이 맞습니다. 이 관점이 있어야 메모리가 단순 로그가 아니라 실제 동작 자산이 됩니다.