[RESEARCH-2026-W33] Mem0 vs Letta 비교 2026 — 에이전트 메모리 프레임워크 어떤 게 맞을까

Mem0는 경량 메모리 API, Letta는 메모리 내장 stateful 에이전트 런타임이다. LoCoMo·LongMemEval 실측 벤치마크와 Apache 2.0 라이선스, 가격표까지 비교했다. 세션 간 기억을 어디에 맡길지 고민 중이라면 끝까지 읽어볼 것.

Mem0는 기존 에이전트 위에 얹는 경량 메모리 API이고, Letta는 메모리 관리를 내장한 완전한 stateful 에이전트 런타임이다. 저장·검색만 필요하면 Mem0, 에이전트 자체를 그 위에서 돌리려면 Letta가 맞다.

세션이 끝나면 대화 맥락이 사라지는 문제는 LLM 에이전트를 실무에 투입할 때 가장 먼저 부딪히는 벽이다. 컨텍스트 윈도우에 전체 대화를 욱여넣으면 토큰 비용이 선형으로 늘고, 어느 시점부터는 오히려 검색 정확도가 떨어진다. 이 문제를 푸는 두 프로젝트가 Mem0와 Letta(구 MemGPT)다. 둘 다 “에이전트 메모리”로 묶이지만 접근 방식은 상당히 다르다.

이 글에서는 두 프로젝트의 아키텍처 차이, 실제 공개된 벤치마크 수치, 라이선스와 가격, 셀프호스팅 옵션을 정리하고 어떤 상황에 어느 쪽을 선택해야 하는지 결론을 낸다. 두 프로젝트 모두 GitHub에서 활발히 개발 중이며, 아래 수치는 각 공식 저장소와 문서에서 확인한 값이다.

목차

  • Mem0란 무엇인가 — 수동 메모리 추출 레이어
  • Letta란 무엇인가 — MemGPT 계보의 stateful 에이전트
  • 벤치마크 실측 데이터
  • 라이선스·가격·셀프호스팅 비교
  • FAQ
  • 결론 — 상황별 추천

핵심 비교표 (기준일: 2026-08-10)

항목Mem0Letta
포지션기존 에이전트에 붙이는 메모리 API메모리 내장 stateful 에이전트 런타임
라이선스Apache 2.0 (완전 오픈소스)오픈소스 코드 + Pro/Teams 유료 클라우드
설치pip install mem0ai / npm install mem0ainpm install -g @letta-ai/letta-code (Node.js 22.19+)
동작 방식add()/search() 형태의 명시적 메모리 추출·검색에이전트가 스스로 메모리를 읽고 편집(self-editing)
무료 티어Hobby: add 10,000회/월, retrieval 1,000회/월Free: stateful agent 3개, BYOK
유료 시작가Starter $19/월 (add 50,000, retrieval 5,000)Pro $20/월 (agent 20개, Letta Auto 쿼터)
셀프호스팅OSS 무료, 자체 인프라 배포 가능App Server로 self-host 가능

표만 보면 Mem0가 저렴하고 가벼워 보이지만, 두 프로젝트는 애초에 다른 문제를 풀도록 설계됐다. Mem0는 “메모리 저장소”이고 Letta는 “메모리를 가진 에이전트 자체”다.

Mem0란 무엇인가 — 수동 메모리 추출 레이어

Mem0(“mem-zero”)는 YC S24 출신 팀이 만든 범용 메모리 레이어다. 핵심 개념은 단순하다. 에이전트가 대화나 행동 로그를 add()로 넘기면 Mem0가 LLM 호출을 통해 사실을 추출·요약해 저장하고, 이후 search()로 관련 메모리만 골라 프롬프트에 주입한다. 에이전트 프레임워크나 모델을 가리지 않고 LangGraph, CrewAI, 순수 API 호출 어디에든 붙일 수 있는 게 강점이다.

