topoteretes/cognee

Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.

GitHub에서 열기 ↗ agent-memoryagent-skillsaiai-agentsai-memorycognitive-architecturecognitive-memorycontext-engineeringcontributions-welcomegood-first-issuegood-first-prgraph-databasegraph-raghelp-wantedknowledgeknowledge-graphmemory-managementopen-sourcevector-database
27,523
GitHub 스타
2,724
포크
Python
언어
Apache-2.0
라이선스
2026.07.10
최근 푸시
2026.04.21
별표한 날

AI 분석

설치 난이도: 보통
큐레이터 노트
에이전트 기반 시스템에 지속적인 메모리와 지식 그래프를 통합하려는 프로젝트에 적합합니다. 특히 다중 세션 컨텍스트 유지가 중요한 AI 에이전트 개발에 유용합니다.

강점

  • 에이전트를 위한 지속적인 장기 메모리와 지식 그래프를 제공하여 컨텍스트 유지에 강점을 가집니다.
  • 다양한 데이터 형식과 LLM 제공자를 지원하며, 로컬 및 클라우드 배포가 모두 가능합니다.
  • Claude Code 플러그인, TypeScript/Rust 클라이언트 등 다양한 통합을 제공합니다.

약점

  • 문서에서 성능 벤치마크나 대규모 데이터셋에서의 확장성에 대한 구체적인 정보가 부족합니다.
  • 설치 및 구성이 다소 복잡할 수 있으며, Docker 및 여러 프로필 설정이 필요할 수 있습니다.

주의사항

  • MCP 서버는 Docker 컨테이너에서 실행되므로 Docker 환경이 필수입니다.
  • LLM_API_KEY 등 환경 변수 설정이 필요하며, .env 파일을 올바르게 구성해야 합니다.
  • 세션 메모리와 영구 메모리 간 동기화 동작을 이해하고 사용해야 합니다.

시작 가이드

  • 공식 문서(docs.cognee.ai)를 참고하여 상세 설정 및 환경 구성을 확인합니다.
  • 제공된 Colab 예제를 실행하여 핵심 기능을 체험해 봅니다.
  • Claude Code 플러그인을 설치하여 실제 에이전트 워크플로우에 통합해 봅니다.

README 한국어 번역

이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.

Cognee는 AI 에이전트를 위한 오픈소스 AI 메모리 플랫폼입니다. 모든 형식의 데이터를 수집하여 자체 호스팅 지식 그래프를 구축하고, 에이전트가 세션 간에 지속적인 장기 메모리를 유지할 수 있도록 합니다. 벡터 임베딩, 그래프 추론, 인지 과학 기반 온톨로지 생성을 결합하여 문서를 의미로 검색 가능하게 하고 지식이 발전함에 따라 관계가 연결되도록 합니다.

주요 기능

  • 회사 두뇌 구축: 다양한 소스의 데이터를 통합하고 에이전트에 도메인 지식을 제공합니다.
  • 지식 인프라: 통합 수집, 그래프/벡터 검색, 로컬 실행, 온톨로지 기반, 멀티모달 지원.
  • 지속적이고 학습하는 에이전트: 피드백 학습, 컨텍스트 관리, 에이전트 간 지식 공유.
  • 신뢰할 수 있는 에이전트: 사용자/테넌트 격리, 추적 가능성, OTEL 수집기, 감사 특성.

빠른 시작

사전 요구사항

  • Python 3.10 ~ 3.14

1단계: Cognee 설치

uv pip install cognee

2단계: LLM 구성

import os
os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY"

또는 .env 파일을 생성합니다.

3단계: 파이프라인 실행

Cognee API는 remember, recall, forget, improve 네 가지 연산을 제공합니다.

import cognee
import asyncio

async def main():
    # 지식 그래프에 영구 저장
    await cognee.remember("Cognee turns documents into AI memory.")

    # 세션 메모리에 저장 (빠른 캐시, 백그라운드에서 그래프와 동기화)
    await cognee.remember("User prefers detailed explanations.", session_id="chat_1")

    # 자동 라우팅으로 쿼리
    results = await cognee.recall("What does Cognee do?")
    for result in results:
        print(result)

    # 세션 메모리 우선 쿼리, 필요시 그래프로 폴스루
    results = await cognee.recall("What does the user prefer?", session_id="chat_1")
    for result in results:
        print(result)

    # 삭제
    await cognee.forget(dataset="main_dataset")

if __name__ == '__main__':
    asyncio.run(main())

CLI 사용

cognee-cli remember "Cognee turns documents into AI memory."
cognee-cli recall "What does Cognee do?"
cognee-cli forget --all

로컬 UI를 열려면:

cognee-cli -ui

참고: MCP 서버는 Docker 컨테이너 내에서 실행됩니다. Docker Desktop, Colima 또는 OCI 호환 런타임이 필요합니다.

Docker로 실행

옵션 A — Docker Compose (소스에서 빌드)

cp.env.template.env   #.env 편집 후 LLM_API_KEY 설정

# API 서버 시작 (http://localhost:8000)
docker compose up

# 선택적 프로필:
docker compose --profile ui up        # + 프론트엔드 http://localhost:3000
docker compose --profile mcp up       # + MCP 서버 http://localhost:8001
docker compose --profile postgres up  # + Postgres/PGVector
docker compose --profile neo4j up     # + Neo4j

옵션 B — 사전 빌드된 이미지 사용 (클론 불필요)

echo 'LLM_API_KEY="YOUR_OPENAI_API_KEY"' >.env

# API 서버
docker run --env-file./.env -p 8000:8000 --rm -it cognee/cognee:main

# MCP 서버 (HTTP 전송)
docker pull cognee/cognee-mcp:main
docker run -e TRANSPORT_MODE=http --env-file./.env -p 8000:8000 --rm -it cognee/cognee-mcp:main

AI 에이전트와 함께 사용

Claude Code

Cognee 메모리 플러그인을 설치하여 Claude Code에 지속적인 메모리를 제공합니다.

설치:

claude plugin marketplace add topoteretes/cognee-integrations
claude plugin install cognee-memory@cognee

# 로컬 모드
export LLM_API_KEY="sk-..."
claude

Cognee Cloud 또는 원격 서버:

export COGNEE_BASE_URL="https://your-instance.cognee.ai"
export COGNEE_API_KEY="ck_..."

Cognee Cloud 연결

import cognee

await cognee.serve(url="https://your-instance.cognee.ai", api_key="ck_...")
await cognee.remember("important context")
results = await cognee.recall("what happened?")
await cognee.disconnect()

예제

examples/ 폴더에서 더 많은 예제를 확인하세요.

  • 목표: 재무, 지원, 제품 이력 데이터를 사용하여 고객 문제 해결.
  • Cognee가 추적: 과거 상호작용, 실패한 작업, 해결된 사례, 제품 이력.

사용 사례 1 — 고객 지원 에이전트

  • 목표: 주니어 분석가가 전문가 수준의 쿼리와 패턴을 재사용하여 작업을 해결하도록 지원.

사용 사례 2 — 전문가 지식 증류 (SQL Copilot)

연구 논문

Optimizing the Interface Between Knowledge Graphs and LLMs for Complex Reasoning — Markovic et al., 2025

원본 저장소: topoteretes/cognee

라이선스: Apache-2.0

게재 제외를 원하시면 삭제 요청을 보내주세요.