콘텐츠로 이동

능동적 서피싱

기존 RAG 시스템은 에이전트가 명시적으로 검색을 요청해야만 관련 정보를 제공합니다. memtomem-stm의 능동적 서피싱은 에이전트의 모든 도구 호출을 관찰하고, 관련 기억을 자동으로 검색하여 응답에 주입합니다.

에이전트가 MCP 도구를 호출하면, STM 프록시가 다음 파이프라인을 실행합니다:

도구 호출 → 컨텍스트 추출 → LTM 검색 → 관련성 판정 → 응답에 주입

에이전트 코드를 수정할 필요 없이, STM 프록시를 거치는 것만으로 모든 MCP 통신에서 기억이 자동 주입됩니다.

도구 호출에서 검색 쿼리를 추출하는 5단계 우선순위:

우선순위추출 방법설명
1도구별 쿼리 템플릿도구 이름에 매핑된 미리 정의된 쿼리 패턴
2_context_query 인자에이전트가 명시적으로 전달한 검색 쿼리
3경로 인자파일 경로, URL 등에서 컨텍스트 추출
4시맨틱 키도구 인자의 의미적 키워드 조합
5도구명최후 수단 — 도구 이름 자체를 쿼리로 사용

서피싱된 기억이 실제로 유용한지 5단계로 필터링합니다:

  1. 컨텍스트 추출 — 도구 호출에서 의미 있는 쿼리 생성 가능 여부
  2. 관련성 판정 — 추출된 쿼리가 기억 검색에 적합한지 평가
  3. LTM 검색 — 하이브리드 검색으로 관련 기억 후보 검색
  4. 점수 필터링min_score 임계값 이하의 결과 제거
  5. 중복 제거 — 세션 내 + 교차 세션(7일) 중복 방지

에이전트의 컨텍스트 윈도우 크기를 인식하여 자동 스케일링합니다:

컨텍스트 윈도우압축 비율주입 크기검색 결과 수
≤ 32K높은 압축소형적음
32K ~ 200K기본 압축중형기본
> 200K낮은 압축대형많음

에이전트가 서피싱 품질을 평가하면, 자동 튜너가 도구별 관련성 임계값을 지속적으로 최적화합니다:

  • helpful → 해당 도구의 min_score 유지 또는 하향
  • not_relevantmin_score 상향 (더 엄격한 필터링)
  • already_known → 중복 제거 윈도우 확대
  • 회로 차단기 (3-state) — 연속 실패 시 서피싱 일시 중단
  • 쓰기 도구 스킵 — 파일 쓰기, 삭제 등 부수효과가 있는 도구에서는 서피싱 비활성화
  • 쿼리 쿨다운 — 동일 쿼리의 빈번한 반복 검색 방지
  • 민감 데이터 감지 — API 키, 비밀번호, PII 자동 탐지 및 필터링