AI 어시스턴트가 망각하는 이유와 메모리 레이어(Memory Layer)의 실제 역할
요약
단순한 벡터 검색의 한계를 지적하며, AI 어시스턴트가 인간처럼 정보를 기억하고 인출할 수 있도록 돕는 메모리 레이어의 중요성을 설명합니다. 벡터 유사도, 시간적 최신성, 키워드 검색, 지식 그래프를 결합한 적응형 회상(Adaptive Recall) 전략을 제안합니다.
핵심 포인트
- 단일 벡터 검색은 문맥적 변화와 시간적 맥락을 반영하지 못함
- 적응형 회상은 4가지 병렬 검색 경로를 통해 검색 정확도를 높임
- 지식 그래프와 키워드 검색을 결합하여 엔티티 및 정확한 용어 대응 가능
- 인지 과학의 ACT-R 모델을 활용한 효과적인 정보 랭킹 전략 제안
몇 주마다 누군가는 똑같은 실망감을 다시 경험하며 시스템을 재구축합니다. 어시스턴트를 벡터 데이터베이스 (Vector Database)에 연결하고, 1년 치의 노트를 입력한 뒤, 분명히 작성했던 내용을 질문합니다. 하지만 돌아오는 것은 명백히 틀린 답변을 자신 있게 내놓는 모델뿐입니다. 문제는 모델이 아닙니다. 검색 (Retrieval)이 문제입니다.
이제 텍스트를 저장하는 것은 쉽습니다. 무엇을 다시 불러올지, 그리고 그것을 얼마나 신뢰할지를 결정하는 것이 바로 메모리 시스템 (Memory Systems)이 실제로 성패를 가르는 지점입니다.
단 한 번의 벡터 검색은 메모리가 아니다
표준적인 설정은 노트당 하나의 임베딩 (Embedding)을 생성하고, 쿼리 (Query) 시점에 코사인 유사도 (Cosine Similarity) 검색을 수행하는 것입니다. 하나의 전략, 단 한 번의 시도, 학습은 없습니다. 이 방식은 질문의 표현이 노트의 표현과 달라지는 바로 그 순간까지는 잘 작동합니다.
노트에는 "Q3까지는 차지백 (Chargebacks)을 수동으로 처리한다"라고 적혀 있는데, "환불 (Refunds)에 대해 무엇을 결정했나"라고 질문하면 유사도 점수 (Similarity Scoring)가 이 둘을 연결할 이유가 없습니다. 노트는 데이터베이스에 그대로 존재하지만 결코 드러나지 않습니다. 더 나쁜 것은, 검색 결과가 무엇이라도 반환되면 모델은 약하게 연관된 청크 (Chunks)를 바탕으로 어떻게든 답변을 내놓는다는 점입니다.
코사인 유사도는 시간, 빈도, 또는 모순에 대해 아무런 의견도 갖지 않습니다. 14개월 전의 오래된 노트와 어제 작성된 노트가 문구만 일치한다면 동일한 점수를 받습니다. 이는 실제로 사람이 무언가를 기억하는 방식이 아닙니다.
네 가지 병렬 검색 경로가 제공하는 가치
해결책은 더 나은 임베딩 모델을 사용하는 것이 아닙니다. 단일 검색 전략에 정답을 거는 것을 거부하는 것입니다.
적응형 회상 (Adaptive Recall)은 네 가지를 동시에 실행합니다: 의미적 유사성을 위한 벡터 유사도 (Vector Similarity), 최근에 발생한 일을 위한 시간적 최신성 (Temporal Recency), 사용자가 입력한 정확한 용어를 위한 전체 텍스트 키워드 (Full Text Keyword), 그리고 문구가 아닌 엔티티 (Entities)를 통해 도달할 수 있는 사실을 위한 지식 그래프 탐색 (Knowledge Graph Traversal)입니다.
앞서 언급한 환불 질문은 벡터 검색에서는 실패하지만 그래프 탐색에서는 성공합니다. "환불"과 "차지백"이 모두 동일한 결제 엔티티 (Billing Entity)에 연결되어 있기 때문입니다. 지난 화요일에 대한 질문은 유사도에서는 실패하지만 최신성에서는 성공합니다. 제품 코드가 포함된 질문은 의미론 (Semantics)에서는 실패하지만 키워드 검색에서는 즉시 성공합니다.
이들을 병렬로 실행한다는 것은 시스템이 방금 어떤 종류의 질문을 받았는지 추측할 필요가 없음을 의미합니다. 시스템은 쿼리 유형별로 어떤 전략이 제 자리를 차지하고 있는지 학습합니다.
사람처럼 메모리에 점수를 매기는 방법
검색 (Retrieval)은 후보군을 찾아줍니다. 랭킹 (Ranking)은 모델이 실제로 무엇을 볼지 결정하며, 바로 이 지점에서 인지 과학 (Cognitive Science)이 검색 엔지니어링 (Search Engineering)보다 더 유용하게 작용합니다.
ACT-R은 인간의 기억에 관한 30년 연구의 결과물인 활성화 모델 (Activation Model)입니다. 이 모델은 기억의 가용성이 그것이 얼마나 최근에 사용되었는지, 얼마나 자주 사용되었는지, 그리고 현재 초점이 맞춰진 대상과 얼마나 강력하게 연결되어 있는지에 따라 달라진다고 설명합니다. 적응형 회상 (Adaptive Recall)은 동일한 활성화 수학 (Activation Math)을 사용하여 후보군을 순위 매깁니다. 따라서 지속적으로 접하는 사실은 한 번 작성하고 방치한 사실보다 높은 순위를 차지하며, 현재 논의 중인 엔티티 (Entity)와 연결된 사실은 임베딩 점수 (Embedding Score)가 약간 더 높은 떠돌이 정보보다 높은 순위를 차지하게 됩니다.
이는 작은 변화지만 큰 효과를 가져옵니다. 관련성 (Relevance)은 순수하게 텍스트에 국한되지 않고 사용성 (Use)을 포함하기 시작합니다.
스스로 생각을 바꾸는 메모리
마지막 요소는 대부분의 시스템이 완전히 건너뛰는 부분입니다. 저장된 메모리는 영구적으로 참인 것으로 취급됩니다. 이는 당신이 지나가는 말로 한 번 언급한, 어쩌면 틀렸을지도 모르는 내용이 이후 다섯 번의 사건으로 확인된 내용과 영원히 동일한 지위를 갖게 됨을 의미합니다.
실제 기억은 그렇게 작동하지 않으며, 메모리 레이어 (Memory Layer) 또한 그래야 합니다. 확증 증거가 도착함에 따라 신뢰도 (Confidence)는 상승해야 하며, 무언가 그것을 반박할 때는 하락해야 합니다. 아무도 건드리지 않는 메모리는 인덱스 (Index)에 머물며 주의를 끌려고 경쟁하기보다는 서서히 사라져야 합니다. 이러한 라이프사이클 (Lifecycle)이 있어야만 저장소가 반쯤 참인 파편들의 늪으로 서서히 변하는 것을 막을 수 있으며, 이는 1년 된 벡터 데이터베이스 (Vector Database)가 겪는 일반적인 운명입니다.
요점
만약 당신의 어시스턴트가 계속해서 무언가를 잊어버린다면, 모델을 바꾸고 싶은 충동을 억제하세요. 질문과 답변 사이에 어떤 일이 일어나는지를 살펴보십시오.
하나의 검색 전략(retrieval strategy)은 추측에 불과합니다. 학습된 가중치(learned weighting)를 가진 여러 전략이 결합될 때 비로소 시스템이 됩니다. 텍스트 유사도(text similarity)가 아닌 활성화(activation)를 기준으로 순위를 매기는 것이 결과물을 검색(search)이 아닌 메모리(memory)처럼 느껴지게 만드는 핵심입니다. 그리고 신뢰 주기(confidence lifecycle)는 운영 1년이 지난 시점에도 전체 시스템의 정직함을 유지해 줍니다.
검색 전략(retrieval strategies)과 점수 모델(scoring model)에 대한 전체적인 분석은 여기에서 확인할 수 있습니다: https://www.adaptiverecall.com/
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기