Zero-Mem: LLM 호출 없이 돌리는 에이전트 메모리
Zero-Mem: Zero-Token Memory Operations for LLM Agents
TL;DR Highlight
메모리 처리에서 LLM 호출을 빼고도 경쟁력 있는 성능, 시간은 57.6% 절감
Who Should Read
에이전트 장기 메모리를 만들며 요약·저장용 LLM 호출 비용과 지연 때문에 고민인 백엔드 개발자
Core Mechanics
- 메모리 관리에 LLM을 쓰지 않는다
- 최종 답변을 만드는 reader만 LLM을 호출한다.
- 그 외 단계에서는 LLM 입력·출력 토큰을 쓰지 않는다.
- 인코더(텍스트를 벡터로 바꾸는 모델) 계산은 따로 센다.
- 요약 대신 원본 대화를 그대로 보관한다
- 원본 상호작용 기록을 기준 데이터로 삼는다.
- LLM이 중간 기록을 만들면 빠지거나 합쳐진 세부 내용이 증거를 가릴 수 있다고 본다.
- 같은 기록을 두 가지 구조로 정리한다
- 엔티티-컨텍스트 그래프는 대화 사이의 연결을 보여 준다.
- 시간 계층은 대화의 앞뒤 맥락과 세션 상태를 유지한다.
- 질문마다 두 구조의 비중을 조절한다
- 쿼리별로 두 뷰의 가중치를 정해 양쪽에서 검색한다.
- 구조를 따라가며 근거 관계나 주변 맥락을 가져온다.
- 충돌하는 증거는 규칙으로 걸러낸다
- 결정적(deterministic) 보정이 충돌 증거를 먼저 버린다.
- 그 뒤 reader의 답이 검색된 기록에 근거하도록 붙잡는다.
Community Reactions
- 두 뷰가 둘 다 필요하다는 실험이 있다
- 어블레이션(구성요소를 빼 보는 실험)이 두 뷰와 질문별 조율의 기여를 뒷받침한다고 한다.
- KV cache로 비슷한 접근을 했다는 경험
- 로컬 LLM에 대화 KV cache를 저장하고 prefill 후 attention 받은 구간을 골랐다는 댓글이 있다.
- LoCoMo와 LongMemEval에서 둘 다 SOTA 결과를 얻었다고 한다.
- 구현이 쉽다는 의견
- 에이전트 하네스 수준에서 구현하기 쉽다는 의견이 있다.
- 코딩·장기 작업 대화는 NER을 훨씬 단순하게 써도 된다는 의견이다.
- 핵심은 zero-token이 아니라 생성적 재작성 제거라는 의견
- 요약하면 검색이 증거 대신 요약의 누락에 의존하게 되어 감사가 어려워진다고 한다.
- 값이 바뀌는 상황과 모순 데이터 벤치마크, 인코더·인덱스 유지 비용 비교가 필요하다는 의견이다.
How to Apply
- 지금 메모리 파이프라인의 LLM 호출을 세어 보기
- 요약·재작성·검색 중개 단계마다 호출 횟수와 토큰, 지연을 로그로 남겨라.
- 최종 답변 외 호출이 차지하는 비중을 먼저 확인하라.
- 요약본과 함께 원본 대화 ID를 저장하기
- 요약을 쓰는 서비스라면 각 요약에 원본 턴 ID를 붙여라.
- 답변마다 근거가 된 원본 턴을 보여 주게 하라.
- 엔티티-세션 두 인덱스로 검색 실험하기
- 엔티티별 인덱스와 세션·시간순 인덱스를 나눠 같은 질문을 양쪽에서 검색하라.
- 질문 유형별로 어느 쪽이 맞는지 비교하라.
- 값이 바뀌는 사례로 충돌 테스트 만들기
- 세션마다 속성이 바뀌는 대화를 만들어 최신 값과 이전 값을 구분하는지 확인하라.
- 인코더·인덱스 비용도 토큰 비용과 함께 기록하라.
Try It
# 논문 방법의 간이 버전: Claude/ChatGPT에 붙여넣는 메모리 감사 프롬프트
너는 에이전트 메모리 설계 리뷰어다. 아래 내가 쓰는 메모리 파이프라인에서 LLM 호출이 필요한 단계와 규칙·인덱스로 대체 가능한 단계를 나눠라.
[파이프라인 설명]
{{메모리 저장·검색 흐름}}
[대화 로그 예시]
{{대화 로그 10~20턴}}
지시:
1. 단계별로 LLM 호출 여부, 입출력 토큰 발생 여부를 표로 정리해라.
2. 원본 대화를 보관하고 엔티티 기준 인덱스와 시간·세션 기준 인덱스를 만든다고 가정하고, 각 인덱스에 들어갈 필드를 설계해라.
3. 질문 {{질문}}에 대해 어느 인덱스를 얼마나 쓸지, 충돌 증거는 어떻게 버릴지 규칙으로 써라.
이어서 해 볼 것: 값이 바뀌는 대화(예: 주소·직책 변경)를 넣고 최신 값과 이전 값을 구분하는지 물어봐라.Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