AI 에이전트가 지난 일을 사실처럼 말한다면, 기억부터 만료하라

AgentCore Memory의 오래된 기록이 현재 답변에 사실처럼 섞인다면, 기억 유형별 만료 조건부터 정해야 한다. 단기 이벤트에는 TTL을 적용하고, 장기 기억은 시간과 최신 확인 여부로 관련성을 낮춘 뒤 통합·삭제하며, 변경 전후에 같은 평가 질문을 실행한다.
오래됐다는 이유만으로 모든 기억을 지울 필요는 없다. 당시에는 맞았던 주소·선호·업무 상태가 최신 입력보다 앞서 검색되는 것이 문제이므로, 저장 기간과 검색 우선순위를 함께 관리해야 한다.
나이보다 용도를 먼저 기록한다
AgentCore Memory는 단기 이벤트와 장기 기억을 나눠 관리한다. AgentCore Memory 공식 문서 의 관리형 메모리 예시는 의미 기억과 요약 전략을 사용하며, 이벤트 만료 기간을 지정하지 않으면 30일을 적용한다고 설명한다. 이 값은 이벤트 보존의 기본선이지 모든 장기 기억을 30일 뒤 삭제하라는 기준은 아니다.
각 레코드에는 기억 유형, 생성 시각, 마지막 사용 시각, 마지막 확인 시각, 근거 세션이나 문서, 사용자·테넌트 범위, 민감도, 만료 시각, 정책 버전을 남긴다. 마지막 사용 시각만 보면 자주 호출되는 낡은 정보가 계속 살아남을 수 있으므로 마지막으로 사실임을 확인한 시각을 별도 필드로 두는 편이 안전하다.
유형별 보존 기간과 만료 후 동작을 묶는다

다음 기간은 법적 기준이나 AgentCore의 강제값이 아니라 초기 배포를 위한 운영 예시다. 서비스 목적과 개인정보 처리방침에 맞춰 조정하고, 별도 보존 의무가 있는 자료는 에이전트가 검색하는 기억과 분리한다.
- 대화 이벤트: 30일 기본값을 출발점으로 삼되 장애 조사에 필요한 기간보다 불필요하게 길게 두지 않는다. 이벤트와 여기서 추출된 장기 기억의 만료 여부는 따로 확인한다.
- 진행 중 작업 상태: 완료·취소 신호가 오면 검색에서 제외한다. 신호가 누락될 상황에는 7∼30일 같은 상한을 둔다.
- 사용자 선호: 90일 같은 재확인 주기를 정한다. 새 선호가 들어오면 기존 값을 무조건 병합하지 말고 대체 관계와 변경 시각을 기록한다.
- 외부 사실: 출처의 버전이나 유효기간과 연결한다. 가격·담당자·정책처럼 자주 변하는 정보는 고정된 장기 기억보다 요청 시 재조회하는 편이 적합하다.
- 민감정보: 목적에 필요한 최소 범위만 저장하고 목적이 끝나면 삭제한다. 편의를 이유로 더 긴 기간을 부여하지 않는다.
기간 옆에는 만료 후 동작도 명시한다. 즉시 삭제, 검색 제외 후 유예 삭제, 최신 레코드로 통합, 사용자 재확인 대기 가운데 하나를 정해야 TTL 작업과 통합 작업이 같은 레코드를 동시에 바꾸거나 삭제 대상이 새 요약에 다시 들어가는 일을 통제할 수 있다.
TTL, 감쇠, 통합을 단계적으로 배포한다

