에이전트가 긴 작업을 안정적으로 수행하려면 “세상에 있는 최신 정보”와 “내가 이미 겪은 일”을 구분해야 한다. Retrieval(검색)은 문서·코드·DB 같은 외부 코퍼스에서 관련 사실을 가져오고, memory(기억)는 특정 사용자·세션·에이전트가 과거에 만든 결정과 사실을 보존한다. 둘 다 벡터 검색을 쓸 수 있지만 정보의 출처와 갱신 책임은 다르다.
한눈에 보는 차이
| 항목 | Retrieval | Memory |
|---|---|---|
| 정보 출처 | 에이전트 밖의 공유 코퍼스 | 에이전트의 상호작용·행동·결정 |
| 범위 | 여러 사용자와 세션이 공유 | 사용자·태스크·세션에 귀속 |
| 답하는 질문 | “현재 외부 지식은 무엇인가?” | “이전에 무엇을 알거나 했는가?” |
| 갱신 | 문서 변경 시 재색인 | 추출·병합·만료·정정 |
| 주된 실패 | 누락·낡은 문서 | 모순·오래된 선호·무분별한 저장 |
함께 쓰는 기본 구조
고객이 배송 지연을 문의하는 상황을 보자. 에이전트는 먼저 기억에서 그 고객의 선호 채널과 과거 보상 이력을 찾는다. 그 다음 최신 배송 규정은 공유 문서에서 검색한다. 두 결과를 같은 프롬프트에 넣을 수는 있지만, 기억을 최신 규정처럼 취급하거나 규정을 사용자 고유 정보처럼 저장해서는 안 된다.
사용자 요청
├─ memory 조회: 사용자 선호·과거 결정·작업 상태
├─ retrieval 조회: 최신 정책·문서·코드·DB 지식
└─ 정책 필터·우선순위화 → 필요한 근거만 모델 컨텍스트에 주입설계 체크리스트
- 검색 코퍼스에는 원문 URL, 버전, 갱신 시각을 붙여 최신성을 관리한다.
- 장기 기억에는 출처, 대상 사용자/태스크, 유효 기간, 정정 이력을 남긴다.
- 모든 대화를 통째로 기억하지 말고 결정·선호·실패 원인처럼 재사용 가치가 있는 사실만 추출한다.
- 검색 결과와 기억이 충돌하면 공유 정책의 최신 버전을 우선하고, 사용자 고유 사실은 확인 질문으로 복구한다.
관련 문서
- ai-agent-tips-memory — 메모리 아키텍처를 난이도별로 설명하는 실무 팁
- rag — 검색 증강 생성의 기본 구조
- context-engineering — 유한한 모델 컨텍스트를 설계하는 방법
참고 자료
- Retrieval vs. Memory in Agentic AI Systems — MachineLearningMastery.com (2026-08-12)