尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
如何将已有实体关系图数据接入 GraphRAG 运行社区检测与 Global Search?
如何将已有实体关系图数据接入 GraphRAG 运行社区检测与 Global Search【免费下载链接】graphragA modular graph-based Retrieval-Augmented Generation (RAG) system项目地址: https://gitcode.com/GitHub_Trending/gr/graphrag如果你已经拥有自己抽取好的实体关系图实体表 关系表又不想重跑 GraphRAG 的文本分块和实体/关系抽取官方文档提供了一条明确的接入路径把图数据写成 GraphRAG 认识的 parquet 表通过workflows配置只运行社区检测Leiden 聚类和社区报告两个工作流然后直接对结果执行 Global Search。这条路径适用于想回答“数据整体有哪些主题”这类聚合性问题、但图数据已经现成的场景。前提是你有 Python 3.10–3.12、一个可用的 LLM API key社区报告需要调用补全模型并且已经安装 GraphRAG。主要依据是 BYOGBring Your Own Graph文档、输出表结构文档、配置文档 与 快速入门。准备项目空间与安装BYOG 路径和常规流程共用同一套项目初始化方式。在项目目录中依次执行mkdir graphrag_quickstart cd graphrag_quickstart python -m venv .venv source .venv/bin/activate # Windows 用 .venv\Scripts\activate python -m pip install graphrag然后在项目根目录初始化配置graphrag init初始化时会提示选择默认 chat 模型和 embedding 模型。该命令会在当前目录生成 初始化文档 中说明的三个产物settings.yaml流水线配置后面所有工作流修改都改这个文件.env包含GRAPHRAG_API_KEYAPI_KEY把API_KEY替换为你自己的 OpenAI 或 Azure API keyprompts/GraphRAG 默认使用的 LLM prompt。如果你的模型走 Azure OpenAI按 快速入门文档 在settings.yaml的models:下补azure_deployment_name、api_base、api_version等字段。准备 entities 与 relationships 数据BYOG 文档要求你把图数据导出为两个可选第三个parquet 文件放进输出目录entities.parquet——实体表即图的节点relationships.parquet——关系表即图的边text_units.parquet——图所抽取自的原文分块仅在你打算用 Local / DRIFT / Basic 检索时才需要见后文可选项。列结构可参考 outputs 文档但做图摘要时字段要求是精简的entities 只需id、title、description和text_unit_ids列表relationships 只需id、source、target、description、weight和text_unit_ids列表。其中weight字段不能省略文档特别标注它用于正确计算 Leiden 社区Note: the weight field is important because it is used to properly compute Leiden communities!。如果已有数据的边权是整数或来自其他度量保留原值即可文档没有要求归一化。只配置社区检测与社区报告两个工作流GraphRAG 支持只运行指定的工作流子集。把settings.yaml中的workflows改为workflows: [create_communities, create_community_reports]这是文档给出的最小工作流集合跑完后即可使用 Global Search。workflows的语义见 配置文档这是一个按顺序执行的工作流名列表“Useful if you have done part of the processing yourself”正好对应“前面几步已经做完了”的 BYOG 场景。社区检测本身的参数max_cluster_size、use_lcc、seed在同页的cluster_graph小节有说明不改则用默认值。放入数据并运行索引按 BYOG 文档的 Setup 小节操作创建输出目录output把你的entities.parquet和relationships.parquet如有text_units.parquet一并放入放进去确认settings.yaml已按上节改好workflows运行索引graphrag index --root your_project_rootyour_project_root替换为你的项目根目录即settings.yaml所在目录。该命令会调用 LLM 生成社区报告README 明确提醒“indexing can be an expensive operation ... start small”建议先用小图验证流程。两个补充说明graphrag index提供--dry-run参数只检查并校验配置、不执行任何步骤适合在正式跑之前先确认配置无误提供--skip-validation参数help 文本注明“Useful when running no LLM steps.”。本路径包含 LLM 步骤社区报告所以保留默认校验即可不建议加这个参数。验证社区检测结果索引正常结束时CLI 无错误、进程退出码为 0在输出目录./output中应能看到 outputs 文档 描述的 parquet 表本场景关注两个communities.parquetLeiden 生成的层级社区列表含community、parent、children、level、entity_ids、relationship_ids、text_unit_ids等列。其中community列的说明值得注意“these increment with depth, so they are unique through all levels of the community hierarchy”community_reports.parquet每个社区的摘要报告含title、summary、full_content、rank、findings等 LM 生成字段。这两张表正是 Global Search 的输入——query 子命令 在执行 global 方法时会读取entities、communities、community_reports三个输出表。文件存在且能被读取说明接入成功。对已有图执行 Global Search在项目根目录直接执行--method默认就是globalgraphrag query What are the top themes in this data?Global Search 文档 解释了它为什么适合这类问题Global Search 用指定层级社区报告中预先摘要好的内容做 map-reduce能回答“前五大主题是什么”这类需要跨数据集聚合的问题而基线 RAG 依赖向量相似检索没有线索把检索引向正确信息对此类问题表现很差。可调参数来自 CLI 定义--community-level加载社区报告的 Leiden 层级默认2help 文本说明“Higher values represent smaller communities”。文档同时提醒层级越低报告越详细、回答越深入但报告数量更多耗时和 LLM 资源消耗也更大--response-type自由文本描述期望的回答格式默认Multiple Paragraphs--streaming/--no-streaming控制回答是否流式打印--dynamic-community-selection开启动态社区选择的 global 搜索变体--data指定索引输出目录含 parquet 文件的目录不传则用配置中的输出存储位置。命令把回答直接打印到终端这就是文档展示的最终使用方式。可选分支接入其他检索方式如果你的目标不止 Global SearchBYOG 文档给了两条明确扩展注意它们的前提不同要跑 Local、DRIFT 或 Basic 检索需要提供text_units.parquet并生成部分嵌入把配置改为workflows: [create_communities, create_community_reports, generate_text_embeddings]如果你的图没有实体/关系描述例如纯统计来源的图可以改用 FastGraphRAG 的文本版社区报告工作流——它用text_units而不是实体与关系描述来生成社区报告workflows: [create_communities, create_community_reports_text, generate_text_embeddings]这条分支要求 entities 和 relationships 表中有有效的text_unit_ids链接而generate_text_embeddings仅在你要做 Global Search 以外的检索时才需要。限制与边界本路径跳过的是文本分块、实体抽取和关系抽取社区报告仍会调用 LLM成本随社区数量增长文档建议从小数据开始。没有text_units就只应跑 Global Search 这条最短路径强行用其他检索方式会缺少graphrag query所需的数据表local 方法需要text_units、relationships等。仓库 README 声明项目处于维护模式maintenance mode只做 bug 修复和依赖更新不接新 PR 和新功能选型时可留意。【免费下载链接】graphragA modular graph-based Retrieval-Augmented Generation (RAG) system项目地址: https://gitcode.com/GitHub_Trending/gr/graphrag创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

