KG-RAG-datasets
MIT 开源的 KG-RAG 评测数据集,通过三级递进难度(单文档单块→单文档多块→多文档)评估 R
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
MIT 开源的 KG-RAG 评测数据集,通过三级递进难度(单文档单块→单文档多块→多文档)评估 R
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:Docugami 公司头像(GitHub)
想象你是一家大型律师事务所的 AI 工程师,需要用 RAG 系统从数万份合同中检索法律条款。你满怀信心地跑完了 Llama Datasets 和 LangChain Benchmarks,发现准确率高达 95%。但当系统真正上线处理真实客户文档时,准确率却跌到了 60%——问题出在哪里?
答案藏在数据集本身。大多数现有 RAG 评估数据集都存在一个致命缺陷:它们测试的是"单文档问答",而真实业务场景中,用户往往需要跨越数十甚至数百份文档进行联合检索。 这就是 Docugami 团队发现的核心问题,也是他们开源 KG-RAG Datasets 的初衷。
Docugami 是一家由前微软高管于 2017 年创立的文档 AI 公司,创始团队包括 XML 格式之父 Jean Paoli(微软 Word 的核心开发者)。他们开发了一种基于 XML 的层级语义分块(Hierarchical Semantic Chunking)技术,能够将任意长文档自动转化为结构化的 XML 知识图谱。在 LangSmith 评估中,使用 Docugami KG-RAG 模板的系统在仅需几分钟反馈调整后,准确率即可逼近 100%,显著优于 OpenAI GPTs 和 Assistants API 等竞品方案。
KG-RAG Datasets 将评估难度分为三个递进层级,每一层都对应真实业务中不同复杂度的检索需求:
第一层:单文档单块(Single-Doc, Single-Chunk RAG)
这是最简单的场景,问题和答案都落在一份文档的同一个连续文本块内。例如:"微软 2022 年 Q3 10-Q 报告中报告的经营活动净现金流是多少?" 评估系统只需正确检索到相关段落并传给 LLM 上下文。这类问题适合测试基础的向量检索能力。
第二层:单文档多块(Single-Doc, Multi-Chunk RAG)
难度升级:答案需要跨越同一份文档中的多个非连续区域。例如:"亚马逊 2023 年 Q1 的股票回购信息,与管理层讨论中股权部分的内容如何关联?" 检索系统必须从同一份文档中定位多个相关块,并理解它们之间的语义联系。这类问题对简单向量检索极具挑战性,但对 Docugami 的 XML 知识图谱方法来说,因为保留了文档层级结构,跨块关联反而是天然优势。
第三层:多文档(Multi-Doc RAG)
最高难度:答案需要从多份文档的非连续区域中综合提取。例如:"苹果 iPhone 销售收入在过去几个季度如何波动?" 这个问题跨越了苹果多份季报,需要跨文档的语义关联推理能力——这正是大多数传统 RAG 系统的薄弱环节。
项目包含四个数据集子目录,均来自美国政府公开数据:
| 数据集 | 来源 | 特点 |
|---|---|---|
| SEC 10-Q | 美国证券交易委员会 | 科技巨头季度财报,包含表格和财务数据,需跨文件理解 |
| NIH Clinical Trial Protocols | 美国国立卫生研究院 | 临床试验协议文档,结构化程度高,专业术语密集 |
| NTSB Aviation Incident/Accident Reports | 美国国家运输安全委员会 | 航空事故调查报告,叙事性强,含技术描述 |
| US Fed Agency Reports | 美国联邦机构报告 | 跨机构政策文档,覆盖领域广 |
所有数据均通过 CSV + Python download.py 脚本管理,download.csv 中存储了原始数据源的下载 URL 和元数据。数据集本身(data 目录)通过 Git LFS 管理,但需额外下载——这导致整个项目实际上是数据入口和评估代码的仓库,而非预编译的数据包。
图2:Docugami KG-RAG GitHub 仓库封面图
依赖生态:
项目使用 Poetry 管理 Python 依赖,核心依赖包括:
langchain ^0.0.348:RAG 编排框架openai ^1.3.8:LLM 调用tiktoken ^0.5.2:OpenAI 分词器docugami ^0.1.2:Docugami 官方 SDK,核心的 XML 知识图谱分块能力dgml-utils ^0.3.0:Docugami 内部工具库pandas:数据分析tqdm:进度条文档处理流程(以 SEC 10-Q 为例):
download.py 下载原始 PDF/HTML 文件到 data/ 目录process_docs.ipynb 进行预处理:解析文档结构、提取文本和表格与主流框架的集成:
Docugami 提供了与 LangChain 和 LlamaIndex 的深度集成模板。团队在博客中详细描述了如何用 LangChain 加载 KG-RAG 数据集,并使用 Docugami KG-RAG Template 在 LangSmith 上进行标准评估。同时,数据集也已同步发布到 LlamaHub(LlamaIndex 官方数据市场),可直接通过 LlamaIndex 的 LLMDataset 接口加载使用。
数据集偏向美国英文文档
所有数据源均来自美国政府机构和美国上市公司,这意味着评估结果可能无法直接泛化到其他语言(如中文、日文)或非政府/商业领域的文档。跨国企业在使用该数据集进行选型参考时,需要谨慎对待这一局限性。
数据下载依赖外部源
data 目录为空,数据集需要通过 download.py 从原始来源实时下载。如果原始数据源 URL 失效(如政府网站改版),整个数据集将无法完整复现——这是一个可持续性问题。
评测基准偏向 Docugami 方案
Docugami 明确表示他们在 LangSmith 上用 Docugami KG-RAG Template 进行了评测,并与 OpenAI GPTs 对比。作为商业公司自建的数据集,其评测设计可能天然偏向自身技术路线,其他 RAG 方案(如纯向量检索、GraphRAG 等)在该数据集上的表现,需要由独立第三方验证。
数据规模受限
相比 Real-Chat、Natural Questions 等大规模评测集,KG-RAG 的四个数据集规模相对较小。这既是优势(质量高、标注细)也是劣势(覆盖面有限)。
自 2023 年 12 月发布以来,KG-RAG Datasets 在 GitHub 上已积累超过 213 颗星,进入了 LlamaHub 官方数据市场,被多个 RAG 学术研究和工业项目引用。它的核心贡献不在于提供了一个"更大的数据集",而在于重新定义了 RAG 评估的方法论:从单文档问答转向多文档、多块联合检索,更真实地反映企业级 RAG 应用的挑战。
这一转变与更广泛的行业趋势相呼应——2024 年是 GraphRAG(基于知识图谱的 RAG)和 Hybrid Search(混合向量+关键词检索)爆发的一年,KG-RAG 恰好填补了这一评估空白期。
核心启示: 如果你正在构建企业级 RAG 系统,或选型评估不同的 RAG 技术方案,KG-RAG Datasets 是目前最接近真实业务场景的评测工具之一。它的三级难度分层设计——单文档单块 → 单文档多块 → 多文档——本质上是一个 RAG 系统成熟度的能力图谱,能帮助你精确定位当前方案的薄弱环节。