neo4j-labs/create-context-graph
AI agents with graph based reasoning memory, scaffolded in seconds
Create Context Graph란 무엇인가?
Create Context Graph는 완전한 도메인 특화 "지식 그래프 기반" AI 애플리케이션을 스캐폴딩하는 명령줄 마법사입니다. 도구에 다음을 알려주면 됩니다:
- 관심 있는 산업(헬스케어, 금융, 야생동물 관리 등),
- 사용하려는 LLM 에이전트 프레임워크(예: Strands, PydanticAI, LangGraph, Claude SDK),
- 호스팅 메모리 서비스(NAMS) 또는 자체 호스팅 Neo4j 인스턴스 중 선택.
CLI는 즉시 실행 가능한 풀스택 프로젝트를 생성합니다:
- Neo4j 그래프(또는 Neo4j 기반 NAMS)에 대화 컨텍스트를 저장하는 LLM 에이전트가 포함된 FastAPI 백엔드.
- 채팅 창, 대화형 그래프 뷰, 문서 브라우저 및 결정 추적 뷰어를 표시하는 Next.js + Chakra UI 프론트엔드.
- 선택한 도메인에 대한 Neo4j 스키마 및 선택적 데모 데이터.
- SaaS 도구(GitHub, Slack, Notion 등)의 실제 데이터를 그래프로 가져오는 선택적 커넥터.
이 모든 것이 몇 분 안에 생성되어 LLM 대화에서 추출한 엔터티를 저장하고 문서, 도구 및 결정에 연결하는 그래프인 "컨텍스트 그래프"를 실험할 수 있습니다.
누가 사용할까요?
| 대상 | 도움이 되는 이유 |
|---|---|
| 도메인 특화 AI 어시스턴트(예: 의료 기록 챗봇)를 구축하는 제품 팀 | 백엔드, 프론트엔드, Neo4j 스키마 및 데이터 가져오기를 포함한 전체 스택의 원클릭 스캐폴딩. |
| 기존 SaaS 데이터에서 LLM 기반 엔터티 추출을 시도하려는 데이터 엔지니어 / 지식 그래프 전문가 | 내장 커넥터가 GitHub, Slack, Notion, Linear 등에서 데이터를 가져와 자동으로 그래프에 매핑합니다. |
| 그래프 증강 LLM 에이전트를 탐구하는 연구자 / 학생 | 준비된 데모 도메인과 합성 데이터를 통해 인프라 연결 대신 에이전트 로직에 집중할 수 있습니다. |
| "에이전트 메모리"의 참조 구현을 찾는 Neo4j 고객 | Neo4j, LiteLLM 및 다양한 에이전트 SDK를 프로덕션 스타일 FastAPI 서비스에서 결합하는 방법을 보여줍니다. |
어떻게 작동하나요?
- 마법사 –
create-context-graph가 몇 가지 프롬프트(도메인, 프레임워크, 메모리 백엔드, 데모 데이터, 커넥터)를 묻습니다. 플래그를 사용하여 비대화형으로 실행할 수도 있습니다. - 도메인 온톨로지 – 엔터티 유형, 관계 및 도구 정의를 설명하는 YAML 파일이 선택(또는 자유 텍스트 설명에서 생성)됩니다. 이 파일이 코드 생성을 주도합니다.
- 템플릿 렌더링 – Jinja2 템플릿이 온톨로지를 다음으로 변환합니다:
- Neo4j 스키마(
schema.cypher) - FastAPI API용 Pydantic 모델
- 에이전트별 도구 래퍼
- 그래프를 시각화하는 프론트엔드 컴포넌트.
- Neo4j 스키마(
- 메모리 계층 – 생성된 백엔드는 neo4j-agent-memory 라이브러리(v0.4)를 연결합니다. 다음과 통신할 수 있습니다:
- NAMS – 호스팅 Neo4j 기반 메모리 서비스(기본값). NAMS API 키만 필요합니다.
- 자체 호스팅 Neo4j – 로컬 또는 Aura 인스턴스에 대한 bolt 연결로 전체 Cypher, GDS 및 관계 지원을 제공합니다.
- LLM 통합 – 에이전트는 LiteLLM 호환 공급자 문자열을 사용하므로 Anthropic, OpenAI, Bedrock, Ollama 등을 연결할 수 있습니다. 엔터티 추출은 기본적으로 Claude-haiku 또는 GPT-4o-mini를 사용합니다.
- 프론트엔드 – Next.js 앱이 다음을 표시합니다:
- 스트리밍 채팅(Server-Sent Events)
- 실시간 도구 호출 시각화
- 대화형 그래프 뷰(노드 확장, 드래그/줌, 속성 패널)
- 문서 브라우저 및 에이전트 추론 단계용 추적 뷰어.
- 데이터 가져오기 – 커넥터를 선택한 경우 스캐폴드에는 선택한 SaaS 서비스에서 Neo4j로 데이터를 가져오는 스크립트(
import_data.py)와make import대상이 포함됩니다.
생성된 프로젝트 내부 구성
my-app/
├─ backend/ # FastAPI 서비스
│ ├─ app/main.py # 진입점
│ ├─ app/agent.py # LLM 에이전트(프레임워크별)
│ ├─ app/memory.py # Neo4j 또는 NAMS 메모리 통합
│ ├─ app/context_graph_client.py # Neo4j용 CRUD 헬퍼
│ ├─ app/gds_client.py # 선택적 Graph Data Science 호출
│ └─ connectors/ # SaaS 가져오기 코드(선택 시)
├─ frontend/ # Next.js + Chakra UI UI
│ ├─ components/ChatInterface.tsx # 스트리밍 채팅 UI
│ ├─ components/ContextGraphView.tsx # 대화형 그래프
│ └─ …
├─ data/ontology.yaml # 생성에 사용된 도메인 정의
├─ data/fixtures.json # 합성 데모 엔터티(--demo 시)
├─ cypher/schema.cypher # 제약 조건 및 인덱스
├─ docker-compose.yml # 자체 호스팅 모드용 선택적 Neo4j 컨테이너
├─ Makefile # install, start, seed, import, test …
└─ README.md # 프로젝트별 문서
호스팅 vs 자체 호스팅 메모리 선택 시기
| 기능 | NAMS(호스팅) | 자체 호스팅 Neo4j |
|---|---|---|
| 설정 | Neo4j 설치 불필요, API 키만 필요 | Docker/Aura 실행, bolt URL 구성 |
| 쓰기 기능 | 엔터티 생성만 가능; 관계는 description 내부에 마크다운 블록으로 저장 |
전체 Cypher 쓰기, 네이티브 엣지, GDS 알고리즘 |
| 확장성 | 관리형 서비스, Neo4j 기반 REST API로 제한 | 클러스터 크기, 복제 등을 직접 제어 |
| 비용 | Neo4j Labs 메모리 서비스 종량제 | Neo4j 배포에 따라 다름 |
| 사용 사례 | 빠른 데모, 프로토타이핑, 개인 지식 베이스 | 복잡한 그래프 쿼리 또는 분석이 필요한 프로덕션급 앱 |
빠른 시작 예제(Python, NAMS)
uvx create-context-graph my-app \
--domain healthcare \
--framework strands \
--nams-api-key sk-nams-…
cd my-app
make install # pip install + npm install
make start # FastAPI + Next.js 실행
UI는 http://localhost:3000, API는 http://localhost:8000/docs에서 확인하세요.
제한 사항 및 주의 사항
- NAMS 백엔드는 네이티브 Neo4j 관계를 생성하거나 임의의 Cypher를 실행할 수 없습니다. 생성된 앱은 엣지를 마크다운으로 인코딩하여 이를 해결합니다.
- 일부 고급 Graph Data Science(GDS) 기능은 자체 호스팅 모드에서만 사용할 수 있습니다.
- 기본값 이외의 메모리 공급자를 사용하려면 LiteLLM 문자열과 API 키를 직접 제공해야 합니다.
- 이 프로젝트는 실험적입니다 – Neo4j Labs에서 유지 관리하지만 공식적으로 지원되지는 않습니다.
결론
Create Context Graph는 몇 가지 선택(도메인, 에이전트 프레임워크, 메모리 백엔드)을 몇 분 안에 완전한 기능의 AI 증강 그래프 애플리케이션으로 전환합니다. LLM 에이전트가 Neo4j 지식 그래프를 통해 저장하고 추론하는 방법을 처음부터 파이프라인을 작성하지 않고 탐구하려는 모든 사람에게 이상적입니다.
유용한 링크(리포지토리에서)
- 문서 사이트 – https://create-context-graph.dev/
- Neo4j-agent-memory – https://github.com/neo4j-labs/agent-memory
- 커뮤니티 도움말 – GitHub Issues, Neo4j Community Forum
- 라이선스 – 리포지토리 참조(Neo4j Labs 프로젝트의 일반적인 MIT 스타일)
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트