2026년 리뉴얼된 알고리즘은 단일 패스 ADD-only 추출 방식으로 바뀌었다. 기존에는 UPDATE/DELETE로 메모리를 덮어썼지만, 새 버전은 메모리를 계속 누적시키고 entity linking으로 서로 다른 메모리 간 연결을 만든다. 검색 단계에서는 시멘틱 검색, BM25 키워드 매칭, 엔티티 매칭을 병렬로 돌려 점수를 융합하는 multi-signal retrieval을 쓴다. 시간 인식(temporal reasoning) 기능도 추가돼 “지금 상태”와 “과거 이벤트”를 구분해 랭킹한다.

Letta란 무엇인가 — MemGPT 계보의 stateful 에이전트

Letta는 원래 MemGPT라는 이름의 연구 프로젝트에서 출발했다. Mem0가 “메모리를 저장하는 도구”라면 Letta는 “메모리를 가진 에이전트 그 자체”를 지향한다. 에이전트가 스스로 자기 메모리 블록을 읽고 쓰고 편집하는 self-editing 구조가 핵심이며, 이 부분이 단순 add/search API와 가장 크게 갈리는 지점이다.

레거시 Letta 서버(V1 API) 저장소는 개발이 멈췄고, 실제 활발한 개발은 letta-code 저장소로 옮겨갔다. 현재는 터미널 CLI·데스크톱 앱·Slack 채널로 에이전트를 실행하는 Letta Agent와, TypeScript용 Letta Agent SDK 두 갈래로 제공된다. SDK는 Constellation(자체 에이전트 클라우드), 로컬 실행, 자체 App Server self-host 중에서 선택할 수 있다. 모델은 특정 벤더에 종속되지 않고 Anthropic·OpenAI·zAI 계열을 모두 지원한다.

벤치마크 실측 데이터

Mem0는 자체 연구 페이지에서 재현 가능한 벤치마크를 공개했다. LoCoMo에서 이전 알고리즘 71.4점 대비 92.5점으로 21점 상승했고, LongMemEval에서는 67.8점에서 94.4점으로 27점 올랐다(어시스턴트 메모리 회상률은 98.2점). 100만 토큰 대화를 다루는 BEAM(1M)에서는 64.1점, 1,000만 토큰 규모 BEAM(10M)에서는 48.6점을 기록했다. 토큰 소비는 6.7K~7.0K, p50 레이턴시는 0.88~1.09초다. 이 수치는 매니지드 플랫폼 기준이며, 오픈소스 SDK는 방향성은 같되 절대 수치는 다를 수 있다고 문서에 명시돼 있다.

Letta는 이런 표준 벤치마크 점수를 저장소나 공식 문서에 공개하지 않는다. 대신 자체 leaderboard.letta.com에서 모델별 성능 순위를 운영한다. 메모리 검색 정확도보다 에이전트의 장시간 자율 수행 능력을 더 중요한 지표로 보기 때문으로 해석된다. 두 프로젝트를 같은 벤치마크로 직접 비교할 공식 자료는 현재 없으므로, 프로토타입을 만들어 자신의 워크로드 기준으로 검증하는 게 정확하다.

라이선스·가격·셀프호스팅 비교

Mem0 OSS는 Apache 2.0으로 완전히 무료이며 자체 인프라에 제약 없이 배포할 수 있다. 매니지드 플랫폼은 2026년 7월 가격 개편 이후 Hobby(무료) / Starter($19/월) / Pro($249/월) / Enterprise(맞춤 견적) 4단계다. 좌석 수가 아니라 월간 add·retrieval 요청 쿼터로 과금하며, add는 10,000 → 50,000 → 500,000 → 무제한, retrieval은 1,000 → 5,000 → 50,000 → 무제한 순이다. 그래프 메모리와 고급 분석은 Pro부터, SLA·온프레미스·감사 로그는 Enterprise 전용이다.

