Graphiti 是一个用于构建和查询时序感知知识图谱的框架,专为在动态环境中运行的 AI 代理量身定制。与传统的检索增强生成 (RAG) 方法不同,Graphiti 持续将用户交互、结构化和非结构化企业数据以及外部信息集成到一个连贯且可查询的图中。该框架支持增量数据更新、高效检索和精确的历史查询,无需完全重新计算图谱,因此非常适合开发交互式、情境感知的 AI 应用程序。

使用 Graphiti 可以:

  • 集成并维护动态用户交互和业务数据。
  • 促进代理基于状态的推理和任务自动化。
  • 使用语义、关键字和基于图形的搜索方法查询复杂、不断变化的数据。

Graphiti的主要功能

  • 动态数据整合:实时摄取结构化和非结构化数据,支持增量更新。
  • 时间感知能力:跟踪事实和关系随时间的变化,支持时间点查询。
  • 混合检索:结合语义搜索、关键词搜索和图遍历,实现低延迟查询。
  • 状态推理与自动化:支持智能体基于图谱进行任务自动化与推理。
  • 可扩展性:设计用在处理大规模数据集,支持并行化处理。
  • 自定义实体类型:支持定义特定领域的实体类型,实现更精确的知识表示。
  • 多模态搜索:支持语义、关键词及图结构的复杂查询。

Graphiti的技术原理

  • 时间感知图谱:在图边添加时间元数据记录关系的生命周期。图谱中的每个关系都有一个时间戳,能追踪从创建到结束的整个过程。
  • 事件驱动架构:基于事件驱动架构,将数据摄取为离散事件。每个事件都包含数据来源和时间戳,支持增量处理。
  • 混合检索引擎:结合语义嵌入、关键词搜索和图遍历技术,实现低延迟的复杂查询。语义嵌入基于向量空间模型理解文本内容,关键词搜索快速定位文本片段,图遍历用图结构进行关系推理。查询结果用与中心节点的距离重新排序,进一步优化查询结果的相关性。
  • 并行化处理:Graphiti支持并行化处理,能同时处理多个数据流,提高数据处理效率。

Graphiti的选择理由

传统的 RAG 方法通常依赖于批处理和静态数据汇总,这对于频繁变化的数据来说效率低下。Graphiti 通过提供以下功能解决了这些挑战:

  • 实时增量更新:立即集成新的数据事件,无需批量重新计算。
  • 双时间数据模型:明确跟踪事件发生和摄取时间,允许准确的时间点查询。
  • 高效混合检索:结合语义嵌入、关键字(BM25)和图遍历,实现低延迟查询,而无需依赖 LLM 摘要。
  • 自定义实体定义:通过简单的 Pydantic 模型灵活地创建本体并支持开发人员定义的实体。
  • 可扩展性:通过并行处理有效管理大型数据集,适用于企业环境。

Graphiti的项目地址

安装

要求:

  • Python 3.10 或更高版本
  • Neo4j 5.26 或更高版本(用作嵌入存储后端)
  • OpenAI API 密钥(用于 LLM 推理和嵌入)

重要的

Graphiti 与支持结构化输出的 LLM 服务(例如 OpenAI 和 Gemini)配合使用效果最佳。使用其他服务可能会导致输出模式不正确以及提取失败。在使用较小模型时,这尤其成问题。

选修的:

  • Google Gemini、Anthropic 或 Groq API 密钥(适用于其他 LLM 提供商)

提示

安装 Neo4j 最简单的方法是通过Neo4j Desktop。它提供了一个用户友好的界面来管理 Neo4j 实例和数据库。

pip install graphiti-core
 

或者

poetry add graphiti-core
 

您还可以安装可选的 LLM 提供程序作为附加功能:

# Install with Anthropic support
pip install graphiti-core[anthropic]

# Install with Groq support
pip install graphiti-core[groq]

# Install with Google Gemini support
pip install graphiti-core[google-genai]

# Install with multiple providers
pip install graphiti-core[anthropic,groq,google-genai]
 
 

相关推荐

Morphik

Morphik

<p>Morphik 是开源的多模态检索增强生成(RAG)工具,专为处理高技术性和视觉内容丰富的文档设计。支持对图像、PDF、视频等多种格式的文档进行搜索,采用 ColPali 等技术,能理解文档中的视觉内容。Morphik 具备快速元数据提取功能,可从文档中提取边界框、标签、分类等信息。</p> <h2 style="font-size: 20px;">Morphik的主要功能</h2> <ul> <li>多模态数据处理:能处理文本、PDF、图片、视频等多种格式的文件。</li> <li>智能解析文件:自动将文件分成小块并生成嵌入,方便后续检索和处理。</li> <li>ColPali多模态嵌入:结合文本和图像内容进行高效检索,理解文档的视觉内容。</li> <li>知识图谱构建:只需一行代码,即可构建特定领域的知识图谱,自动提取实体和关系。</li> <li>自然语言规则引擎:用自然语言定义规则,从非结构化数据中提取结构化信息。</li> <li>数据管理与集成:支持多用户和文件夹级别的数据组织和隔离。支持注册和使用数百种不同的AI模型,可根据任务需求灵活配置。</li> <li>快速元数据提取:从文档中快速提取元数据,包括边界框、标签、分类等。</li> </ul> <h2 style="font-size: 20px;">Morphik的项目地址</h2> <ul> <li>项目官网:<a class="external" href="https://www.morphik.ai/?utm_source=medsci" target="_blank" rel="noopener">morphik.ai</a></li> <li>Github仓库:<a class="external" href="https://github.com/morphik-org/morphik-core" target="_blank" rel="noopener nofollow">https://github.com/morphik-org/morphik-core</a></li> </ul>

