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 はカラムナーでバージョン管理された形式のため、ストレージコストは低く抑えられ、システムは水平方向にスケールできます。

典型的なユースケース

  • カンパニーブレイン – すべての内部エージェントがクエリできる単一の知識グラフ。
  • エージェントメモリ – 各自律エージェントの永続的でブランチベースのメモリ。
  • コンテキストグラフ – 意思決定のトレースと暗黙知を取得用にキャプチャ。
  • 開発グラフ – コーディングエージェントが読み書きする問題、依存関係、コード成果物をモデル化。
  • 研究開発 / 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 から直接取得したものです。追加の機能は推測されていません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト