Agents et multi-agents

Graphiti: Build Temporal Context Graphs for AI Agents

getzep/graphiti

Graphiti is an open-source Python framework by Zep for building and querying temporal context graphs. It autonomously transforms structured and unstructured data into a dynamic knowledge graph that tracks fact validity over time, preserving provenance and enabling hybrid retrieval for AI agents.

★ 29,5KÉtoiles
⑂ 3KForks
453Problèmes ouverts
PythonLangue
Apache-2.0Licence
Q@project.QualityScoreScore éditorial

Captures d'écran du projet

Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents Capture d’écran de Graphiti: Build Temporal Context Graphs for AI Agents

Vue d’ensemble

Graphiti functions as a temporal context graph engine designed to overcome the limitations of static, batch-oriented RAG systems. It continuously integrates user interactions and enterprise data into a queryable graph without requiring full recomputation. The core innovation is its bi-temporal tracking: facts are assigned validity windows and automatically invalidated—rather than deleted—when new information supersedes them. The graph consists of entities (nodes with evolving summaries), facts/relationships (edges with temporal validity), episodes (raw data provenance), and custom types (ontology defined via Pydantic models). It supports incremental updates and hybrid retrieval combining semantic search, BM25 keyword search, and graph traversal.

Fonctionnalités clés

  • Temporal fact management with bi-temporal validity windows
  • Episodes and provenance tracking from derived facts to raw source data
  • Prescribed and learned ontology support via Pydantic models
  • Incremental graph construction without batch recomputation
  • Hybrid retrieval combining semantic, keyword (BM25), and graph traversal
  • Automatic fact invalidation preserving full temporal history
  • Pluggable graph database backends
  • Model Context Protocol (MCP) server for AI assistant integration

Prérequis, installation et démarrage rapide

Install the core package using pip (`pip install graphiti-core`) or uv (`uv add graphiti-core`). Backend-specific extras are available: `pip install graphiti-core[falkordb]`, `pip install graphiti-core[neptune]`, or `pip install graphiti-core[kuzu]` (deprecated). LLM provider extras can be installed similarly, e.g., `pip install graphiti-core[anthropic,google-genai]`. An embedded FalkorDB option (`graphiti-core[falkordblite]`) requires Python 3.12+.

Utilisation

Initialize a database driver (e.g., Neo4jDriver or FalkorDriver) and pass it to the Graphiti constructor. Add episodes (text or JSON) to the graph, then search for relationships or nodes using hybrid search and predefined search recipes. A Quickstart Example is available in the `examples/quickstart/` directory. Graphiti can also be run via Docker Compose, accessed through a FastAPI REST service in the `server` directory, or integrated into AI assistants via the MCP server in the `mcp_server` directory.

Compatibilité des modèles et cas d’usage

Defaults to OpenAI for LLM inference and embedding. Supports Anthropic, Google Gemini, and Groq via extras. Compatible with any OpenAI-compatible `/v1` endpoint (including DeepSeek, Together, OpenRouter, Ollama, vLLM, llama.cpp, LM Studio) using `OpenAIGenericClient`. Supports Azure OpenAI via its v1 API compatibility layer. Smaller models lacking robust Structured Output support may cause incorrect schemas and ingestion failures.

Licence et notes sur les risques

Licensed under the Apache-2.0 license.

Editorial verification 2026-08-09: repository URL, owner, description, license and repository statistics were reviewed. License metadata: Apache-2.0. README was fetched for the channel draft; re-check repository dependencies, releases and model terms before production use.

Publication et maintenance

As of v0.17.0, users can instantiate a custom database driver and pass it to the Graphiti constructor using the `graph_driver` parameter. The Kuzu backend is deprecated due to the upstream project no longer being maintained.

Firecrawl

firecrawl/firecrawl

★ 161,1KTypeScript

LangChain

langchain-ai/langchain

★ 143,6KPython

RAGFlow

infiniflow/ragflow

★ 86,7KGo