에이전트 메모리의 공식 원장 v0.3.0 · pre-release · MIT

에이전트 메모리의 문제

에이전트 메모리는 무엇이든 저장한다. 참이든 아니든.

Verimem은 지속 메모리 계층입니다. add()는 모든 쓰기를 반작화 허용 게이트로 통과시키고——출처가 정말로 그 사실을 함의하는가?——search()읽을 때마다 출처를 반환합니다. 문 앞에 공증인을 둔 해마입니다.

100% 무료 & 오픈소스 —— MIT 라이선스. 셀프호스팅·로컬 우선: 계정 불필요, API 키 불필요, 과금 없음.

허용됨grounding 0.97
쓰기 후보
「배포는 PostgreSQL 16을 사용.」
출처 ⊢ 사실 —— 인용된 릴리스 노트가 주장을 함의함.
상태 허용됨 · 출처와 함께 저장.
§01 허용 게이트

다른 메모리 계층은 추출기가 내놓는 것을 무엇이든 저장합니다. Verimem은 아닙니다.

쓰기 시 후보 사실은 허용·강등·거부됩니다——인용된 출처가 실제로 그것을 함의하는지에 따라 결정됩니다. 값싸고 LLM이 필요 없는 어휘 스크린이 먼저 「된다 / 검증됨 / 완료」 같은 근거 없는 주장을 강등하고, 가장 엄격한 모드는 출처⊢사실 함의 검사를 더합니다. SNLI에서 측정하면 AUROC 0.971에 이르며, 이 수치는 심판과 무관합니다.

mem0, Zep, Letta, Cognee, MemOS를 구조적으로 검토한 결과, 어느 것도 쓰기 허용 게이트를 갖고 있지 않습니다. 그 게이트——그리고 매 읽기가 되돌려 주는 출처——가 핵심의 전부입니다.

예시 —— 세 가지 판정으로 보는 게이트

허용됨0.97
쓰기 · 함의됨
「배포는 PostgreSQL 16을 사용.」
허용됨 · 출처와 함께 저장
강등됨0.41
쓰기 · 근거 없음
「마이그레이션 완료, 전부 작동.」
강등됨 · 유지, 낮은 신뢰로 표시
거부됨0.08
쓰기 · 모순
「API 속도 제한은 10,000 req/s.」
거부됨 · 출처는 1,000이라 함 —— 저장 안 함

읽을 때마다 출처

읽기는 텍스트만 반환하지 않습니다——각 사실에 대해 쓰기 시점의 statusgrounding_score를 반환하므로, 코드가 맹목적으로 믿는 대신 신뢰도로 조건을 걸 수 있습니다. 그리고 update()는 옛 사실을 결코 파괴하지 않고 대체(supersede)하여, 감사 가능한 history() 자취를 남깁니다.

memory.py · 쓰기는 게이트를 지나고, 읽기는 출처를 반환

from engram import Memory

mem = Memory()                                  # local SQLite, offline
mem.add("The deployment uses PostgreSQL 16.")   # write goes THROUGH the gate

for hit in mem.search("which database?"):       # read returns provenance
    print(hit["text"], hit["status"], hit["grounding_score"])
# -> The deployment uses PostgreSQL 16.  ADMITTED  0.97
§02 증거 —— 주장 아닌 측정
지표결과기록으로
쓰기 게이트 entailment AUROC 0.971 출처⊢사실, 심판과 무관(SNLI). 쓰기 경로의 해자.
다운스트림 환각 95.9% → 12.2% −83.7 pp; McNemar p≈6e-44, 2개 시드에서 재현. 작화를 기권으로 바꾸는 방식(누락 3%→85%)이며 정확도를 올리는 것이 아닙니다 —— 그리고 이 축은 심판과 결합되어 있습니다.
깨끗한 사실의 과도 거부 30–39% 엄격한 임계값에서의 정직한 비용. 증류된 로컬 게이트(v2)는 깨끗한 사실의 0.924를 허용하여 이를 대부분 메웁니다.
Retrieval recall@5 · LongMemEval-s 0.8745 전체 500, 심판 없음, 동일한 e5 임베더, 외부 API 0. Fusion ON 대 0.8525 OFF(+2.2 pp). 이전 n=300은 0.909 —— 낙관적이며, 전체 500 수치가 정직한 값입니다. 이것은 recall@k이며, 엔드투엔드 QA 정확도가 아닙니다.
이탈리아어 retrieval MRR +52% e5 임베더로 전환 시 0.466 → 0.710, 영어 회귀 0.
모순 감지 · HaluMem TPR 0.66 / FPR 0.0125 시간적 대체 수정 이후.
테스트 스위트 5,830 그린 테스트 파일 764개, 약 8.4만 줄. 자체 실행, 저장소에서 재현 가능.

