ModernRelay/omnigraph

Object-storage native graph database with branching and typed ontology

Omnigraph – AI 에이전트를 위해 구축된 그래프 데이터베이스

개요

Omnigraph는 객체 스토리지 네이티브 그래프 데이터베이스로, 데이터를 오픈소스 Lance 컬럼 형식으로 저장합니다. 최신 LLM 기반 시스템에 필요한 장기 실행, 다중 에이전트 워크로드를 위해 설계되었습니다. 공유된 타입화된 세계 모델을 그래프 탐색, 벡터 유사성, 전체 텍스트 검색을 단일 요청으로 쿼리할 수 있습니다.

핵심 아이디어

아이디어 AI/LLM 워크로드에 중요한 이유
타입화된 온톨로지 스키마(.pg 파일)가 노드/엣지 유형, 키, 제약 조건을 정의합니다. 에이전트는 단일하고 강제된 도메인 모델에 의존할 수 있어 "환각" 또는 잘못된 데이터를 줄입니다.
다중 모드 검색 단일 쿼리로 그래프 홉, ANN 벡터 검색, BM25 텍스트 검색, 순위 융합을 결합하여 에이전트가 가장 관련성 높은 컨텍스트를 한 번에 가져올 수 있습니다.
브랜칭 및 버전 관리 각 에이전트 또는 작업은 자체 브랜치에서 작업하고, 검토를 제출하고, 병합할 수 있습니다. 전체 그래프는 시간 여행이 가능하여 감사, 재현성, "에이전트 메모리"에 유용합니다.
인프라스트럭처 애즈 코드 cluster.yaml이 그래프, 스키마, 저장된 쿼리, 임베딩 제공자, 보안 정책을 선언합니다. cluster plan / cluster apply 같은 명령은 Terraform처럼 동작하여 예측 가능하고 반복 가능한 배포 흐름을 제공합니다.
보안 애즈 코드 Cedar 정책은 데이터와 함께 저장되고 모든 변경에서 강제되며, 베어러 토큰 인증 및 감사 추적을 제공합니다.
객체 스토리지 네이티브 데이터는 S3 호환 스토어(AWS S3, MinIO, Cloudflare R2, GCS, Azure Blob 미리보기) 또는 온프레미스 RustFS에 저장됩니다. Lance는 컬럼 기반의 버전 관리 형식이므로 스토리지 비용이 낮게 유지되고 시스템이 수평 확장될 수 있습니다.

일반적인 사용 사례

  • 회사 브레인 – 모든 내부 에이전트가 쿼리할 수 있는 단일 지식 그래프.
  • 에이전트 메모리 – 각 자율 에이전트의 지속적이고 브랜치 기반 메모리.
  • 컨텍스트 그래프 – 의사 결정 추적 및 암묵 지식을 검색용으로 캡처.
  • 개발 그래프 – 코딩 에이전트가 읽고 쓰는 문제, 종속성, 코드 아티팩트를 모델링.
  • R&D / ML 데이터 레이어 – 훈련 파이프라인에 직접 공급할 수 있는 버전 관리된 실험 데이터.

상호 작용 방법

도구 기능
omnigraph(CLI) 클러스터 생성/검증, 저장된 쿼리 실행, 데이터 변경, 브랜치 관리.
omnigraph-server REST/OpenAPI 인터페이스를 노출하는 HTTP 서버; 각 그래프는 /graphs/{id}/…에서 접근 가능.
TypeScript SDK(@modernrelay/omnigraph) Node/TS 애플리케이션용 타입화된 클라이언트 라이브러리.
MCP 서버(@modernrelay/omnigraph-mcp) LLM 호스트(Claude, Codex 등)가 간단한 프로토콜로 Omnigraph를 호출할 수 있게 하는 브리지.
Python SDK(계획 중) 향후 Python에서 타입화된 접근.

빠른 시작(README에서)

# CLI 및 서버 설치
curl -fsSL https://raw.githubusercontent.com/ModernRelay/omnigraph/main/scripts/install.sh | bash
# 또는 Homebrew를 통해
brew tap ModernRelay/tap && brew install ModernRelay/tap/omnigraph

# 클러스터 디렉토리 선언
mkdir -p company-brain && cd company-brain
cat > cluster.yaml <<'EOF'
version: 1
metadata:
  name: company-brain
storage: s3://my-bucket/company-brain
graphs:
  knowledge:
    schema: people.pg
    queries: queries/
policies:
  base:
    file: base.policy.yaml
    applies_to: [knowledge]
EOF

# 검증, 계획, 적용
omnigraph cluster validate
omnigraph cluster plan
omnigraph cluster apply

# 서버 시작
omnigraph-server --cluster . --bind 0.0.0.0:8080

그런 다음 쿼리 또는 변경을 실행할 수 있습니다. 예:

omnigraph query search_docs --params '{"q":"AI safety"}'
omnigraph mutate add_person --params '{"name":"Mina"}'

브랜칭도 유사하게 작동합니다:

omnigraph branch create --from main agent/ingest-42
omnigraph branch merge agent/ingest-42 --into main

보안 모델

  • 모든 쓰기는 클러스터에 정의된 Cedar 정책 번들을 통과합니다.
  • 베어러 토큰은 시작 시 해시됩니다. 서버는 액터 ID를 해석하여 클라이언트의 스푸핑을 방지합니다.
  • 정책은 그래프별, 브랜치별 또는 서버 전체로 범위를 지정할 수 있어 세밀한 거버넌스를 제공합니다.

누가 사용할 수 있나요?

  • 공유된 버전 관리 세계 모델이 필요한 자율 AI 어시스턴트를 구축하는 팀.
  • LLM 증강 검색을 위해 벡터 검색으로 쿼리할 수 있는 중앙 지식 그래프를 원하는 기업.
  • 그래프 또는 벡터 쿼리로 접근할 수 있는 실험 메타데이터용 저비용 버전 관리 데이터 레이크가 필요한 연구자.

다음 단계

  • cookbooks 저장소에서 기성 도메인 그래프(회사 브레인, VC 운영, 제약 인텔리전스)를 탐색하세요.
  • 프로덕션급 설정(Kubernetes, AWS, Azure 등)을 위한 자세한 클러스터 가이드 및 배포 가이드를 읽으세요.
  • 지원 및 로드맵 논의를 위해 Omnigraph Slack 커뮤니티에 참여하세요.

위의 모든 정보는 프로젝트 README에서 직접 가져온 것입니다. 추가 기능은 추론되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트