에이전트 OS · 메모리 계층

잊지 않는 메모리. 거짓말하지 않는 캐시.

구조화 상태, 의미 메모리, 시스템 변경 시 재생성되는 스키마 결합 캐시.

UDB는 AI가 말만 하지 않고 실제로 행동하기 위해 필요한 데이터 계층입니다. 압축에서도 살아남는 구조화 상태, 세션 간 자동 회상되는 의미 메모리, 비용이 큰 쿼리에 대한 스키마 결합 캐시를 보존합니다. 캐시는 기반 시스템이 바뀌면 조용히 재생성됩니다. 모든 레코드는 테넌트 격리되어 안정적인 user_ref에 연결됩니다.

Structured
압축에서 생존
Auto-regen
스키마 결합 캐시
Semantic
세션 간 회상

세 가지 메모리 계층

구조화 상태
renewal_status, last_invoice_id, escalation_owner
스키마 결합 캐시
월간 활성 고객 (스키마 변경 시 재생성)
의미 메모리
사용자는 간결한 요약을 선호; 금요일은 회피

각 계층은 고유한 검색 패턴과 보존 규칙을 가집니다.

'그냥 RAG에 넣자'가 충분하지 않은 이유

에이전트 신뢰성을 조용히 무너뜨리는 세 가지 실패 모드.

✗ 압축이 핵심 사실을 삼킴

자동 요약된 대화 메모리는 어조는 유지하지만 숫자는 잃습니다. 다음 단계가 필요한 ID가 대화 중간에 사라집니다.

✗ 스키마가 바뀌면 캐시는 거짓을 말함

사전 계산된 뷰는 상위 테이블 이름이 바뀌면 조용히 노후화됩니다. 에이전트는 지난 분기 매핑을 자신 있게 인용합니다.

✗ 테넌트 데이터가 사용자 간 유출

엄격한 테넌트 경계가 없는 RAG 인덱스는 임베딩이 가까울 때 다른 고객의 메모를 반환합니다.

UDB가 하는 일

LLM을 동료로 만드는 네 가지 메모리 속성.

구조화 상태는 압축을 견딤

핵심 사실은 채팅 스크롤백이 아닌 타입화된 레코드에 살아 있습니다. 오케스트레이터가 결정적으로 가져오며 요약으로 사라지지 않습니다.

재생성되는 스키마 결합 캐시

비용이 큰 쿼리(활성 고객 수, 월 매출)는 의존 스키마에 결합되어 캐시됩니다. 스키마가 바뀌면 캐시는 무효화되고 재생성됩니다.

자동 회상되는 의미 메모리

선호, 이전 결정, 반복 패턴은 임베딩되어 사용자가 다시 말하지 않아도 계획 시점에 자동 회상됩니다. 무한 스크롤백이 아닌 적절한 보존을 갖춘 RAG.

기본 테넌트 + 사용자 격리

모든 레코드는 account_id + user_ref로 키화됩니다. 크로스 테넌트 조회는 쿼리 관습이 아닌 구조적으로 불가능합니다.

메모리가 UDB에 들어오고 나가는 과정

쓰기 경로, 회상 경로, 재생성 루프.

1

쓰기

오케스트레이터는 모든 단계 전이에서 구조화 상태를 기록합니다. 암묵은 없습니다.

2

임베드

의미 메모리는 임베딩되어 보존 규칙과 함께 태그됩니다.

3

회상

계획 단계에서 UDB를 조회하여 테넌트 범위 안에서 현재 의도와 일치하는 상태와 의미 메모리를 가져옵니다.

4

재생성

스키마 의존성이 바뀌면 스키마 결합 캐시는 자체적으로 노후화 처리되고 다음 접근 시 재구축됩니다.

메모리 계층 정직한 비교

UDB가 제공하는 것과 대안 비교.

기능 Interactor UDB ChatGPT / Cowork 자체 구축
핵심 사실 보존 예 — 구조화 부분적 (CLAUDE.md) 1개월 이상
세션 간 기억 예 — 자동 회상 개선 중인 자동 메모리 2개월 이상
재생성되는 캐시 예 — 스키마 결합 없음 예 — 신중한 설계
테넌트 + 사용자 격리 예 — 구조적 계정 단위만 잘못하기 쉬움
신뢰성 있는 메모리까지 시간 수주 해당 없음 3–6개월
개선 중인 영역

현재 메모리는 기본적인 RAG입니다. 업그레이드 중입니다.

임베딩 + 코사인 유사도 + top-k는 작동하지만, 6개월 된 메모리를 어제 메모리와 같은 가중치로 다룹니다. 시간 감쇠, 재랭킹 패스, 메모리 유형 구분(사실 vs 선호 vs 결정)을 추가하여 사람이 실제로 떠올릴 만한 결과로 회상합니다.

메모리 악몽 사례를 보내주세요

AI가 계속 잊어버리는 것을 알려 주세요. 올바른 UDB 레코드 타입을 모델링하고 회상을 실시간으로 보여드립니다.