OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  代码  ›  GraphRAG-SDK — 面向知识图谱检索增强的开发工具集

GraphRAG-SDK — 面向知识图谱检索增强的开发工具集

 
  token ·  2026-04-30 11:00:23 · 3 次点击  · 0 条评论  

GraphRAG-SDK

基于 FalkorDB 构建的最简单、最精准的 GraphRAG 框架

基准测试领先的准确性 · FalkorDB 高速 · 多租户 · 图遍历 · 5 分钟快速上手

大多数 GraphRAG 系统在演示中表现良好,但在生产环境压力下容易崩溃。GraphRAG SDK 基于真实部署经验诞生,核心理念简单直接:检索机制比模型本身更重要。最终形成了一个模块化、基准测试领先的框架,具有可预测的成本和合理的默认配置,让您能够在 5 分钟内从原始文档获得带有引用的答案。


基准测试

排名 系统 小说(多文档) 医学(单文档) 总体
1 FalkorDB GraphRAG SDK ◄ 63.73 75.73 69.73
2 G-Reasoner 58.94 73.30 66.12
3 AutoPrunedRetriever 63.72 67.00 65.36
4 HippoRAG2 56.48 64.85 60.67
5 Fast-GraphRAG 52.02 64.12 58.07
6 RAG(带重排序)(向量 RAG) 48.35 62.43 55.39
7 LightRAG 45.09 62.59 53.84
8 HippoRAG 44.75 59.08 51.92
9 MS-GraphRAG(本地模式) 50.93 45.16 48.05

总体准确率基于 GraphRAG-Bench 的小说(20 部小说,2010 个问题)和医学(1 个语料库,2062 个问题)数据集。FalkorDB 使用 gpt-4o-mini(Azure OpenAI)测试;其他系统的数据来自已发布的排行榜。总体准确率为小说和医学准确率的平均值。详见 docs/benchmark.md 的按类别分解、方法和复现说明。

向量匹配相似文本块,而图则遍历关系。每个答案都标注了来源。


快速开始

1. 安装并启动 FalkorDB

pip install graphrag-sdk[litellm]
docker run -d -p 6379:6379 -p 3000:3000 --name falkordb falkordb/falkordb:latest
export OPENAI_API_KEY="sk-..."

如需处理 PDF,请安装 pdf 扩展:pip install graphrag-sdk[litellm,pdf]
在将数据写入图库之前,系统会自动清理 ID 和字符串属性中不支持的字符,有助于避免来自嘈杂 PDF 文件的 Cypher 解析错误。

2. 导入文档

import asyncio
from graphrag_sdk import GraphRAG, ConnectionConfig, LiteLLM, LiteLLMEmbedder

async def main():
    async with GraphRAG(
        connection=ConnectionConfig(host="localhost", graph_name="my_graph"),  # graph_name = 每个租户隔离
        llm=LiteLLM(model="openai/gpt-5.5"),
        embedder=LiteLLMEmbedder(model="openai/text-embedding-3-large", dimensions=256),
    ) as rag:
        # 导入原始文本(如果安装了 pdf 扩展,可以传入文件路径)
        result = await rag.ingest(
            text="Alice Johnson is a software engineer at Acme Corp in London.",
            document_id="my_doc",
        )
        print(f"节点: {result.nodes_created}, 关系: {result.relationships_created}")

        # 完成处理:去重实体、回填嵌入、创建索引
        await rag.finalize()

        # 完整 RAG:检索 + 生成
        answer = await rag.completion("Where does Alice work?")
        print(answer.answer)

asyncio.run(main())

3. 定义数据模式(可选)

from graphrag_sdk import GraphSchema, EntityType, RelationType

schema = GraphSchema(
    entities=[
        EntityType(label="Person", description="一个人类个体"),
        EntityType(label="Organization", description="公司或机构"),
        EntityType(label="Location", description="地理位置"),
    ],
    relations=[
        RelationType(label="WORKS_AT", description="受雇于", patterns=[("Person", "Organization")]),
        RelationType(label="LOCATED_IN", description="位于", patterns=[("Organization", "Location")]),
    ],
)

async with GraphRAG(
    connection=ConnectionConfig(host="localhost", graph_name="my_graph"),
    llm=LiteLLM(model="openai/gpt-5.5"),
    embedder=LiteLLMEmbedder(model="openai/text-embedding-3-large", dimensions=256),
    schema=schema,
) as rag:
    ...  # 按上述方式导入/查询

→ 完整入门教程:入门指南
→ 基准测试获胜配方:自定义策略


导入与检索流程

阶段 步骤 消耗资源
导入 提取实体与关系 大模型
导入 解析与去重实体 大模型
导入 嵌入与索引 大模型
检索 向量搜索 数据库
检索 全文搜索 数据库
检索 文本到 Cypher 查询 (实验性) 大模型
检索 Cypher 查询 数据库
检索 关系扩展 数据库
检索 余弦重排序 本地

💡 每个答案都可以通过 MENTIONS 边追溯到其源文本块。在 completion() 中传入 return_context=True 可获取检索轨迹和答案。


示例

可直接运行的示例 —— 下载后替换数据源即可部署。

# 示例 你将构建
1 快速开始 30 行内的第一个导入与查询循环
2 PDF 带模式 带自定义实体和关系类型的 PDF 问答机器人
3 自定义策略 可直接投入使用的基准测试获胜流程
4 自定义提供者 通过清晰接口接入任意大模型或嵌入器
5 笔记本演示 展示来源追溯的交互式教程

文档

指南 描述
入门指南 从安装到首次查询的分步教程
架构 流程设计、图谱模式、检索策略
配置 连接、提供者和调优参考
策略 所有抽象基类和内置实现
提供者 大模型和嵌入器配置指南
基准测试 方法、结果和复现说明
API 参考 完整 API 文档

开发里程碑

  • 2024年6月:首次公开发布
  • 2024年第四季度:PDF 导入和多提供者大模型
  • 2025年第一至第二季度:可插拔提供者和流程调优
  • 2025年第三季度:更精准的检索,更深入的测试覆盖
  • 🎉 2026年4月:1.0 版本发布,基于一年研究和客户 PoC 的新基准测试
  • 📦 仍在使用 v0.x API?请锁定旧版本:pip install graphrag-sdk==0.8.2
  • 2026年第二季度:生产环境可观测性;扩展导入支持——表格、结构化数据
  • 2026年第三季度:引入 Agentic GraphRAG;完成 PDF 导入
  • 2026年第四季度:更智能的检索——动态遍历、时间图谱

贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 了解开发环境搭建、测试和代码风格指南。

请在参与前阅读我们的行为准则

社区


引用

如果您在研究中使用 GraphRAG SDK,请引用:

@software{graphrag_sdk,
  title  = {GraphRAG SDK: A Modular Graph RAG Framework},
  author = {FalkorDB},
  year   = {2026},
  url    = {https://github.com/FalkorDB/GraphRAG-SDK},
}

许可证

Apache License 2.0

3 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 32 ms
Developed with Cursor