Wing, Room, Drawer 계층은 검색 범위를 어떻게 줄일까
MemPalace는 원문과 탐색용 표현을 분리합니다. 원문 보존은 사후 질문의 선택지를 남기고, 계층과 색인은 매번 전체 대화를 읽지 않도록 검색 범위를 줄이는 역할을 합니다.
“요약하지 마라. 추출하지 마라. 날것의 대화 원본(Verbatim)을 그대로 보존하고, 최신 벡터 임베딩과 계층형 그래프 검색으로만 찾아라.”
시스템은 장소법(Method of Loci)을 비유로 사용하며 ChromaDB를 통한 시맨틱 검색과 SQLite 기반의 시간(Temporal) 지식 그래프를 결합한다고 설명합니다. 두 저장소를 함께 쓴다면 원문 레코드, 벡터 항목과 시간 그래프가 동일한 식별자를 공유하고 한쪽 갱신이 실패했을 때 재색인할 수 있어야 합니다.
단순한 플랫(Flat) 텍스트 파일이 아니라 철저하게 5단계 계층으로 나뉩니다.
- Wings (날개): 최상위 네임스페이스. 프로젝트 단위나 협업하는 사람을 의미합니다 (예:
Project_Driftwood 윙). - Rooms (방): Wing 내부의 특정 서브 도메인입니다 (예:
Auth_Migration 방). - Halls (복도): 여러 Wing을 관통하는 공통 기억의 유형입니다. 확정된 사실을 모아두는
hall_facts, 마일스톤인 hall_events 등으로 묶입니다. - Drawers (서랍): 요약되지 않은 원본 대화 텍스트(Verbatim)를 보관하는 최하단 저장소입니다.
- Closets (옷장): 서랍을 가리키는 메타데이터와 고압축 요약본이 들어가는 공간입니다.
AAAK(AI-readable shorthand)는 사람이 읽는 일반 문장 대신 모델이 처리할 구조화된 축약 표현을 둔다는 제안입니다. 프로젝트가 제시하는 압축률은 고유명사, 부정, 수치가 유지되는지, 모델을 바꿔도 같은 의미로 해석되는지, 축약본에서 원문으로 역추적 가능한지를 같은 데이터로 재현한 뒤 판단해야 합니다.
또한 기존 시스템이 클라우드 종속적이었다면, MemPalace는 데이터를 지키는 데 진심입니다. 아래 마크다운 표를 통해 현존하는 메모리 생태계의 트레이드오프를 대조해 보았습니다.
| 아키텍처 설계 철학 | MemPalace (New!) | 기존 클라우드 AI 메모리 (Mem0, Zep 등) | 단순 로컬 파일 관리 (CLAUDE.md) |
|---|
| 저장/압축 방식 | 원본 100% 보존 (Verbatim) + AAAK 약어 | LLM 기반 정보 추출 및 추상적 요약 (Lossy) | 수동 작성, 단순 텍스트 플랫 (Flat) 관리 |
| 인프라 의존성 | 100% 로컬 (ChromaDB + SQLite) | 종속적 클라우드 인프라 (Neo4j 기반 등) | 무의존성 (순수 로컬 파일) |
| 운영 비용의 위치 | 로컬 저장, 색인, 백업을 직접 부담 | 서비스와 모델 호출 조건에 따라 달라짐 | 저장은 단순하나 매번 읽을 범위를 관리해야 함 |
| 검색 및 랭킹 | 시맨틱 + 시간 기반(Temporal) 지식 그래프 | 클라우드 내부 블랙박스 RAG | 매 실행 시 프롬프트로 전체 텍스트 로드 |
MCP 연결을 이용하면 여러 AI 클라이언트가 같은 저장소를 조회할 수 있습니다. 아래는 원문에 제시된 의사 코드 흐름이며, 설치 명령과 수치는 실제 사용 전 저장소 문서와 재현 가능한 평가에서 확인해야 합니다.
1
2
3
4
5
6
7
8
9
10
11
| # 터미널에서 Claude에 MemPalace MCP 서버를 연동하는 로컬 CLI 설정
$ pip install mem-palace
$ claude mcp add mempalace -- python -m mempalace.mcp_server .
# --- 실제 동작 로직 (Under the Hood) ---
> User: "우리 예전에 Auth0 대신 Clerk 쓰기로 한 이유가 뭐였지?"
> AI 내부 트리거:
1. SQLite Temporal Graph에서 'Auth' & 'Clerk' 엔티티 및 유효 기간 추출.
2. ChromaDB 쿼리 -> Project_Driftwood Wing -> Auth_Migration Room 진입.
3. 서랍(Drawer)에서 3개월 전의 원본 대화(Verbatim) 스니펫 정확히 인출 (96.6% 정확도).
> AI 응답: "당시 가격 정책과 개발자 경험(DX) 측면에서 Kai가 강력히 권장했기 때문입니다."
|