오늘의 자료 출처
Hugging Face Daily Papers에 게재된 다음 논문을 검증했습니다.
이 논문은 플랫형(flat), 계층형(hierarchical), 그래프형(graph), 학습된 정책형(learned policy) 등 10가지 종류의 에이전트 메모리 시스템을, 대화 기록에 직접 검색을 가하는 단순한 RAG와 비교하고 있습니다.
결론은 자극적이며, 많은 메모리 시스템들이 RAG의 순수 점수보다 낮다는 것을 보고했습니다.
논문은 이 현상을 "메모리가 RAG가 놓친 부분에 답할 수 있는 이익(benefit)"과 "RAG가 답할 수 있는 질문에 메모리가 오히려 오답을 내는 세금(tax)"으로 분해하고, 세금이 발생하는 원인을 구축 시의 충실성(fidelity), 검색 용이성(searchability), 백본 변경에 대한 견고성(robustness)이라는 3가지 관점에서 분석했습니다.
이번 도전에서는 Day 028에서 유사한 논점(변이형 메모리 vs. 추가만 하는 메모리 vs. 단순 Raw-RAG)을 다루었지만, 이 논문의 "이익과 세금으로 분해하는" 접근 방식은 새롭습니다. 특히 "메모리가 요약 과정에서 버린 세부 사항을, 단순 검색은 키워드가 맞으면 잡아내는" 설명에 흥미를 느꼈습니다.
검증 방침 및 제약
저자가 자체 구현한 코드는 Hugging Face Papers 페이지와 arXiv 페이지 어디에서도 찾을 수 없었습니다.
완전 재현하려면 LongMemEval-s, PersonaMem-v2, MINT-Eval과 같은 대형 벤치마크와 Qwen3.5-4B 등 여러 백본(backbone)이 전제되어 있어, 이번 도전의 "6시간 이내에 검증할 수 있는 것을 선택한다"거나 "유료 API 키가 필수인 후보는 고르지 않는다"는 방침에는 맞지 않았습니다.
그래서 논문의 "이익 vs 세금"이라는 분해 개념만 빌려와, 자체 제작한 소규모 대화 로그로 축소판의 개념 증명(PoC)을 구성하기로 했습니다.
추가 API 키나 GPU는 전혀 사용하지 않았으며, Claude Code 자체를 답변 모델로 사용했습니다.
제작물
가상의 다중 세션 대화 로그 2건을 작성했습니다.
- 사내 대시보드 재설계 프로젝트 계획 회의 (3세션, 37턴).
기술 스택(React→Svelte), 예산($12만 → $15만 → $14만), 마감일(Q2 말 → Q3 말 → 7월 15일), 팀 구성(4명 → 6명 → 5명)이 대화 진행에 따라 변화합니다. - 가족 여행 계획 (3세션, 34턴).
행선지(포르투갈→스페인), 인원수(4명→3명), 예산($4000→$4800→$4200), 호텔이 변화합니다.
두 로그 모두에 한 번만 언급되는 구체적인 사실을 의도적으로 삽입했습니다. 스테이징 서버 기종(Dell R710), 클라이언트와의 데모 날짜/장소, 렌터카 확인 번호, 음식 알레르기 같은 정보입니다.
같은 대화 로그에 대해 두 가지 "답변 방식"을 구현하고, 동일한 16문제(2대화 × 8문제)에 답하게 했습니다.
- RAG 조건: 대화 로그 전체를 대상으로 형태소 분석기를 사용하지 않는 단순 문자 bigram의 TF-IDF 검색 (외부 라이브러리 미사용 자체 제작 스크립트)으로 top-5 턴을 가져와, 그 5건만 보고 답변합니다. - 메모리 조건: "현재 값은 덮어쓰고, 명시적으로 논의된 주요 의사결정(기술 스택, 예산, 마감일, 팀 구성 등)은 변경 이력으로 남기되, 논의 대상이 되지 않은 부수적인 세부 사항은 현재 값만 남기고 과거를 버린다"는 전형적인 요약 메모리 방침으로 사전에 구축한 요약본만 보고 답변합니다.
정답은 이 검색/요약 어느 쪽보다 먼저 확정시켰고, 답변 역시 두 조건 모두 주어진 정보만을 보고 답했습니다 (다른 조건의 정보는 보지 않음).
질문은 "최신 값을 묻는 것(current)", "이미 덮어쓰인 과거 값을 묻는 것(historical)", "여러 턴에 분산된 정보를 집약할 필요가 있는 것(synthesis)", "한 번만 언급되는 사실을 묻는 것(niche)"의 4가지로 나누었습니다.
실행 결과
검색 스크립트의 실행 로그, 요약 메모리 내용, 16문제 전체의 답변 과정과 채점은 모두 experiments/day-031/에 그대로 남겼습니다.
결과는 다음과 같았습니다.
| 조건 | 정답 수 | 정답률 |
|---|
| RAG(단순 검색) | 13/16 | 81.25% |
| 메모리(요약+변경 이력) | 15/16 | 93.75% |
'세금'(RAG는 정답, 메모리는 오답)이 발생한 것은 단 1건이었다.
사내 프로젝트의 스테이징 서버에 대해 “AWS로 이전하기 전에는 무엇을 사용했는지”라고 질문하는 문제였다.
정답은 'Dell R710'이라는 오래된 서버였지만, 이는 계획 회의에서 명시적인 의사결정으로 다루어지지 않았기 때문에, 메모리의 요약에서는 현재 값(AWS)만 남아있고 이전 정보 자체가 사라져 있었다.
반면 단순 검색은 “이미 Dell R710은 사용하지 않는다”라는 한 문장을 포착했기 때문에 정답을 맞힐 수 있었다.
이는 논문이 지적하는 '구축 시의 충실성' 문제, 즉 요약이 중요하지 않다고 판단하여 버린 세부 사항을 단순한 전체 텍스트 검색은 키워드가 일치하면 잡아낼 수 있다는 구도를 그대로 재현하고 있다.
반대로 '이익'(메모리는 정답, RAG는 오답)은 3건 발생했다.
둘 다 단순 검색의 top-5에 필요한 인명이나 여러 세션에 분산된 수치가 충분히 포착되지 못한 것이 원인이었다.
예를 들어 “세션 2에서 합류했지만 최종 팀에는 남지 않은 사람은 누구인가”라는 질문에서는, 검색 결과 5건 안에 인명을 포함한 턴이 단 한 건도 없어 RAG로는 답할 수 없었다.
메모리는 처음부터 구조화된 '현재 팀 구성'을 유지하고 있었기 때문에 정답을 맞힐 수 있었다.
전체적으로는 세금 1건에 비해 이익 3건으로, 이번 축소 실험에서는 메모리 측의 정답률이 RAG를 상회하는 결과가 되었다.
논문의 제목인 “메모리는 단순한 RAG에 많이 패배한다”라는 주장은 이번 축소 실험에서는 재현되지 않았다.
정도가 동등하거나 그 이상이었음을 여기서 솔직하게 기록해 둔다.
다만 이유는 명확하다.
이번에 만든 메모리는 논문이 비교하는 10가지 종류의 복잡한 메모리 아키텍처에 비해 상당히 단순하여, '현재 값 + 명시적인 의사결정 변경 이력만 유지한다'는 순수한 설계였다.
논문이 지적하는 세금은 추출(Extraction), 재구성(Reconstruction), 그래프화(Graphing)와 같은 복잡한 구축 처리를 거치는 메모리 시스템일수록 발생하기 쉬울 것으로 생각된다.
또한 검색 측도 밀집 검색(Dense Search)이나 크로스 인코더 재랭킹(Cross-encoder Re-ranking)을 구현하지 않았고, 문자 bigram의 TF-IDF만 사용했기 때문에, 논문이 보고하는 RAG-Hybrid의 약 70%라는 점수보다 검색 정확도가 불안정했을 가능성이 있다 (실제로 '이익' 케이스 3건 모두에서 검색 누락이 관측됨).
필자의 소감
축소 실험이라고는 하지만, “요약 메모리가 트리비아적인 세부 사항을 조용히 버리고, 단순한 전체 텍스트 검색은 키워드가 일치하면 그것을 포착해버리는” '세금'의 구도를 실제 사례로 직접 재현할 수 있었던 것은 수확이었다.
동시에, 같은 단순 검색이라도 질문 표현과 대화 로그 표현이 어떻게 중첩되느냐에 따라 top-5의 정확도가 상당히 들쭉날쭉하다는 것도 체감했다.
Project Nova의 예산 변천(3세션 분 금액)은 검색으로 모두 포착되었지만, 가족 여행 예산 변천은 1개만 포착되었다는 차이는, 검색 대상 대화 내용에 따라 결과가 달라지는 단순 검색의 취약함을 잘 보여준다고 생각한다.
“메모리가 정말 RAG보다 열등한가”라는 질문에는 간단한 답이 없으며, 메모리 구현의 복잡성과 검색 구현의 질, 양쪽에 좌우된다는 당연하지만 체감하기 어려운 사실을 작은 실험만으로도 확인할 수 있었다.
한계(솔직하게 쓰기)
- 자작 2개의 대화 및 16개 질문만을 사용했으므로 통계적 유의성을 주장할 수 없다.
- 검색기는 문자 bigram의 TF-IDF만 사용했으며, 밀집 검색이나 크로스 인코더 재랭킹은 구현하지 않았다.
- 메모리의 요약 방침을 결정한 것도, RAG 조건/메모리 조건을 어느 쪽으로 답변하게 한 것도 Claude 자체였으며,
본격적인 독립 메모리 시스템의 구현이나 별도의 LLM 호출에 의한 엄밀한 조건 분리는 아니다. - 논문이 검증한 구체적인 10종의 메모리 아키텍처나 Qwen3.5-4B 등의 백본은 사용하지 않았다.
상세 실행 로그, 답변 과정, 채점은 모두 experiments/day-031/에 기록되어 있다.
Discussion