CodeGate 如何用 Docker 启动本地安全网关并指向 DeepSeek API?

CodeGate 如何用 Docker 启动本地安全网关并指向 DeepSeek API?

CodeGate 如何用 Docker 启动本地安全网关并指向 DeepSeek API? 【免费下载链接】awesome-deepseek-integration Integrate the DeepSeek API into popular software 项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-deepseek-integration 如果你…

📅 2026/9/10 5:34:23
如何用 nacos-cli 将本地 Skill 发布到 Nacos 注册中心并上线指定版本?

如何用 nacos-cli 将本地 Skill 发布到 Nacos 注册中心并上线指定版本?

如何用 nacos-cli 将本地 Skill 发布到 Nacos 注册中心并上线指定版本? 【免费下载链接】nacos an easy-to-use dynamic service discovery, configuration and service management platform for building AI cloud native applications. 项目地址: https://gitco…

📅 2026/9/10 5:34:23
C语言闯关指南:从基础语法到项目实战的完整进阶路线

C语言闯关指南:从基础语法到项目实战的完整进阶路线

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/10 5:29:23
MORE NEWS

更多资讯

📰

零基础也能学:10 个免费数学科普资源完全指南(awesome-math 精选)

零基础也能学:10 个免费数学科普资源完全指南(awesome-math 精选) 【免费下载链接】awesome-math A curated list of awesome mathematics resources 项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-math 想自学数学却不知…

📰

MySQL与Redis核心原理对比:从索引结构到缓存一致性实践

1. 先搞明白它们到底是什么:核心定位与底层原理1.1 MySQL:关系型数据库的“绝对核心”MySQL 是一个关系型数据库管理系统,核心价值就是把数据按照“表”的结构组织起来,表与表之间通过主键、外键等关系关联。它解决的核心问题是持…

📰

SpringBoot+MyBatis-Plus打造乡村儿童帮扶管理平台实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

Markdown一键生成Word/PPT/PDF:文档自动化工作流实战

1. 项目概述:一个被误读却极具实用价值的“文档工作流中枢”“markitdown”这个名字,乍一听像极了某个小众 Markdown 编辑器,或是某款带点极客味的笔记工具。但如果你真去 PyPI 搜pip install markitdown,会发现它根本不存在——它…

📰

humanizer技能:消除AI文本非人感的三层实战方法

1. “humanizer”不是新工具,而是当下内容生产链路里最隐蔽的断点最近在帮三个不同行业的客户做内容策略复盘时,发现一个高度一致的现象:他们都在用AI生成初稿,但最终发布前,几乎无一例外要花20–40分钟手动“重写一遍…

📰

力扣3371:移项变形+哈希表,O(n)找出最大离群值

第一次在周赛题单里看到 3371 这道题时,我第一反应是“这题估计又是模拟题,把数组里的元素试一遍,看哪个是离群值”。真动手写才发现,如果照着题面去模拟,逻辑很容易绕进死胡同。反而是先把题目翻译成一个等式&#xf…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