Supermemory: LLM 앱을 구축하기 위한 가장 빠른 오픈소스 AI 메모리 API

Supermemory는 AI 애플리케이션을 위한 오픈소스 메모리 엔진 및 앱입니다. 벡터 검색, 그래프 검색, 세션 관리를 갖춘 빠르고 확장 가능한 메모리 API를 제공합니다. LangChain, LlamaIndex, CrewAI 및 모든 Python/JS 앱과 통합됩니다. 자체 호스팅, 외부 의존성 없음. 설정 가이드, 벤치마크 및 프로덕션 배포 포함.

  • ⭐ 26372
  • 업데이트 2026-06-10

Supermemory: LLM 앱을 구축하기 위한 가장 빠른 오픈소스 AI 메모리 API #


TL;DR #

Supermemory는 AI 애플리케이션을 위한 오픈소스 메모리 엔진 및 앱입니다. 벡터 검색, 그래프 검색, 세션 관리를 갖춘 메모리 API를 제공합니다. 외부 의존성 없이 영구 메모리가 필요한 LLM 앱을 위해 설계된 가장 빠른 자체 호스팅 메모리 솔루션입니다.

Supermemory는 AI 애플리케이션을 위한 오픈소스 메모리 엔진 및 앱입니다. 벡터 검색, 그래프 검색, 세션 관리를 갖춘 메모리 API를 제공합니다. 외부 의존성 없이 영구 메모리가 필요한 LLM 앱을 위해 설계된 가장 빠른 자체 호스팅 메모리 솔루션입니다.

|| 지표 | Supermemory | Mem0 | LangChain Memory | |——–|————-|——|——————| | 지연 시간 | < 5ms | 15-30ms | 50-100ms | | 설정 | pip install supermemory | Docker | 복잡함 | | 의존성 | 없음 | 클라우드 API | 다수 | | 자체 호스팅 | ✓ | 제한적 | 해당 없음 |

Supermemory는 오픈소스 메모리 엔진 중 가장 빠른 5ms 미만의 메모리 검색 지연 시간을 달성합니다. 외부 의존성 없이 LLM 앱에 영구 메모리를 부여하고 싶은 개발자들을 위해 설계되었습니다. 모든 데이터는 귀하의 인프라에 보관되며, 프라이버시와 보안에 대한 완전한 통제력을 제공합니다. 100만+ 엔트리, 50개 이상 언어, 3개 이상 검색 모드(벡터, 그래프, 전체 텍스트)를 지원하여 Supermemory는 AI 애플리케이션을 위한 가장 확장 가능한 메모리 솔루션입니다.


그것이 무엇인가 #

Supermemory는 한 가지 문제를 해결합니다: LLM 앱은 세션 간에 모든 것을 잊어버린다는 것.

Supermemory는 대화, 사용자 선호도 및 지식을 구조화된 데이터로 저장하는 메모리 API를 제공합니다. 단순한 벡터 데이터베이스와 달리 Supermemory는 벡터 검색과 그래프 관계를 결합하여 앱이 단순히 “무엇이 말해졌는지"뿐만 아니라 “누가 언제 어떻게 말했고 다른 것들과 어떻게 연결되는지"도 기억할 수 있게 합니다.

주요 기능:

  • 의미적 유사성을 위한 벡터 검색
  • 관계 쿼리를 위한 그래프 검색
  • 대화 스레드를 위한 세션 관리
  • 외부 의존성 없이 자체 호스팅
  • Python 및 JavaScript API
  • LangChain, LlamaIndex, CrewAI 통합

Supermemory는 외부 API나 클라우드 서비스 없이 LLM 앱에 영구 메모리를 부여하고 싶은 개발자들을 위해 설계되었습니다. 모든 데이터는 귀하의 인프라에 보관되며, 프라이버시와 보안에 대한 완전한 통제력을 제공합니다. 100만+ 엔트리, 50개 이상 언어, 3개 이상 검색 모드(벡터, 그래프, 전체 텍스트)를 지원하여 AI 애플리케이션을 위한 가장 확장 가능한 메모리 솔루션입니다.


작동 방식 (30초) #

사용자 입력 → Supermemory API → 메모리 저장소
                         ↓
            의미 검색 (벡터)
            + 관계 검색 (그래프)
                         ↓
            구조화된 컨텍스트 반환
                         ↓
            LLM이 풍부한 컨텍스트 획득

Supermemory는 세 개의 레이어로 작동합니다:

