> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://help.getzep.com/v2/graphiti/getting-started/overview/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://help.getzep.com/_mcp/server. # Overview > Graphiti builds temporal knowledge graphs — Context Graphs — for AI agents, fusing semantic, full-text, and graph search over evolving entities, facts, and relationships. #### What is a Context Graph? Graphiti helps you create and query Context Graphs that evolve over time. A Context Graph is a temporal knowledge graph — a graph of entities, relationships, and facts, such as *“Kendra loves Adidas shoes.”* Each fact is a *“triplet”* represented by two entities, or nodes (*”Kendra”, “Adidas shoes”*), and their relationship, or edge (*”loves”*). \ Knowledge Graphs have been explored extensively for information retrieval. What makes Graphiti unique is its ability to autonomously build a Context Graph while handling changing relationships and maintaining historical context. ![graphiti intro slides](/_fern-files/zep.docs.buildwithfern.com/204428cea99ae5c2c2055235e6cab2c0b5bc5aad3d7fdfbb1e3792cf4cd9e8fb/images/graphiti-graph-intro.gif) Graphiti builds dynamic, temporally-aware knowledge graphs — Context Graphs — that represent complex, evolving relationships between entities over time. It ingests both unstructured and structured data, and the resulting graph may be queried using a fusion of time, full-text, semantic, and graph algorithm approaches. With Graphiti, you can build LLM applications such as: * Assistants that learn from user interactions, fusing personal knowledge with dynamic data from business systems like CRMs and billing platforms. * Agents that autonomously execute complex tasks, reasoning with state changes from multiple dynamic sources. Graphiti supports a wide range of applications in sales, customer service, health, finance, and more, enabling long-term recall and state-based reasoning for both assistants and agents. ## Graphiti and Zep Graphiti is the open-source temporal knowledge graph framework. Use it to build and query a single Context Graph per subject locally — entity and edge extraction, the bi-temporal model, fact invalidation, and hybrid retrieval. [Zep](https://www.getzep.com) is the unified context layer for enterprise data. Zep uses Graphiti to derive temporal graph artifacts. Zep runs a managed Context Lake on Konig, its graph database service. Use Zep when you need managed ingestion, retrieval, governance, and deployment options such as bring your own cloud (BYOC). ## Why Graphiti? We were intrigued by Microsoft’s GraphRAG, which expanded on RAG text chunking by using a graph to better model a document corpus and making this representation available via semantic and graph search techniques. However, GraphRAG did not address our core problem: It's primarily designed for static documents and doesn't inherently handle temporal aspects of data. Graphiti is designed to handle changing information and hybrid semantic and graph search: * **Temporal Awareness:** Tracks changes in facts and relationships over time, enabling point-in-time queries. Graph edges include temporal metadata to record relationship lifecycles. * **Episodic Processing:** Ingests data as discrete episodes, maintaining data provenance and allowing incremental entity and relationship extraction. * **Custom Entity Types:** Supports defining domain-specific entity types, enabling more precise knowledge representation for specialized applications. * **Hybrid Search:** Combines vector similarity, BM25 full-text, and graph traversal into a single ranked answer, with no LLM-in-the-loop reranking. Results can be reranked by distance from a central node e.g. "Kendra". * **Pluggable Backends:** Runs on Neo4j, FalkorDB, or Amazon Neptune, with LLM and embedding providers including OpenAI, Azure OpenAI, Gemini, and Anthropic. * **Parallel bulk processing:** Can parallelize LLM calls during bulk processing while preserving the chronology of events. * **Supports Varied Sources:** Can ingest both unstructured text and structured JSON data. | Aspect | GraphRAG | Graphiti | | -------------------------- | ------------------------------------- | ------------------------------------------------ | | **Primary Use** | Static document summarization | Dynamic data management | | **Data Handling** | Batch-oriented processing | Continuous, incremental updates | | **Knowledge Structure** | Entity clusters & community summaries | Episodic data, semantic entities, communities | | **Retrieval Method** | Sequential LLM summarization | Hybrid semantic, keyword, and graph-based search | | **Adaptability** | Low | High | | **Temporal Handling** | Basic timestamp tracking | Explicit bi-temporal tracking | | **Contradiction Handling** | LLM-driven summarization judgments | Temporal edge invalidation | | **Custom Entity Types** | No | Yes, customizable | Graphiti is designed for dynamic and frequently updated datasets. Its bi-temporal model supports queries about current and historical relationships. ![graphiti demo slides](/_fern-files/zep.docs.buildwithfern.com/7883b3783f6a854a04034c5a65114b3f945cfcf860cc3a0fa581c01272c3e973/images/graphiti-intro-slides-stock-2.gif) > Zep unifies business data, documents, and conversations into shared, governed context that agents can retrieve for their tasks.