추측 대신 "이런 건 처음 봐요"라고 말하는 에이전트 구축 — 메모리를 추가한 후 바뀐 점들
Built an agent that says "I haven't seen this before" instead of guessing — here's what changed once it had memory
핵심 요약
AI 에이전트에 영구 메모리를 도입하여 추측성 답변을 줄이고 문제 진단 정확도와 신뢰성을 개선한 사례 공유.
- 영구 메모리 도입 — 세션 간 데이터 유지로 반복되는 문제 진단 정확도 향상
- 정직한 답변 유도 — 모르는 문제에 대해 추측 대신 모른다고 답하도록 설계
- 지능형 모델 라우팅 — 응답 품질과 추론 필요성에 따라 모델을 유연하게 선택
- 관련성 필터링 — 벡터 유사도 검색의 한계를 극복하기 위해 관련성 필터 추가
내가 실험하던 AI 에이전트들에서 계속해서 한 가지 문제를 발견했어: 바로 상태 비저장(stateless)이라는 점이야. 에러를 붙여넣고 답을 얻어도, 탭을 닫는 순간 컨텍스트는 사라져 버려. 5분 뒤에 똑같은 내용에 대해 다시 물어봐도 마찬가지지.
그래서 나는 PipelineRecall을 만들었어. 데이터 파이프라인 장애 처리를 위한 인시던트 트리아지 에이전트(특정 데이터 파이프라인 장애용이지만, 이 패턴은 일반화 가능함)인데, Hindsight를 사용해 유지/회상/반영(retain/recall/reflect)을 구현하고, 비용을 고려한 모델 라우팅을 위해 cascadeflow를 사용해서 세션 간 영구 메모리를 갖췄어.
메모리를 갖춘 후 실제로 바뀐 점들:
- 반복되는 문제는 과거의 정확한 인시던트와 효과가 입증된 해결책을 날짜와 함께 인용하여 진단함
- 정말 새로운 문제는 근거 없는 추측 대신 솔직하게 "이런 건 처음 봐요"라고 답함
- 라우팅은 단순히 메모리 존재 여부가 아니라 응답 품질을 기준으로 함 — 회상된 인시던트라도 진단에 더 깊은 추론이 필요하면 더 강력한 모델로 에스컬레이션함
정말 놀랐던 순간: 새로운 장애를 설명했더니 모른다고 답하더라고. 30초 뒤에 같은 장애를 다른 말로 설명했더니, 방금 전 스스로 진단한 내용을 저장했다가 세션 도중에 실시간으로 회상해서 기억해 냈어.
혹시 영구 메모리 레이어를 활용해서 개발 중인 사람 있어? 관련성 문제에 어떤 패턴을 쓰는지 궁금해. 나는 관련성 필터를 추가하기 전까지는 벡터 유사도만으로는 자신감 넘치는 환각(hallucination)만 생성되더라고.


