What is Graphiti?
インテリジェントなAIエージェントを構築する上で、常に変化する情報への対応は大きな課題です。従来の手法では、新しいデータを円滑に統合したり、過去の文脈を正確に理解したりする能力が不足しており、対応が難しいことがよくあります。Graphitiは、時間とともに進化するナレッジグラフを構築し、クエリを実行するために特別に設計された堅牢なフレームワークを提供し、AIエージェントが動的な環境で効果的に動作するために必要な文脈的記憶を提供します。
Retrieval-Augmented Generation (RAG)で一般的な静的なスナップショットや定期的なバッチ処理に頼る代わりに、Graphitiはユーザーのインタラクション、構造化されたエンタープライズデータ、および非構造化された情報を、一貫性のある時間認識型のナレッジグラフに継続的に織り込みます。これにより、アプリケーションは何が知られているかだけでなく、いつそれが真実であったかを理解し、より高度な推論とインタラクションを可能にします。Graphitiは、Zepのコアメモリーレイヤーを強化し、エージェントメモリーベンチマークにおける最先端のパフォーマンスに貢献しています。
主な機能
Graphitiは、動的なデータとAIエージェント向けに調整されたいくつかの機能を提供します。
📈 リアルタイムの増分アップデート: コストのかかる完全な再計算を必要とせずに、新しい情報(エピソード)をグラフに即座に統合します。これにより、エージェントの知識を最小限の遅延で最新の状態に保ちます。
⏱️ 二時制データモデル: イベントが発生した時間(有効時間)と記録された時間(トランザクション時間)の両方を明示的に追跡します。これにより、正確な「特定の時点」クエリが可能になり、過去の特定の瞬間に何が知られていたかを尋ねることができます。
🔍 効率的なハイブリッド検索: セマンティック(埋め込みベース)、キーワード(BM25)、およびグラフ走査検索の方法を組み合わせます。この多角的なアプローチにより、検索のために低速なLLM要約のみに頼ることなく、関連性の高い結果を多くの場合、1秒未満の時間枠で迅速に提供します。
🧩 カスタムエンティティ定義: シンプルなPydanticモデルを使用して、独自のエンティティタイプを定義します。この柔軟性により、ナレッジグラフの構造(オントロジー)を特定のドメインおよびアプリケーションのニーズに合わせて調整できます。
⚙️ スケーラビリティ: 大規模なデータセットでの効率性を考慮して設計されており、エンタープライズレベルのワークロードを処理するために、並列処理機能(サポートされている場合)を利用します。
ユースケース
洗練されたチャットボットの開発: ユーザーの好みや会話の履歴を正確に記憶するチャットボットを、詳細が複数のインタラクションで変化しても構築できます。Graphitiは、「ユーザーは製品Xを気に入った」や、後で「ユーザーは製品Xを嫌った」のような進化する関係を追跡し、時間に基づいて正しい状態を理解できます。
コンテキストを認識したタスク自動化エージェントの作成: 動的なビジネスデータに基づいて動作するエージェントを設計します。たとえば、エージェントは、リアルタイムの運用データで継続的に更新されるGraphitiナレッジグラフをクエリすることで、在庫レベルの管理、カスタマーサポートチケットのステータスの追跡、またはプロジェクトの進捗状況の監視を行うことができます。
インテリジェントな情報統合ツールの構築: 多様で変化するソース(ニュースフィード、レポート、ユーザー入力など)から情報を統合するアプリケーションを構築します。Graphitiは、一貫性のある知識ベースを維持し、ユーザーが合成された情報をクエリしながら、事実が有効であった過去のタイムラインを尊重できるようにします(例:「合併前のY社のCEOは誰でしたか?」)。
Graphitiの始め方
Graphitiを統合するには、ライブラリの設定、Neo4jデータベース(グラフデータと埋め込みの保存に使用)への接続、および埋め込み生成とオプションのLLM推論のためにOpenAI互換のAPIキーの提供が必要です。