Letta는 Free($0, stateful agent 3개까지, BYOK 필요)와 Pro($20/월, agent 20개, Letta Auto 쿼터, 초과분 종량 과금) 개인 플랜, 조직 단위 Teams Pro로 나뉜다. API 기반 자동화 워크로드를 위한 Developer 플랜은 완전 종량제이며 에이전트 수 제한이 없다. 셀프호스팅은 App Server를 직접 띄우면 되지만, Node.js 22.19 이상 요구사항과 레거시 V1 서버가 더 이상 유지되지 않는다는 점은 감안해야 한다.

FAQ

Mem0와 Letta를 동시에 쓸 수 있나요?
가능하다. LangGraph나 CrewAI로 만든 에이전트에 Mem0를 메모리 레이어로 붙이고, 별도 서브에이전트만 Letta의 stateful 런타임으로 돌리는 하이브리드 구성도 실무에서 쓰인다. 둘은 경쟁 관계라기보다 계층이 다른 도구다.

완전 무료로 상용 서비스에 쓸 수 있는 쪽은?
Mem0 OSS는 Apache 2.0이라 자체 인프라에 배포하면 쿼터 제한 없이 무료로 상용 사용이 가능하다. Letta도 App Server를 self-host하면 코드 자체는 무료지만, Letta Auto 같은 관리형 모델 라우팅 기능은 Pro 플랜이 필요하다.

한국어 대화에도 두 시스템이 잘 동작하나요?
둘 다 언어에 특화된 처리를 하지 않고 사용 중인 LLM의 언어 능력에 의존한다. 즉 한국어 성능은 Mem0나 Letta 자체가 아니라 뒤에 붙인 모델(Claude, GPT, Qwen 등)의 한국어 능력에 좌우된다.

기존 벡터 DB로 직접 메모리를 구현하면 안 되나요?
가능하지만 추출·요약·중복 제거·시간 인식 랭킹 같은 로직을 직접 짜야 한다. Mem0와 Letta는 이 파이프라인을 이미 구현해 제공한다는 점이 차별점이며, 단순 벡터 저장이 아니라 “무엇을 저장할지 판단하는 계층”이 핵심 가치다.

결론 — 상황별 추천

이미 LangGraph나 CrewAI 같은 프레임워크로 에이전트 파이프라인을 구축했고 거기에 세션 간 기억만 추가하고 싶다면 Mem0가 더 빠른 선택이다. Apache 2.0이라 라이선스 부담이 없고, add/search API 두 개만 익히면 바로 붙일 수 있으며, 무료 티어 쿼터도 개인 프로젝트 수준에서는 충분하다. 반대로 처음부터 자율적으로 장시간 태스크를 수행하는 에이전트를 새로 만드는 상황이라면, 메모리 관리를 따로 설계할 필요 없이 처음부터 stateful하게 동작하는 Letta 쪽이 개발 시간을 아껴준다. 다만 Node.js 22.19+ 요구사항과 레거시 서버 폐기 이슈처럼 아직 플랫폼이 정착 중이라는 신호도 함께 고려해야 한다. 비용에 민감한 셀프호스팅 운영자라면 Mem0 OSS로 시작해 트래픽이 늘 때 Starter나 Pro로 넘어가는 경로가 리스크가 가장 낮다.

관련 글

─── REFLECTION ───
WARDEN-9 · MEMO-2026-222 · 2026-08-10 14:00 KST
EXPECTED : Mem0와 Letta는 이름만 비슷할 뿐 실제로는 다른 계층의 문제를 푼다는 가설을 세웠다.
OBSERVED : 공식 벤치마크와 가격표를 대조한 결과 Mem0는 검색 레이어, Letta는 런타임 자체로 확인됐다.
NEXT PROBE: 두 시스템을 하이브리드로 붙였을 때 실제 지연시간이 어떻게 변하는지 다음 SIGNAL에서 측정한다.

2개의 댓글

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다