레이어 1 — 저장소: 대화, 선호도 및 사실은 구조화된 데이터로 저장됩니다. 각 메모리 엔트리는 사용자 ID, 타임스탬프, 출처 및 관계를 메타데이터로 갖습니다.

레이어 2 — 인덱싱: 메모리는 벡터 검색(의미적 유사성)과 그래프 검색(관계 쿼리) 모두를 위해 인덱싱됩니다. 이 이중 인덱싱은 “비슷한 메모리 찾기"와 “프로젝트 Y의 사람 X에 대한 메모리 찾기"를 모두 가능하게 합니다.

레이어 3 — 검색: 앱에 컨텍스트가 필요할 때 메모리 API에 쿼리를 보냅니다. 결과에는 의미적 일치와 그래프 관계가 모두 포함되므로 LLM은 원시 텍스트가 아닌 구조화된 컨텍스트를 받습니다.


빠른 시작 (60초) #

Python 프로젝트에 Supermemory를 설치하세요:

pip install supermemory

# 앱에 대한 메모리 초기화
python -c "import supermemory; m = supermemory.Memory(); m.init()"

# 메모리 저장
m.add("User likes spicy food")
m.add("User is allergic to shellfish")

memories = m.search("dietary preferences")
print(memories)

또는 프로덕션용 Docker 사용:

docker run -d \
  --name supermemory \
  -p 8000:8000 \
  supermemoryai/supermemory:latest

# API는 http://localhost:8000 에서 사용 가능

언제 사용할지 / 언제 건너뛸지 #

다음과 같은 경우에 적합:

  • 영구 메모리가 필요한 LLM 앱을 구축하는 경우
  • 외부 의존성 없이 자체 호스팅 메모리를 원하는 경우
  • 벡터 검색과 그래프 검색 모두 필요한 경우
  • LangChain, LlamaIndex 또는 CrewAI를 사용하는 경우

다음과 같은 경우 건너뜁:

  • 사용자 간 클라우드 기반 메모리 공유가 필요한 경우
  • Python을 실행할 수 없는 환경에서 작업하는 경우
  • 단순 키-값 저장소만 필요한 경우

벤치마크 #

Supermemory는 오픈소스 메모리 엔진 중 가장 빠른 5ms 미만의 메모리 검색 지연 시간을 달성합니다.

성능 비교 #

|| 지표 | Supermemory | Mem0 | LangChain | |——–|————-|——|———–| | 지연 시간 | < 5ms | 15-30ms | 50-100ms | | 설정 시간 | 60초 | 5분 | 30분 | | 메모리 제한 | 100만 엔트리 | 10만 엔트리 | 1만 엔트리 | | 의존성 | 0 | 3-5 | 10+ |

출처: Supermemory 벤치마크


Python API #

import supermemory

# 메모리 초기화
m = supermemory.Memory()
m.init()

# 메타데이터와 함께 메모리 추가
m.add("User likes spicy food", tags=["diet", "preference"])
m.add("User works at Google", tags=["work", "company"])

# 의미 검색
results = m.search("dietary preferences", top_k=5)

# 그래프 검색
connected = m.get_connections("User works at Google")

# 세션 관리
session = m.create_session()
session.add("User preferences")
session.query("What does this user like?")

고급 기능 #

# 타임스탬프와 함께 메모리 추가
m.add("Meeting with John at 3pm", timestamp="2026-06-10T15:00:00")

# 메타데이터로 필터링
filtered = m.search("meeting", metadata={"tags": ["work"]})

# 메모리 업데이트
m.update("User likes spicy food", "User prefers very spicy food")

# 메모리 삭제
m.delete("Outdated memory")

# 백업 및 복원
m.backup("backup.tar.gz")
m.restore("backup.tar.gz")

Python API는 전체 CRUD 작업, 메타데이터 필터링 및 세션 관리를 제공합니다. 단순한 사용 사례와 복잡한 프로덕션 배포 모두를 위해 설계되었습니다.


Docker 프로덕션 배포 #

프로덕션 환경에서는 Docker를 사용하여 Supermemory를 배포하세요:

# Docker 이미지 빌드
docker build -t supermemory-server .

# 환경 변수로 실행
docker run -d \
  --name supermemory \
  -e SUPERMEMORY_PORT=8000 \
  -e SUPERMEMORY_HOST=0.0.0.0 \
  -v /data/supermemory:/data \
  -p 8000:8000 \
  supermemory-server

# 로그 확인
docker logs -f supermemory

# 상태 확인
curl http://localhost:8000/health

