Skip to content

[Task] GraphRAG 支持轻量 benchmark 评测能力 #75

Description

@imbajin

背景

当前 HugeGraph-LLM 已有 GraphRAG 能力,但缺少一个轻量、易用、可复现的评测机制。修改图抽取流程、prompt、召回策略、rerank 逻辑、上下文构造或回答生成逻辑后,很难判断效果是否真的变好,也不容易发现具体退化样例

希望新增一个轻量级 benchmark 能力,方便开发者对 GraphRAG 相关变更进行快速评测。该能力需要同时覆盖图抽取质量和召回质量,对中文场景友好,不依赖过重框架,也不应强制要求外部 LLM 才能完成基础评测

实现前需要调研业内已有 RAG / GraphRAG 评测方案和开源框架,尽量复用成熟思路,减少重复造轮。可以参考已有开源库或方案,例如 RAGAS、DeepEval、ARES、TruLens、GraphRAG-Bench 等,但需要注意部分工具对中文场景支持不佳,或默认依赖 LLM-as-judge / 外部服务,不适合作为基础依赖。最终方案可以借鉴其指标设计、数据格式或报告方式,但应保持轻量、可复现、中文友好

benchmark 可以参考下面的业内常见评估维度,仅供参考。基础能力应优先覆盖“完整性”和“正确性”,后续可以逐步扩展到其他更细维度

flowchart TB
  A[Graph Extraction Output] --> B[Syntax Validity]
  A --> C[Schema Validity]
  A --> D[Entity Quality]
  A --> E[Relation Quality]
  A --> F[Claim Quality]
  A --> G[Provenance Quality]

  B --> B1[JSON parse rate]
  B --> B2[Load-to-DB success]

  C --> C1[Type constraint pass]
  C --> C2[Required property fill]
  C --> C3[Illegal edge rate]

  D --> D1[Entity P/R/F1]
  D --> D2[Alias merge error]
  D --> D3[Entity split error]

  E --> E1[Triple P/R/F1]
  E --> E2[Qualifier accuracy]
  E --> E3[Direction accuracy]

  F --> F1[Claim correctness]
  F --> F2[Conflict detection]
  F --> F3[Temporal validity]

  G --> G1[Source span hit]
  G --> G2[Doc/chunk attribution]
Loading

本 task 需要独立完成,不依赖其他 benchmark task 或图抽取 task 已经完成。评测可以先基于公开文本、给定样例、期望图抽取结果、检索证据和参考答案进行初步对比;后续更完整的数据集可以单独补充

需求

  1. 支持图抽取质量评估

    • 核心关注“完整性”和“正确性”
    • 可基于输入文本、graph schema、期望图结果和 candidate 图结果进行对比
    • 可进一步细化到 vertex / edge / property 的 precision、recall、F1,以及 schema violation、orphan edge、duplicate 等问题
  2. 支持召回质量评估

    • 核心关注是否召回了应有证据,以及召回内容是否有效
    • 可基于 question、expected evidence、candidate retrieval result 进行对比
    • 可进一步支持 evidence recall@k、MRR、context precision 等指标
  3. 支持 baseline / candidate / 参考答案对比

    • 能保存一次运行结果
    • 能输出整体指标变化和样例级失败 / 退化
    • 报告建议支持 JSON 和 Markdown,Markdown 应适合贴到 PR / Issue 评论中
  4. 支持中文和英文样例

  5. 本地实验可以可选接入真实 LLM 或 LLM-as-judge,但不能作为基础评测强依赖

核心检查项

  • 完成已有 RAG / GraphRAG 评测方案/开源框架调研,并说明利弊取舍
  • 可以通过命令行运行 GraphRAG benchmark
  • 可以评估图抽取质量,至少覆盖“完整性”和“正确性”
  • 可以评估召回质量
  • 可以保存一次运行结果作为 baseline
  • 可以比较 baseline / candidate / 参考答案
  • 输出 JSON 和 Markdown 两种报告
  • 至少包含一组图抽取样例
  • 至少包含一组召回样例
  • 样例覆盖中文和英文
  • 报告中包含失败样例或退化样例,不只给平均分
  • 文档说明如何新增 case、运行评测、比较结果、解读报告

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions