세션 기록을 기억하는건 에이전트에 유용하지 않음
2 hours ago
2
- SWE 작업에서 에이전트가 문서·PR·커밋 같은 컨텍스트를 이미 볼 수 있다면, 과거 세션 기록 검색은 성능 이점을 만들지 못했음
- 흔한 구현은 모든 transcript를 DB에 저장한 뒤 벡터 검색, Elasticsearch, SQL 검색, 그래프를 붙여 MCP나 CLI skill로 노출하지만, 여러 달의 비교 테스트에서 차이를 만들지 못했고 때로는 모델 품질을 떨어뜨릴 수 있었음
- 좋은 커밋 메시지, PR 메시지, 문서, 메타데이터가 남는 환경에서는 중요한 정보가 이미 코딩 산출물에 정리되어 있어, 세션 기록은 중복 정보와 임시 메모를 토큰으로 다시 읽게 만듦
- 에이전트는 장기 기억에 필요한 컨텍스트 제거를 잘하지 못하며, 상태가 없기 때문에 입력 컨텍스트의 코드·메모·토큰을 모두 의도로 취급해 intent drift가 누적될 수 있음
- 세션 기록은 팀 관측성에는 쓸모가 있을 수 있지만 성능 개선 수단으로는 부정적이며, nori bots의 주간 변경 제안도 사람이 diff를 검토해야 했고 실제 수락률은 20% 미만이었음
세션 기록 검색이 성능을 높이지 못한 이유
- SWE 작업에서 과거 세션 기록을 검색하게 해도, 다른 컨텍스트가 있는 조건에서는 성능 이점이 0으로 나타남
- 세션 기록을 자동으로 훑어 에이전트 컨텍스트를 개선하려는 시도도 사람 검토 없이는 큰 이점이 없었음
- 흔한 세션 기반 메모리 아키텍처는 다음 흐름을 가짐
- 조직 전체의 모든 transcript를 DB에 저장
- 그 위에 벡터 검색, Elasticsearch, SQL 검색 계층을 추가
- 더 야심적인 팀은 세 가지를 모두 쓰고 그래프도 포함
- MCP나 skill이 있는 CLI로 에이전트에 노출
- 여러 달 동안 세션 검색 접근 유무를 비교한 결과, 이 추가 작업은 차이를 만들지 못했고 경우에 따라 모델을 더 나쁘게 만들 수 있었음
- 유용한 정보는 이미 코딩 산출물에 정리되어 있음
- 코드 변경에는 좋은 커밋 메시지, PR 메시지, 포괄적 문서, 코드와 함께 커밋되는 메타데이터가 포함됨
- 에이전트는 특정 코드를 작업할 때 문서와 이전 PR을 보도록 지시받음
- 세션 기록 검색은 이미 아는 내용을 다시 읽게 하고, 처음부터 기록하지 않기로 한 임시 판단과 스크래치패드까지 토큰으로 소비하게 만듦
자동 메모리가 흔들리는 지점
- 에이전트는 장기 기억 유지에 중요한 메모리 정리를 하지 못함
- 수천 개 세션에서 실제로 컨텍스트를 제거하는 사례를 본 적이 없었음
- 프롬프트 엔지니어링으로 제거할 수 있는 성질이 아니며, 에이전트는 상태가 없기 때문에 입력 컨텍스트 창의 모든 것을 ground truth로 취급함
- 코드, 기존 메모리, 모든 토큰이 의도의 표현으로 취급되며, 이전 에이전트 세션의 임의 결정이거나 사람이 검토하지 않은 내용도 마찬가지임
- 이 과정에서 intent drift가 누적됨
- 에이전트가 자율적으로 메모리 기반을 쌓을수록 이전 입력의 잘못된 의도 해석이 계속 쌓임
- 입력 데이터가 오염되어 있다고 가정하는 코딩 벤치마크는 없으며, 모델은 입력 데이터가 틀렸다고 가정하면 오히려 불이익을 받음
- “코드베이스를 삭제하지 말라”와 “일부 입력 컨텍스트는 삭제하라”를 동시에 만족시키는 쉬운 방법도 없음
- 자동 암기는 결국 토큰을 쓰고, 비용을 키우고, 모델 품질을 떨어뜨리는 불필요한 쓰레기 컨텍스트로 귀결됨
- 세션 기록은 팀 관측성에는 쓸모가 있을 수 있지만, 에이전트를 더 좋게 만드는 도구로 보기는 어려움
nori bots의 사람 검토 방식
- 시간에 따라 컨텍스트를 배우는 방식 자체가 불가능한 것은 아니며, nori bots는 매주 PR, Slack, Drive 등 회사에서 일어난 일을 검토해 내장 nori skillsets 변경안을 제안함
- 변경안은 Slack에서 팀을 태그하지만 기본값은 모두 거부임
- 변경을 받아들이려면 diff를 직접 보고 의도에 맞는지 확인해야 함
- 수락률은 20% 미만이며, 나머지 80%의 “자동” 업데이트는 모델을 더 나쁘게 만들었을 것으로 봄
- 수백 명 규모 조직이 이런 업데이트를 항상 자동 저장한다면 더 지속 불가능해질 수 있음
-
Homepage
-
Tech blog
- 세션 기록을 기억하는건 에이전트에 유용하지 않음