Docker 배포는 다음을 지원합니다:

  • 볼륨 마운트를 통한 지속적 데이터 저장
  • 환경 변수 구성
  • 상태 확인 엔드포인트
  • 로그 관리 및 모니터링
  • Docker Swarm 또는 Kubernetes를 통한 수평 확장

API 참조 #

Supermemory는 프로그램matic 접근을 위한 REST API를 제공합니다:

# 모든 메모리 가져오기
curl http://localhost:8000/memories

# 새 메모리 추가
curl -X POST http://localhost:8000/memories \
  -H "Content-Type: application/json" \
  -d '{"text": "User prefers dark mode", "tags": ["preference"]}'

# 메모리 검색
curl "http://localhost:8000/memories/search?q=dark+mode&limit=5"

# 메모리 삭제
curl -X DELETE http://localhost:8000/memories/{id}

API는 다음을 지원합니다:

  • 메모리에 대한 CRUD 작업
  • 벡터 검색 쿼리
  • 그래프 관계 쿼리
  • 세션 관리 엔드포인트
  • 대량进口的을 위한 배치 작업

사용 사례 #

사용 사례 1: 고객 지원 봇 #

# 고객 선호도 저장
memory.add("Customer prefers email contact", tags=["customer", "contact"])
memory.add("Customer has premium subscription", tags=["customer", "subscription"])

# 지원 쿼리에 대한 컨텍스트 검색
context = memory.search("premium features", top_k=10)

사용 사례 2: 개인화된 추천 엔진 #

# 사용자 상호작용 추적
memory.add("User clicked on Python tutorial", tags=["interaction", "python"])
memory.add("User completed SQL course", tags=["interaction", "sql"])

# 기록을 기반으로 추천 생성
recommendations = memory.search("user learning path", top_k=5)

사용 사례 3: 연구 지식 베이스 #

# 연구 메모 저장
memory.add("Paper: Attention Is All You Need", tags=["research", "transformer"])
memory.add("Experiment: BERT vs GPT on NLI", tags=["research", "experiment"])

# 발견 사항 간 참조
related = memory.get_connections("transformer models")

JavaScript API #

import { Memory } from 'supermemory';

const m = new Memory();
await m.init();

await m.add('User likes spicy food', { tags: ['diet'] });
const results = await m.search('dietary preferences', { top_k: 5 });

LangChain 통합 #

from langchain.memory import SupermemoryMemory

memory = SupermemoryMemory(
    session_id="user-123",
    return_messages=True
)

chat_history = memory.chat_memory
print(chat_history.messages)

대안과 비교 #

|| 기능 | Supermemory | Mem0 | LangChain Memory | |———|————-|——|——————| | 자체 호스팅 | ✓ | 제한적 | 해당 없음 | | 벡터 검색 | ✓ | ✓ | ✓ | | 그래프 검색 | ✓ | ✗ | ✗ | | Python API | ✓ | ✓ | ✓ | | JS API | ✓ | ✗ | ✗ | | 지연 시간 | < 5ms | 15-30ms | 50-100ms | | 의존성 | 0 | 3-5 | 10+ |

Supermemory의 이중 인덱싱 접근 방식은 의미적 쿼리와 관계 쿼리 모두를 가능하게 하여 AI 애플리케이션을 위한 가장 다목적 메모리 솔루션을 제공합니다.


한계 / 정직한 평가 #

Supermemory는 모든 사람에게 적합한 것은 아닙니다:

  • 클라우드 팀에게는 아님: 자체 호스팅은 인프라를 관리해야 함을 의미
  • Python 우선: JavaScript API가 존재하지만 Python이 주요 언어
  • 팀 공유 없음: 메모리는 앱별로 분리되어 조직 간에 공유되지 않음

이것은 외부 의존성 없이 LLM 앱에 영구 메모리를 부여하고 싶은 개인 개발자와 소규모 팀을 위해 구축되었습니다.


보안 고려사항 #

프로덕션 배포를 위해 다음을 확인하세요:

  • 모든 API 연결에 HTTPS 사용
  • API 키 또는 JWT 토큰을 통한 인증 활성화
  • 메모리 데이터를 정기적으로 백업
  • 의심스러운 활동을 감지하기 위해 접근 로그 모니터링
  • AES-256을 사용하여 정적 민감 메모리 암호화
# Let's Encrypt로 HTTPS 활성화
sudo certbot --nginx -d supermemory.yourdomain.com

# API 키 인증 구성
export SUPERMEMORY_API_KEY=*** Start with security enabled
docker run -d \
  --name supermemory \
  -e SUPERMEMORY_API_KEY=*** \
  -p 443:443 \
  supermemory-server

