에이전트 메모리: 잘못 배운 조언까지 계속 저장해야 할까
과거 행동 기록은 남기되 거기서 만든 조언은 매번 새로 만들면, 잘못된 규칙의 반복을 줄이고 에이전트 성능을 개선할 수 있는지 비교합니다.
쉽게 말하면비유하자면 업무 일지는 계속 쌓아 두되, 일지를 보고 쓴 요령 메모는 그날 일에만 쓰고 버리는 방식이다. 틀린 요령이 서랍에 남아 다음 일에 그대로 다시 쓰이는 길을 막으려는 것이다. 다만 일지에 이미 남은 영향까지 지우지는 못한다.
- 왜 봐야 하나
- 에이전트에 기억을 붙일 때 실제 기록과 거기서 뽑은 규칙을 따로 다뤄 볼 만하다는 뜻이다. 이 방식의 아홉 설정(모델 셋, 환경 셋) 평균 성공률은 59.9%로, 기록만 저장한 방식의 53.5%보다 높았다. 다만 텍스트 환경 세 곳과 열 번의 갱신에 한정된 결과다.
이 논문은 LLM 에이전트가 자신의 실행 경험을 외부 메모리에 저장하고 재사용하여 성능을 개선하는 과정에서, 추론된 규칙이나 요약(추상화)을 영구 저장하면 오류가 재생산될 수 있음을 지적하고, 이를 완화하는 'Anti-Persistence' 메모리 설계를 제안한다. 핵심 아이디어는 원시 실행 기록(궤적)과 결과는 누적하되, 그로부터 합성한 지침은 현재 과제에만 사용하고 폐기하는 것이다. 세 가지 벤치마크와 세 가지 백본 모델에서 평가한 결과, Anti-Persistence는 평균 성공률 59.9%로 비교 메모리 설계보다 높았고, 평균 LLM 호출 비용도 가장 낮았다. 다만 모든 설정에서 항상 최고는 아니었으며, 간접적인 오류 전파 가능성은 남아 있다.
알아낸 것
- 과거 행동과 결과는 저장하고, 그 기록에서 만든 규칙이나 전략은 현재 작업에만 사용한 뒤 버립니다.
- 세 모델·세 환경의 아홉 설정 평균 성공률은 59.9%로, 행동 기록만 저장한 비교군의 53.5%보다 높았습니다.
- 모든 설정에서 최고였던 것은 아니며, 개선된 평균 호출 수가 실제 요금이나 모든 작업의 비용 절감을 뜻하지는 않습니다.
한계와 주의할 점
- 세 텍스트 환경과 열 번의 메모리 갱신 실험에 한정되며, 장기 운영과 다른 업무로의 일반화는 검증되지 않았습니다.
- 오류가 후속 오류를 만든다는 일부 부록 집계는 이번 판에서 원시 기록과 재검증되지 않았다고 저자들이 밝혔습니다.
- 모든 장기 메모리가 해롭다는 결론은 아니며, 검증된 지식을 버리면 이익을 놓칠 수 있고 행동 기록에도 오류가 남을 수 있습니다.
용어 풀이
- 궤적(trajectory)
- 에이전트가 과제를 수행하며 남긴 행동과 관찰의 연속 기록. 이 연구에서는 원시 실행 경험으로 저장되어 검색과 합성의 입력이 된다.
- 추상화(abstraction)
- 궤적에서 추론한 규칙, 요약, 기술, 휴리스틱 등. 재사용하기 쉽게 압축된 지식이지만 오류가 포함될 수 있다.
- 오류 재생산(error reproduction)
- 잘못된 규칙이 실행 기록에 영향을 주고, 그 기록에서 새 규칙을 만들 때 같은 오류가 다시 나타날 수 있는 피드백 경로. 논문이 제안한 메커니즘이며 모든 기억 설계에서 필연적으로 발생하거나 증폭된다는 뜻은 아니다.
- Anti-Persistence
- 궤적과 결과는 누적하되 추상화는 현재 과제에만 임시로 사용하고 폐기하는 메모리 설계. 추상화의 직접 재사용을 막는다.
- 문맥 밴딧(contextual bandit)
- 과제 특성(문맥)에 따라 여러 선택지(모드) 중 하나를 고르고, 그 결과를 바탕으로 선택 정책을 개선하는 온라인 학습 방법. 이 연구에서는 UCB 방식의 탐색 보너스를 더해 사용한다.
- UCB(Upper Confidence Bound)
- 불확실성이 큰 선택지를 더 탐색하도록 보상 추정치에 보너스를 더하는 밴딧 알고리즘. 이 연구에서는 가중 관측에 대한 통계적 보장 없이 휴리스틱으로 사용된다.
- 결과 로그(outcome log)
- 과제, 선택된 모드, 성공 여부, 비용 조정 보상, 타임스탬프를 기록하는 저장소. 모드 선택을 위한 피드백으로 사용되며 합성된 지침은 저장하지 않는다.
더 깊이 읽기 읽는 데 약 11분
배경과 문제
LLM 에이전트는 환경과 여러 단계에 걸쳐 상호작용하며 과제를 수행하고, 그 과정에서 행동과 관찰의 연속인 '궤적(trajectory)'을 남긴다. 모델 파라미터를 바꾸지 않고 성능을 높이기 위해, 에이전트는 자신의 실행 경험과 결과를 외부 메모리에 저장하고 나중에 비슷한 과제에서 검색하여 의사결정에 활용한다. 저장되는 경험은 크게 두 종류다. 하나는 실제 행동과 결과를 그대로 보존하는 '관찰된 상호작용 기록'이고, 다른 하나는 그 기록에서 추론한 '추상화(abstraction)'다. 추상화에는 규칙, 요약, 기술, 휴리스틱 등이 포함되며, 긴 상호작용 이력에서 재사용 가능한 절차만 압축해 담기 때문에 검색과 활용이 쉬워질 수 있다.
그러나 추상화를 만들 때는 어떤 세부사항이 중요한지, 어떤 조건에서 패턴이 일반화되는지 판단해야 한다. 한 과제에서 성공한 규칙이 다른 과제에서는 성립하지 않을 수 있다. 잘못된 추상화가 메모리에 남아 검색되어 사용되면, 에이전트의 행동에 영향을 주고 그 결과로 만들어진 실행 기록이 다시 새로운 추상화를 합성하는 입력이 된다. 이렇게 '추상화 → 실행 → 재추상화'의 순환을 통해 원래 오류가 간접적으로 되살아나는 현상을 논문은 '오류 재생산(error reproduction)'이라고 부른다. 기존의 오류 전파가 이미 존재하는 오류가 행동에 영향을 주는 것이라면, 오류 재생산은 그 영향이 새로운 추상화에 다시 새겨지는 것을 말한다. 원래 규칙을 삭제해도 그 규칙의 영향을 받아 만들어진 궤적은 남아 있기 때문에, 단순 삭제만으로는 재생산 고리를 끊기 어렵다.
기존 접근의 한계
기존 메모리 기반 자기 개선 방법은 저장 내용에 따라 나뉜다. 궤적 기반 방법은 원시 또는 가볍게 처리된 에피소드를 유사도 검색으로 재사용한다. 반면 Reflexion, ExpeL, AutoRefine 같은 방법은 언어적 성찰, 교차 과제 규칙, 요약, 실행 가능한 기술 등을 추상화로 저장한다. 추상화를 유지하면 전략을 반복해서 유도할 필요 없이 바로 재사용할 수 있다는 장점이 있지만, 저장된 추상화의 오류가 검색과 재사용을 통해 이후 결정으로 전파될 수 있다.
메모리 유지보수는 점수 매기기, 가지치기, 정제 등을 통해 저장 내용을 개선할 수 있다. 하지만 추상화 하나를 삭제한다고 해서 그 영향을 받아 생성된 궤적이 수정되거나, 그 궤적으로부터 파생된 다른 추상화가 제거되는 것은 아니다. 오류 재생산이 계속될지는 어떤 기록을 검색하는지, 무엇을 합성하는지, 어떤 출력을 메모리에 받아들이는지에 달려 있다. 이 논문은 추론된 내용이 유지보수 절차와 함께 영구 저장되어야 하는지 의문을 제기하며, '추상화의 이점을 살리면서 오류 재생산을 제한하는 방법'을 탐구한다.
연구방법을 단계별로
Anti-Persistence는 관찰된 상호작용 기록을 누적하되, 추상화는 현재 과제를 위해 필요할 때만 합성하고 실행 후 폐기한다. 구체적으로 에이전트는 두 가지 저장소를 유지한다. 하나는 과제, 실행 궤적, 결과를 담는 '궤적 메모리'이고, 다른 하나는 모드 선택과 피드백을 기록하는 '결과 로그'다. 합성된 지침은 어느 저장소에도 들어가지 않으며, 추상화 저장소는 항상 비어 있다. 이 설계는 추상화의 직접적인 재사용을 막지만, 임시 지침이 실행 궤적에 영향을 주고 그 궤적이 나중에 다시 합성 입력으로 쓰이는 간접 피드백은 여전히 가능하다.
각 과제에서 에이전트는 검색된 경험을 어떻게 사용할지 네 가지 모드 중 하나를 선택한다. 'none' 모드는 검색된 기록을 합성 호출 없이 그대로 에이전트에게 제공한다. 'imitation' 모드는 성공 궤적에서 재사용 가능한 행동 패턴과 조건을 추출한다. 'strategic' 모드는 성공 궤적을 바탕으로 상위 수준의 하위 목표와 계획을 조직한다. 'corrective' 모드는 실패 궤적을 분석해 회피 지침을 만들고, 가능하면 성공 궤적을 대조로 사용한다. 모드 선택은 과거 결과를 활용하는 경량 문맥 밴딧(contextual bandit)으로 이루어진다. 결과 로그에서 현재 과제와 유사한 항목을 검색하고, 각 모드의 보상을 과제 유사도와 시간 경과에 따라 가중 평균한 뒤, UCB 방식의 탐색 보너스를 더해 가장 높은 점수의 모드를 고른다. 선택에 쓰는 결과 로그는 최대 10개, 실제 경험을 공급하는 기본 검색은 최대 5개로 별도다. 초기 순환 탐색이나 유사도가 낮을 때의 대체 선택도 있어, 모든 과제에서 이 지역 점수식만 적용되는 것은 아니다.
보상은 과제 성공 여부에서 합성 호출 비용을 뺀 값으로 계산한다. 여기서 비용 항목은 추가 합성 호출 횟수다. 합성을 생략하면 0회, 실제 합성을 하면 기본 1회로 세며, 에이전트의 전체 실행 비용이 0이라는 뜻은 아니다. 비용 가중치 λ는 기본 0.05로, 합성 호출을 과도하게 쓰지 않도록 유도한다. 모드가 선택되면 해당 모드에 맞는 궤적을 검색하고, 합성 모드라면 임시 지침을 만들어 실행에 사용한다. 실행이 끝나면 궤적과 결과는 저장되지만 합성된 지침은 폐기된다. 이 과정에서 백본 모델, 모드 정의, 합성 프롬프트, 검색 절차, 선택 규칙은 모두 고정되어 있다.
결과와 숫자의 의미
실험은 ALFWorld, WebShop, ScienceWorld 세 벤치마크와 Llama-4-Scout, Qwen3-Coder-Next, Gemma-4-31B-it 세 백본 모델에서 진행되었다. 각 방법은 10번의 반복(iteration)을 거치며, 반복마다 50개의 훈련 과제를 수행해 메모리를 갱신하고, 고정된 평가용 과제에서 성공률을 측정했다. 평가 과제 수는 ALFWorld 134개, WebShop 100개, ScienceWorld 60개이며, 모든 과제는 50단계 상한이 있다. 결과는 3개 시드의 평균과 표준편차로 보고된다. 매번 평가할 때는 메모리, 모드 결과 로그와 검색·유지보수 상태를 동결하고, 평가 기록을 다음 갱신에 넣지 않는다. 10회에 걸친 500개 학습 에피소드는 고유 과제 500개를 뜻하지 않는다. WebShop의 100개는 정식 500개 시험 세트 전체가 아니며, ScienceWorld는 이미 다룬 과제 유형마다 새로운 변형을 평가한다.
최종 반복에서 Anti-Persistence는 9개 설정 중 7개에서 가장 높은 성공률을 기록했다. 9개 설정을 동일 가중 평균하면 59.9%로, 궤적 메모리 53.5%, 추상화 메모리 49.0%, 결합 메모리 49.3%보다 높았다. 가장 강한 에이전트 기준선인 Reflexion의 평균 52.9%도 넘었다. 다만 모든 설정에서 항상 최고는 아니었다. Gemma-4-31B-it의 ALFWorld에서는 Reflexion이 98.0%로 Anti-Persistence의 97.3%보다 높았고, Gemma의 ScienceWorld에서는 결합 메모리가 56.3%로 Anti-Persistence의 54.1%보다 높았다. 추상화 메모리와 결합 메모리는 9개 설정 중 7개에서 궤적 메모리보다 낮은 성공률을 보여, 추론된 지침을 영구 저장하는 것이 일관되게 성공률을 높이지는 않았다.
비용 측면에서 Anti-Persistence는 9개 설정 평균 LLM 호출 수가 가장 낮았다. Figure 3에 따르면 평균 호출 수는 Anti-Persistence 9.3, 궤적 메모리 9.5, 추상화 메모리 10.2, 결합 메모리 9.5였다. 합성 지침을 임시로 만드는 것이 평균 호출 수를 높이지 않았는데, 이는 none 모드가 합성 호출 없이 기록을 직접 재사용하고, 일부 설정에서 실행 궤적이 짧아져 합성 호출을 상쇄했기 때문으로 해석된다. 단, Table 6의 설정별 비용을 보면 Qwen3-Coder-Next의 ALFWorld에서는 궤적 메모리가 10.90회로 Anti-Persistence의 11.84회보다 적어, 모든 설정에서 비용이 가장 낮은 것은 아니다. 이 수치는 최종 평가에서의 합성·실행 LLM 호출 횟수로, 토큰 수·달러 비용·대기 시간 또는 기억을 쌓는 전체 비용을 측정한 것은 아니다.
구체적인 예시
부록 C는 ALFWorld의 '계란을 데워 식탁에 놓기' 과제를 예로 들어 Anti-Persistence의 작동을 단계별로 보여준다. 설명을 위해 유사한 과제 기록 5개가 후보로 있다고 설정한다. 실제 모드별 검색은 모드가 정해진 뒤 이루어진다. 이 중 3개는 실패 기록이다. 하나는 토마토를 집지 않고 전자레인지로 데우려 해 실패했고, 다른 하나는 데우기 전에 식탁으로 옮기려 해 실패했으며, 또 하나는 전자레인지를 찾으러 캐비닛을 뒤지다 단계 제한을 초과했다. 성공 기록 2개도 있다.
결과 로그에서 각 모드의 보상을 추정한 뒤 UCB 점수를 계산하면, 이 예시에서는 corrective 모드가 가장 높은 점수를 받아 선택된다. corrective 모드는 실패 기록 3개와 대조용 성공 기록 1개를 분석해 '물건을 들지 않은 상태에서 데우지 말 것', '데우기 전에 식탁에 놓지 말 것', '전자레인지를 찾으러 캐비닛을 뒤지지 말 것' 같은 회피 규칙을 만든다. 이 지침을 따라 에이전트는 카운터로 가서 계란을 집고, 전자레인지로 가서 데운 뒤, 식탁으로 가서 놓는 6단계로 과제를 성공한다. 실행 후 이 궤적과 결과는 저장되지만, 합성된 회피 규칙은 폐기되어 다음 과제에서 직접 재사용되지 않는다. 이 예시는 논문이 '구성된(constructed)' 것임을 명시하고 있어 실제 측정된 실행이 아니라 절차를 설명하기 위한 가상 사례다.
한계와 오해하기 쉬운 점
Anti-Persistence는 추상화의 직접적인 저장과 재사용을 막지만, 임시 지침이 실행 궤적에 영향을 주고 그 궤적이 나중에 합성 입력으로 쓰이는 간접 피드백은 여전히 가능하다. 따라서 오류 전파를 완전히 차단하는 것은 아니다. 또한 'none' 모드는 메모리가 없는 것이 아니라, 검색된 행동 기록을 합성 없이 그대로 조회하는 방식이다. 과거 행동 전체를 지우거나 최근 것만 저장하는 방법이 아니며, 모델 가중치를 학습하지도 않는다.
부록 E.3는 해당 규칙을 검색한 평가 실행의 성공률이 검색하지 않은 실행보다 5퍼센트포인트 이상 낮고, 노출 사례가 3회 이상인 경우를 운영상의 편향 표시로 삼는다. 비노출 사례도 있어야 하며, 어려운 과제에 특정 규칙이 더 자주 검색되는 영향은 통제하지 못한다. 저자들은 Figure 10 집계를 개별 실행의 출처·분류 대상 로그와 이번 판에서 재검증하지 않았다고 밝혔다. 따라서 이 집계는 오류의 인과적 재생산이나 장기 증폭을 입증하지 않는다. 별도 보조 실험에서는 규칙을 심사해 저장한 비교군의 성능이 개선되기도 했으므로, 지속 저장 자체가 언제나 해롭다는 해석도 맞지 않는다.
지속 메모리 전체가 나쁘다는 결론은 아니다. 검증된 지식을 저장하거나 선별적으로 유지하는 것은 유용할 수 있으며, 원본 기록에도 오류가 남을 수 있다. 이 연구는 3개의 텍스트 환경, 10라운드, 고정된 모델 범위에서만 검증되었고, 더 긴 운영이나 새로운 영역으로의 일반화는 확인되지 않았다. AutoRefine은 저장 관리뿐 아니라 조회·합성 방식도 달라 저장 관리 단독 효과를 분리하지 못한다.
실제로 어떻게 활용할까
이 연구의 실용적 시사점은 에이전트 시스템을 설계할 때 '경험 누적'과 '추상화 영속성'을 분리하는 것이다. 원시 실행 기록과 결과는 계속 쌓아두고, 규칙이나 요약은 필요할 때마다 그때그때 만들어 쓰고 버리는 방식이다. 이렇게 하면 잘못된 규칙이 메모리에 남아 여러 과제에 걸쳐 재사용되는 직접적인 경로를 차단할 수 있다. 다만 이는 검증된 지식을 영구 저장하는 것이 항상 나쁘다는 뜻은 아니며, 외부 검증이나 불확실성 추정이 가능한 경우 선택적 유지가 더 나을 수 있다.
모드 선택에 문맥 밴딧을 사용한 점도 참고할 만하다. 과제 유사도와 최신성을 반영해 과거 결과를 가중 평균하고, 탐색 보너스로 다양한 모드를 시도하게 함으로써, 고정된 단일 전략보다 나은 성능을 얻었다. 다만 이 선택 규칙에는 통계적 보장이 없으며, 실험에서 기본 하이퍼파라미터(γ=0.998, λ=0.05)가 테스트 범위 내에서 가장 좋았지만 일반적인 최적값은 아니다. 실제 적용 시에는 자체 벤치마크와 비용 구조에 맞춰 조정이 필요하다.
원문에서 확인한 근거 6곳
- Anti-Persistence는 9개 설정 동일 가중 평균 성공률 59.9%로 궤적 메모리 53.5%, 추상화 메모리 49.0%, 결합 메모리 49.3%보다 높았다.Held-Out Performance and LLM-Call
- Anti-Persistence는 9개 설정 중 7개에서 가장 높은 성공률을 기록했지만, Gemma-4-31B-it의 ALFWorld에서는 Reflexion(98.0%)이, ScienceWorld에서는 결합 메모리(56.3%)가 더 높았다.Table 1
- 현재 과제에서 합성 지침을 사용한 뒤 저장할지 버릴지 비교한 네 설정에서 폐기 쪽 성공률이 높았다. Llama-4-Scout ALFWorld는 54.7% 대 26.7%, Qwen3-Coder-Next WebShop은 54.0% 대 47.3%였다.Table 2
- Anti-Persistence는 9개 설정 평균 LLM 호출 수가 9.3으로 가장 낮았고, 궤적 메모리 9.5, 추상화 메모리 10.2, 결합 메모리 9.5였다.Figure 3
- 부록의 편향 표시는 검색한 실행의 성공률이 검색하지 않은 실행보다 5퍼센트포인트 이상 낮고 노출이 3회 이상인 관측 기준이다. 비노출 사례도 필요하며 Figure 10 집계의 개별 기록 대조는 이번 판에서 재검증되지 않았다.Provenance Associations and Operational
- Anti-Persistence는 추상화 저장소를 비워 두어 합성된 지침의 직접 재사용을 막지만, 임시 지침이 궤적에 영향을 주어 간접 피드백은 가능하다.What persists
10월 22일(목) 정리 · AI가 쓰고 원문과 대조