AWS의 AgentCore 수명주기 예제 는 TTL 만료, 관련성 감쇠 점수, LLM 기반 통합 정책을 야간 Step Functions 작업으로 실행한다. 실제 배포에서는 한 번에 물리 삭제하지 말고 관찰, 검색 제외, 평가, 삭제 순으로 범위를 넓혀야 정책별 영향을 추적하기 쉽다.
- 처음에는 삭제 없이 후보 수, 기억 유형, 사용자 범위, 판정 사유만 기록하는 관찰 모드로 실행한다.
- TTL이 지난 이벤트를 검색 대상에서 먼저 제외한다. 만료 판정에는 현재 정책이 아니라 레코드에 기록된 정책 버전을 사용한다.
- 남은 장기 기억은 의미적 관련성에 시간 가중치를 적용해 다시 점수화하고, 최신 사용자 입력과 충돌하면 추가 감점한다.
- 중복된 선호나 반복 요약은 통합하되 최신 확인 시각과 원본 근거 식별자를 보존한다.
- 회귀평가를 통과한 후보만 유예 삭제하고, 복구가 필요하지 않음을 확인한 뒤 물리 삭제로 전환한다.
조건부 예로, 45일을 관련성 재검토 경계로 두고 그보다 오래된 기억 가운데 감쇠 후 점수가 0.35 미만인 항목을 삭제 후보로 만들 수 있다. 45일과 0.35는 범용 기준이 아니므로 실제 검색 점수 분포와 오판 비용으로 보정해야 한다. 안전 설정이나 아직 유효한 장기 선호처럼 잘못 지웠을 때 비용이 큰 기억은 점수만으로 삭제하지 말고 재확인 상태로 보낸다.
통합 결과를 새로운 주장으로 관리한다
LLM 통합은 저장 공간을 줄이는 동시에 내용을 새로 쓰는 작업이다. 서로 다른 시점의 기억을 한 문장으로 합치면 날짜, 예외 조건, 주체가 빠질 수 있으므로 결과 레코드에 원본 식별자, 최신 확인 시각, 충돌 여부와 사용한 정책 버전을 붙인다. 최신 값이 분명하지 않다면 단정적인 요약 대신 복수 후보나 재확인 필요 상태를 유지한다.
통합 직후 원본을 지우지 않는다. 통합 레코드는 검색에 포함하고 원본은 검색에서만 제외한 상태로 평가해 답변 품질과 근거 추적 가능성을 확인한다. 다만 개인정보 삭제 요청에 대해서는 이 유예 절차를 자동 적용하지 말고, 별도 보존 근거가 없는 사본까지 삭제 범위에 포함한다.
같은 질문으로 삭제 전후를 회귀평가한다

수명주기 정책의 성공 기준은 저장량 감소가 아니라 답변 행동이다. 같은 평가 입력을 정책 적용 전, 삭제 후보를 검색에서 제외한 뒤, 실제 삭제한 뒤의 세 단계에 실행하면 어느 변경이 품질에 영향을 줬는지 구분할 수 있다.
- 과거 사실과 현재 사실이 충돌할 때 만료된 값을 현재 사실처럼 답하는 비율이 줄었는지 확인한다.
- 유효한 장기 선호와 진행 중 작업의 회상률이 사전에 정한 허용 범위에 머무는지 본다.
- 삭제한 고유 문구를 그대로 묻거나 바꿔 물었을 때 답변과 의미 검색 결과에 다시 나타나지 않는지 검사한다.
- 통합된 기억으로 답할 때 원래 근거와 최신 확인 시각을 추적할 수 있는지 확인한다.
- 다른 사용자나 테넌트의 기억이 검색되지 않는지 별도 시험한다.
모든 서비스에 같은 합격 숫자를 적용하지 말고 기존 품질 기준선과 허용 하락폭을 먼저 정한다. 유효 기억의 회상률이 기준을 벗어나면 물리 삭제를 중단하고 감쇠 속도나 임계값을 조정한다. 낡은 사실이 계속 나타난다면 TTL뿐 아니라 통합 결과와 검색 필터도 함께 점검한다.
개인정보 삭제는 재유입 차단까지 포함한다
개인정보 삭제 요청은 정기적인 야간 정리와 분리해 우선 처리한다. 요청자의 사용자·테넌트 범위를 확인한 뒤 해당 범위의 신규 기억 쓰기와 통합을 일시 중지하고, 단기 이벤트, 장기 기억, 통합 결과, 검색 인덱스에서 원본과 파생 레코드를 찾는다.
- 삭제 범위와 별도 근거에 따라 분리 보존해야 할 항목을 확정한다.
- 검색 노출을 먼저 차단하고 원본 및 파생 기억을 삭제한다.
- 대기 중인 야간 작업과 재시도 큐가 삭제한 내용을 다시 기록하지 않도록 취소하거나 필터링한다.
- 직접 검색과 의미 검색을 모두 실행해 대상 내용이 반환되지 않는지 검증한다.
- 감사 기록에는 요청 식별자, 처리 시각, 적용 범위와 결과만 남기고 삭제한 대화 내용을 복제하지 않는다.
쓰기를 재개하기 전에는 새 세션이 빈 상태 또는 허용된 최소 상태에서 시작하는지 확인한다. 저장, 검색 제외, 통합, 삭제, 검증을 하나의 흐름으로 관리해야 삭제된 기억이 예약 작업이나 재시도 큐를 통해 되살아나는 경로까지 닫을 수 있다.
함께 읽기:
뉴스레터 구독
최신 Web3, AI, 암호화폐 뉴스를 이메일로 받아보세요.