nowfound

AI · September 4, 2024

GL

Graphiti – LLM-Powered Temporal Knowledge Graphs

Hey HN! We're Paul, Preston, and Daniel from Zep. We've just open-sourced Graphiti, a Python library for building temporal Knowledge Graphs using LLMs. Graphiti helps you create and query graphs that evolve over time. Knowledge Graphs have been explored extensively for information retrieval. What makes Graphiti unique is its ability to build a knowledge graph while handling changing relationships and maintaining historical context. At Zep, we build a memory layer for LLM applications. Developers use Zep to recall relevant user information from past conversations without including the entire…

Visit github.comAlternativestop 23% of September 2024

In plain words

Graphiti is a Python library for building temporal knowledge graphs with large language models. It creates and queries graphs that evolve over time, tracking changing relationships while preserving historical context. Designed for developers building LLM applications, Graphiti helps maintain accurate user information and conversation context without requiring entire chat histories in prompts. The open-source tool addresses the need for AI systems to remember past information accurately and understand event chronology.

written from the facts on this page · September 2026

From the sources

In the maker’s words, at launch

Hey HN! We're Paul, Preston, and Daniel from Zep. We've just open-sourced Graphiti, a Python library for building temporal Knowledge Graphs using LLMs. Graphiti helps you create and query graphs that evolve over time. Knowledge Graphs have been explored extensively for information retrieval. What makes Graphiti unique is its ability to build a knowledge graph while handling changing relationships and maintaining historical context. At Zep, we build a memory layer for LLM applications. Developers use Zep to recall relevant user information from past conversations without including the entire chat history in a prompt. Accurate context is crucial for LLM applications. If an AI agent doesn't remember that you've changed jobs or confuses the chronology of events, its responses can be jarring or irrelevant, or worse, inaccurate. Before Graphiti, our approach to storing and retrieving user “memory” was, in effect, a specialized RAG pipeline. An LLM extracted “facts” from a user’s chat history. Semantic search, reranking, and other techniques then surfaced facts relevant to the current conversation back to a developer for inclusion in their prompt. We attempted to reconcile how new information may change our understanding of existing facts: Fact: “Kendra loves Adidas shoes” User message: “I’m so angry! My favorite Adidas shoes fell apart! Puma’s are my new favorite shoes!” Facts: - “Kendra used to love Adidas shoes but now prefers Puma.” - “Kendra’s Adidas shoes fell apart.” Unfortunately, this approach became problematic. Reconciling facts from increasingly complex conversations challenged even frontier LLMs such as gpt-4o. We saw incomplete facts, poor recall, and hallucinations. Our RAG search also failed at times to capture the nuanced relationships between facts, leading to irrelevant or contradictory information being retrieved. We tried fixing these issues with prompt optimization but saw diminishing returns on effort. We realized that a graph would help model a user’s complex world, potentially addressing these challenges. We were intrigued by Microsoft’s GraphRAG, which expanded on RAG text chunking with a graph to better model a document corpus. However, it didn't solve our core problem: GraphRAG is designed for static documents and doesn't natively handle temporality. So, we built Graphiti, which is designed from the ground up to handle constantly changing information, hybrid semantic and graph search, and scale: - Temporal Awareness: Tracks changes in facts and relationships over time. Graph edges include temporal metadata to record relationship lifecycles. - Episodic Processing: Ingests data as discrete episodes, maintaining data provenance and enabling incremental processing. - Hybrid Search: Semantic and BM25 full-text search, with the ability to rerank results by distance from a central node. - Scalable: Designed for large datasets, parallelizing LLM calls for batch processing while preserving event chronology. - Varied Sources: Ingests both unstructured text and structured data. Graphiti has significantly improved our ability to maintain accurate user context. It does a far better job of fact reconciliation over long, complex conversations. Node distance reranking, which places a user at the center of the graph, has also been a valuable tool. Quantitative data evaluation results may be a future ShowHN. Work is ongoing, including: 1. Improving support for faster and cheaper small language models. 2. Exploring fine-tuning to improve accuracy and reduce latency. 3. Adding new querying capabilities, including search over neighborhood (sub-graph) summaries. ## Getting Started Graphiti is open source and available on GitHub: https://github.com/getzep/graphiti. We'd love to hear your thoughts. Please also consider contributing!

More ai this month

the category →
  • I trained a 125M-parameter transformer to autocomplete piano performances in real time (~108 notes/sec on an iPhone 15). The idea is basically GitHub Copilot or Tabnine, except instead of prompting it with code, you prompt it by playing a few notes on a MIDI piano. The model then continues what you played, entirely on-device. The app is free if anyone wants to try it. Happy to answer questions about the model, training, Core ML, or the many things that didn't work.

    AI · 17d ago · simedw.com

  • Astute585

    Automate your B2B brand going viral, with new media creators

    AI · 18d ago · company-app.joinastute.com

  • Grok Bot547

    AI teammates that you can give real work to

    AI · 25d ago · x.ai

  • Hey HN, Henry from Cactus here! We previously released Cactus Needle, a 14MB agentic LLM for tool call, device use, and structured extraction for phones, wearables, smart homes, small robots and microcontrollers. We got really great feedback here, and have now incorporated the suggestions to release Needle 2. The whole model is a single 14MB binary that runs a full session in 28MB of RAM; 45m parameters at 2bit compression. Needle hits 500 tokens/sec decode speed on a Raspberry Pi 5, sits between 400-1,500 tokens/sec on VR devices like Meta Quest 3S and Apple Vision Pro, and ranges…

    AI · 26d ago · cactuscompute.com

  • Make your software self-driving

    AI · 30d ago · coldtea.ai

  • Soloop472

    Approval-first Agent OS for solo founders

    AI · 30d ago · soloop.io

Launched alongside, September 2024

the whole month →
  • Wispr Flow2,737

    Speak naturally, write perfectly & 3x faster in every app

    AI · 2024 · wisprflow.ai

  • Pathway1,335

    Get user insights 10x faster

    Work · 2024 · wynde.io

  • Personalized AI daily planning that suits your life

    AI · 2024 · beforesunset.ai

  • Osmos1,194

    Match with like-minded professionals for 1:1 conversations

    Growth · 2024

  • Polar1,169

    An open source monetization platform for developers

    Dev tools · 2024 · polar.sh

  • Carrot Care1,167

    Understand & optimise your bloodwork

    Life & fun · 2024 · carrotcare.health