【亲测免费】 Graphiti:构建实时知识图谱,赋能AI Agents
2026-01-30 04:47:17作者:齐添朝
项目介绍
Graphiti 是一个专门为 AI Agents 设计的开源框架,用于构建和查询时间感知的知识图谱。它能够连续集成用户交互、结构化和非结构化的企业数据以及外部信息,形成一个连贯、可查询的图谱。Graphiti 支持增量数据更新、高效检索以及精确的历史查询,而不需要完整的图重组计算,这使得它非常适合开发交互式、上下文感知的 AI 应用程序。
项目技术分析
Graphiti 框架采用了一系列先进的技术,包括:
- 时间感知的图模型:Graphiti 通过明确跟踪事件发生和摄入时间,支持精确的点时间查询。
- 混合检索方法:它结合了语义嵌入、关键词(BM25)和图遍历,实现了低延迟查询,而无需依赖大型语言模型的总结。
- 自定义实体定义:Graphiti 支持通过简单的 Pydantic 模型创建灵活的本体和开发人员定义的实体。
- 可扩展性:Graphiti 通过并行处理,有效地管理大量数据,适用于企业环境。
项目技术应用场景
Graphiti 的核心应用场景包括:
- 动态用户交互和业务数据集成:Graphiti 能够处理用户交互和企业数据的变化,保持数据的实时更新。
- 基于状态推理和任务自动化:它支持 Agent 进行状态推理和自动化任务。
- 复杂数据的语义、关键词和图搜索:Graphiti 提供了一种高效的方法来查询复杂且不断变化的数据。
项目特点
Graphiti 与传统的检索增强生成(RAG)方法相比,具有以下显著特点:
- 实时增量更新:Graphiti 可以即时集成新的数据片段,无需批量重算。
- 双时态数据模型:明确跟踪事件发生和摄入时间,支持精确的点时间查询。
- 高效的混合检索:结合语义嵌入、关键词和图遍历,实现低延迟查询。
- 自定义实体类型:Graphiti 允许开发者自定义实体类型,增加了灵活性。
- 高可扩展性:Graphiti 通过并行处理,优化了大数据集的管理。
Graphiti 与 GraphRAG 的对比
| 特点 | GraphRAG | Graphiti |
|---|---|---|
| 主要用途 | 静态文档总结 | 动态数据管理 |
| 数据处理 | 批量处理 | 连续增量更新 |
| 知识结构 | 实体集群和社区总结 | 情境数据、语义实体和社区 |
| 检索方法 | 序列化语言模型总结 | 混合语义、关键词和图搜索 |
| 适应性 | 低 | 高 |
| 时间处理 | 基本时间戳跟踪 | 明确双时态跟踪 |
| 矛盾处理 | 语言模型驱动的总结判断 | 时间的边无效化 |
| 查询延迟 | 秒到几十秒 | 通常低于一秒 |
| 自定义实体类型 | 不支持 | 支持 |
| 可扩展性 | 中等 | 高,优化大数据集 |
Graphiti 专为处理动态和频繁更新的数据集而设计,非常适合需要实时交互和精确历史查询的应用。
使用 Graphiti
Graphiti 的安装和使用相对简单。首先,确保您的系统满足以下要求:
- Python 3.10 或更高版本
- Neo4j 5.26 或更高版本(作为嵌入存储后端)
- OpenAI API 密钥(用于语言模型推理和嵌入)
安装 Graphiti Core:
pip install graphiti-core
或者使用 Poetry:
poetry add graphiti-core
快速开始使用 Graphiti,您可以添加数据片段,然后执行搜索:
from graphiti_core import Graphiti
from graphiti_core.nodes import EpisodeType
from datetime import datetime, timezone
graphiti = Graphiti("bolt://localhost:7687", "neo4j", "password")
graphiti.build_indices_and_constraints()
episodes = [
"Kamala Harris is the Attorney General of California. She was previously the district attorney for San Francisco.",
"As AG, Harris was in office from January 3, 2011 – January 3, 2017"
]
for i, episode in enumerate(episodes):
await graphiti.add_episode(
name=f"Freakonomics Radio {i}",
episode_body=episode,
source=EpisodeType.text,
source_description="podcast",
reference_time=datetime.now(timezone.utc)
)
results = await graphiti.search('Who was the California Attorney General?')
Graphiti 还提供了一个 API 服务和 MCP 服务器,方便与 Graphiti 知识图谱进行交互。
通过其强大的功能和灵活的设计,Graphiti 正在成为 AI 领域中构建实时知识图谱的领先选择。如果您正在寻找一种方法来提高 AI Agents 的智能和效率,Graphiti 可能是您需要的解决方案。立即开始使用 Graphiti,为您的 AI 应用程序添加实时知识图谱的能力吧!
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0211
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0135
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
热门内容推荐
最新内容推荐
项目优选
收起
deepin linux kernel
C
32
16
暂无描述
Dockerfile
774
5.07 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
871
2.01 K
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
468
461
Ascend Extension for PyTorch
Python
756
956
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
695
1.39 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.1 K
1.14 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.03 K
271
昇腾LLM分布式训练框架
Python
182
230
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Python
1.03 K
644