DeerFlow

DeerFlow

字节开源了:DeerFlow,基于LangChain和LangGraph框架的一款智能研究助手 支持动态任务迭代、MCP无缝集成、自动生成研究计划、人机协作,甚至是播客、PPT生成 它把语言模型与网络搜索、爬虫和Python代码执行等工具结合在一起,以快速提供深入且全面的报告

lobe-chat

lobe-chat

🤯 Lobe Chat - an open-source, modern-design AI chat framework. Supports Multi AI Providers( OpenAI / Claude 3 / Gemini / Ollama / DeepSeek / Qwen), Knowledge Base (file upload / knowledge management / RAG ), Multi-Modals (Plugins/Artifacts) and Thinking. One-click FREE deployment of your private ChatGPT/ Claude / DeepSeek application.

Langchain4j

Langchain4j

LangChain for Java:利用 LLM 的强大功能增强你的 Java 应用程序 LangChain4j 的目标是简化 LLM 与 Java 应用程序的集成。 方法如下: 统一的 API: LLM 提供商(例如 OpenAI 或 Google Vertex AI)和嵌入(向量)存储(例如 Pinecone 或 Milvus)使用专有 API。LangChain4j 提供统一的 API,避免了为每种 API 学习和实现特定 API 的麻烦。为了尝试不同的 LLM 或嵌入存储,您可以轻松地在它们之间切换,而无需重写代码。LangChain4j 目前支持15 多个流行的 LLM 提供商 和15 多个嵌入存储。 全面的工具箱: 自 2023 年初以来,社区一直在构建大量基于 LLM 的应用程序,识别常见的抽象、模式和技术。LangChain4j 已将这些工具提炼为实用代码。我们的工具箱涵盖各种工具,从低级提示模板、聊天内存管理和函数调用,到高级模式(例如 Agents 和 RAG)。对于每种抽象,我们都提供了一个接口以及基于常见技术的多种即用型实现。无论您是构建聊天机器人,还是开发具有从数据提取到检索的完整流程的 RAG,LangChain4j 都能提供丰富的选择。 大量示例: 这些示例展示了如何开始创建各种 LLM 驱动的应用程序,提供灵感并使您能够快速开始构建。 LangChain4j 于 2023 年初在 ChatGPT 热潮中启动开发。我们注意到,众多 Python 和 JavaScript LLM 库和框架缺乏 Java 版本,因此我们必须解决这个问题!虽然我们的名字里有“LangChain”,但该项目融合了 LangChain、Haystack、LlamaIndex 以及更广泛社区的理念和概念,并融入了我们自己的创新元素。

Langchain-Chatchat

Langchain-Chatchat

Langchain-Chachat(原Langchain-ChatGLM)基于Langchain与ChatGLM、Qwen与Llama等语言模型的RAG与Agent应用| Langchain-Chatatch(以前称为 langchain-ChatGLM),基于本地知识的 LLM(如 ChatGLM、Qwen 和 Llama)RAG 和带有 langchain 的代理应用程序 ✅ 本项目支持主流的 LLM、 Embedding 模型与托管数据库,可实现全部使用开源模型离线接入。同时,本项目也支持 OpenAI GPT API 的调用,另外在后续持续补充对主流模型及模型 API 的接入。

Langchain

Langchain

LangChain 框架虽然可以独立使用,但它也可以与任何 LangChain 产品无缝集成,为开发人员在构建 LLM 应用程序时提供全套工具。 LangChain 通过模型、嵌入、向量存储等的标准接口帮助开发人员构建由 LLM 驱动的应用程序。 LangChain 的用途: 实时数据增强。轻松将 LLM 连接到各种数据源和外部/内部系统,利用 LangChain 庞大的集成库,其中包含模型提供商、工具、向量存储、检索器等。 模型互操作性。您的工程团队可以随时切换模型,并进行实验以找到最符合您应用需求的最佳方案。随着行业前沿的发展,快速适应——LangChain 的抽象概念让您保持发展势头。

Nano-GraphRAG

Nano-GraphRAG

😭 GraphRAG很好而且功能强大,但是官方实现很难阅读或破解。 😊 该项目提供了更小、更快、更清洁的 GraphRAG,同时保留了核心功能

Fast-GraphRAG

Fast-GraphRAG

可解释和可调试的知识:图表提供了可查询、可视化和更新的人类可导航的知识视图。 快速、低成本、高效:设计用于大规模运行,无需大量资源或成本要求。 动态数据:自动生成和优化图表以最适合您的领域和本体需求。 增量更新:支持数据演变时的实时更新。 智能探索:利用基于 PageRank 的图形探索来提高准确性和可靠性。 异步和类型化:完全异步,具有完整类型支持,以实现强大且可预测的工作流程。 Fast GraphRAG 旨在无缝融入您的检索管道,为您提供高级 RAG 的强大功能,而无需构建和设计代理工作流程的开销。

LightRAG

LightRAG

LightRAG 允许您以各种格式导出知识图谱数据,以便进行分析、共享和备份。该系统支持导出实体、关系和关系数据。

GraphRAG

GraphRAG

GraphRAG使用知识图谱,在推理复杂信息时显著提高问答性能。RAG 技术在帮助 LLM 推理私有数据集方面表现出色——这些数据是 LLM 未经训练且从未见过的数据,例如企业的专有研究、商业文档或通信内容。

Ragflow

Ragflow

RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。RAGFlow 可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。