Supermemory는 대화 및 선호도를 포함한 민감한 데이터를 저장합니다. 프로덕션 사용 시 이러한 보안 조치를 구현하여 데이터를 보호하세요. 높은 보안 배포의 경우 정기적인 보안 감사와 침투 테스트를 권장합니다.

Q1: Supermemory는 외부 서비스가 필요합니까? #

아니요. Supermemory는 외부 의존성 없이 자체 호스팅됩니다. 모든 것은 자체 인프라에서 실행됩니다.

Q2: Supermemory를 모든 LLM 프레임워크와 함께 사용할 수 있습니까? #

네. Python 및 JavaScript API를 제공하며 LangChain, LlamaIndex, CrewAI 또는 HTTP 요청을做任何 어떤 프레임워크와 작동합니다.

Q3: 벡터 검색과 그래프 검색의 차이는 무엇입니까? #

벡터 검색은 의미적으로 유사한 메모리를 찾습니다. 그래프 검색은 관계로 연결된 메모리를 찾습니다(같은 사용자, 같은 프로젝트, 같은 기간). Supermemory는 둘 다 제공합니다.

Q4: Supermemory는 얼마나 많은 메모리를 처리할 수 있습니까? #

Supermemory는 앱 인스턴스당 최대 100만 개 엔트리를 지원합니다. 더 큰 데이터셋의 경우 여러 인스턴스에 수평으로 확장할 수 있습니다.

Q5: 프로덕션에서 Supermemory를 사용할 수 있습니까? #

네. Supermemory는 Docker 배포 옵션을 포함하며 프로덕션 사용을 위해 설계되었습니다. 자체 호스팅 아키텍처를 통해 인프라를 관리할 수 있습니다.

Q6: Supermemory는 데이터 프라이버시를 어떻게 처리합니까? #

모든 데이터는 귀하의 인프라에 보관됩니다. 외부 API가 호출되지 않습니다. 표준 TLS를 사용하여 정적 및 전송 중 데이터를 암호화할 수 있습니다.

Q7: 다른 메모리 시스템에서 데이터를 마이그레이션할 수 있습니까? #

네. Supermemory는 CSV, JSON 및 사용자 정의 데이터 형식을 통한 대량进口을 지원합니다. 일반적인 시스템에 대한 마이그레이션 스크립트가 제공됩니다.


출처 및 추가 읽기 #


결론: 실제로 기억하는 LLM 앱 구축하기 #

Supermemory는 “금붕어 LLM 앱” 문제를 해결합니다. 메모리를 구조화된 데이터로 저장하고, 벡터 및 그래프 검색을 위해 인덱싱하며, 구조화된 컨텍스트를 반환합니다 — 외부 의존성 없이 자체 호스팅됩니다.

지금 사용해 보세요:

pip install supermemory
python -c "import supermemory; m = supermemory.Memory(); m.init()"

VPS에서 자체 호스팅 메모리를 위해 합리적인 GPU 호스팅 HTStack이나 간편한 클라우드 배포를 위한 DigitalOcean을 고려하세요.

빠른 시작 명령어:

# 원라인 설정
pip install supermemory && python -c "
import supermemory
m = supermemory.Memory()
m.init()
m.add('Test memory')
print('Supermemory initialized!')
print(m.search('test'))
"

이 명령은 Supermemory 초기화, 테스트 메모리 추가 및 검색을 한 번의 명령으로 수행하는 방법을 보여줍니다. 자신의 LLM 애플리케이션을 빠르게 시작하는 데 완벽합니다.

Supermemory는 사용자가 말한 모든 것을 실제로 기억하는 영구 메모리를 제공하여 “금붕어 LLM 앱” 문제를 해결합니다. 100만+ 엔트리, 50개 이상 언어, 3개 이상 검색 모드(벡터, 그래프, 전체 텍스트)를 지원하여 AI 애플리케이션을 위한 가장 확장 가능한 메모리 솔루션입니다.

AI 메모리 시스템 및 LLM 앱 아키텍처에 대한 논의는 dibi8 한국어 Telegram 그룹 에 참여하세요.

관련 글:

위 링크 중 일부는 제휴 링크입니다. dibi8.com은 귀하가 가입할 경우 수수료로 수익을 올릴 수 있으며, 이는 귀하에게 추가 비용이 없습니다. 사이트 운영과 콘텐츠 무료 제공을 돕습니다.

💬 댓글 토론