여기의 모든 수치는 자체 실행이며 저장소에서 재현 가능합니다 —— 제3자 순위표의 순위가 아닙니다. retrieval 수치는 recall@k이며 Mem0와 Zep가 내세우는 엔드투엔드 QA 정확도가 아니므로 직접 비교할 수 없습니다.

§03 차이 —— 정직한 조합

01쓰기 허용 게이트

출처 함의로 각 쓰기를 허용·강등·거부. 여기 경쟁사는 없습니다.

02읽기 출처

각 사실이 status + grounding_score 반환; update()는 대체, history()는 감사 가능.

03이중시간 valid-time

valid_until 하드 만료 —— 사실이 언제 참이 아니게 됐는지 아는 메모리.

04당신 구독으로 구동

Hosted MCP 모드: API 키 없음, 토큰 과금 없음 —— 호스트의 LLM이 일합니다.

05다국어 인젝션 차단

쓰기 시 prompt-injection 차단 —— 영어뿐 아니라 이탈리아어 포함.

06MCP 네이티브

세션 시작 시 228개 메모리 도구. Claude Code, Cursor, Cline, Continue, Zed.

시스템쓰기 게이트읽기 출처접근성숙도
Mem0 평면 벡터 + LLM 요약 확립, 널리 채택
Zep / Graphiti 부분(시간적) 시간적 지식 그래프 상용, 성숙
HippoRAG OpenIE + PageRank 연구
Verimem 융합 리콜 + 게이트 + 수면 통합 완전 새것 · 아직 채택 0

경쟁사 점수와 채택은 출처와 시기에 따라 달라집니다; 우리가 서 있는 두 열 —— 쓰기 게이트와 읽기 출처 —— 는 마케팅 표가 아니라 구조적 검토에서 나왔습니다.

§04 Verimem이 아닌 것
기록으로
  • 채택 0.

    완전 새 공개 릴리스. 아직 아무도 의존하지 않습니다 —— 메인테이너의 일상 사용을 빼면 우리도.

  • PyPI 미등록.

    지금은 소스 / git에서 설치. engram-memory 패키지는 v0.4.0 이후 목표입니다.

  • 자체 실행 벤치마크.

    모든 수치는 저장소에서 재현 가능하지만 제3자 감사는 없습니다. 인증이 아니라 재현 가능으로 취급하세요.

  • 단일 노드 SQLite.

    단일 사용자·로컬. 멀티테넌트 스코프는 사실 계층에 있으나 호스팅 / 분산 스토어는 없습니다.

  • regex 수준 엔티티 그래프.

    엔티티+PageRank 엔진은 실제 데이터로 동작하나 추출기는 결정적 regex이며 백필로 실행 —— 아직 라이브 쓰기 경로에 연결되지 않음.

  • Answer-path 미검증.

    적대적 검토가 첫 answer-conditioning 데모를 부풀려졌다고 판정. 자체 증거로 서는 것은 쓰기 경로의 해자뿐 —— 그래서 그것만 주장합니다.

§05 2분 만에 설치

① Python —— 소스에서

pip install "git+https://github.com/aureliocpr-ctrl/verimem.git"

engram 명령과 from engram import Memory SDK 제공. 로컬 SQLite, 오프라인, 게이트 기본 활성.

github.com/aureliocpr-ctrl/verimem ↗ · MIT · README · BENCHMARKS.md

② MCP 서버로 —— Claude Code, Cursor, Cline, Zed

{
  "mcpServers": {
    "engram": {
      "command": "engram",
      "args": ["mcp"],
      "env": { "ENGRAM_HOSTED": "1" }
    }
  }
}

호스트를 재시작하면 메모리 도구를 API 키 없이 호출할 수 있습니다. 엔진은 현재 engram으로 배포 —— Verimem으로의 개명이 진행 중입니다.