실제 서비스에서는 메모리를 언제 지워야 하나
긴 세션은 무한히 늘 수 없으므로 시간, 장면 전환 또는 객체 생명주기를 기준으로 퇴출 규칙이 필요합니다. 카메라가 다른 장소로 이동했는데 옛 배경 토큰을 남기면 현재 장면에 잘못 섞일 수 있습니다. 반대로 잠깐 화면 밖으로 나간 핵심 객체를 장면 전환으로 오인해 지우면 이 방법의 장점이 사라집니다.
운영 로그에는 선택된 메모리 토큰의 시점과 객체, 검색 점수, 생성 결과를 함께 남기는 편이 좋습니다. 잘못된 재등장이 발생했을 때 저장 단계, 검색 단계, 생성 단계 중 어디서 정체성이 바뀌었는지 찾아야 하기 때문입니다. 메모리 갱신 실패 시 최근 프레임만 쓰는 안전한 fallback도 준비해야 합니다.
메모리를 session 사이에 재사용할지 여부도 별도 결정입니다. 같은 장면을 계속 생성하는 동안에는 cache 재사용이 지연을 줄일 수 있지만, 다른 사용자나 다른 prompt의 token이 섞이면 개인정보와 품질 문제가 동시에 생깁니다. 기본은 session별 격리로 두고, 재사용이 필요하면 장면 id, 모델 version, 압축 설정이 모두 같은 경우에만 허용합니다. session 종료 뒤에는 원본 특징과 파생 cache가 실제로 해제됐는지 메모리 지표로 확인해야 합니다.
검색 점수에 절대 threshold가 없다면 항상 K개를 고르기 때문에 관련 기억이 전혀 없는 장면에서도 과거 token을 억지로 가져옵니다. “검색하지 않음” 선택지를 두고, 낮은 점수에서는 Recent context만 사용하는 기준선과 비교하는 편이 좋습니다. 이 abstention 비율을 기록하면 모델이 불확실한 장면에서 잘못된 기억을 주입하는 문제를 더 쉽게 찾을 수 있습니다.