
GraphRag 知识图谱质量评估的 4 个检查点从定位问题到调优验证的完整实操路径【免费下载链接】graphragA modular graph-based Retrieval-Augmented Generation (RAG) system项目地址: https://gitcode.com/GitHub_Trending/gr/graphrag用 GraphRag 跑完一轮索引后图谱质量到底好不好别凭感觉。实体缺不缺、关系稳不稳、社区散不散这三件事都能在输出数据里查到对应字段。这篇文章按发现异常 → 定位环节 → 处置 → 验证的排查动线走一遍给你一套不依赖额外工具的实操检查路径。一、先看症状判断问题出在实体、关系还是社区图谱质量差通常表现为三类现象问答时抓不到关键实体实体问题、答案里实体之间张冠李戴关系问题、全局搜索答非所问社区问题。先花十分钟对号入座再往下深挖。实体缺失或零散先查 text_unit_ids 字段打开输出目录里的 entities 表看每个实体的text_unit_ids字段它记录了实体出现在哪些文本单元里。用实体覆盖的文本单元数 ÷ 全部文本单元数算一个完整性得分得分低于 0.3 的实体基本可以判定为覆盖不足——要么是抽取时漏了要么是名字没归一导致同一事物被拆成了多个节点。此时对照 packages/graphrag/graphrag/data_model/entity.py 里的字段定义逐个确认text_unit_ids、description是否为空。关系混乱或权重漂移查 weight 与 rank关系表里weight是每条边的强度rank是边的优先级两者都在 packages/graphrag/graphrag/data_model/relationship.py 中定义。如果同一对实体的权重忽高忽低、或者大量边的 weight 挤在 1.0 附近说明抽取阶段输出不稳定问题在抽取参数而不是图结构本身。二、深入三查一致性、权重来源、社区健康度名称与描述是否自洽相似度 0.6 是一条分界线实体模型带有name_embedding和description_embedding两组向量。给名字和描述分别算一个余弦相似度低于 0.6 的条目值得人工抽查名字像同一个东西、描述却指向不同含义这类冲突实体会直接污染下游搜索。抽查时按相似度从低到高排序只看前 50 条就能判断整体一致性问题有多严重。关系权重怎么来的共现、置信度与温度参数GraphRag 的边权重不是拍脑袋给的核心思路是共现频率 × 置信度再除以路径长度来归一。其中置信度来自 LLM 抽取时的输出稳定性受温度参数影响把抽取用的temperature压到 0.3–0.5 区间权重波动会明显收敛。配置入口在 packages/graphrag/graphrag/config/models/extract_graph_config.py这里同时管着entity_types和max_gleanings。另外仓库在 NLP 抽取路径下还内置了 PMI 和 RRF 两种边权算法见 packages/graphrag/graphrag/graphs/edge_weights.py权重来源不同体检标准也应跟着换。社区散不散内聚系数 0.4 是警戒线社区是全局搜索的地基。给每个社区算内聚系数社区内部边权占社区总边权的比例低于 0.4 的社区说明内部关联松散报告生成时容易自说自话。处理办法是回到裁剪阶段收紧过滤条件packages/graphrag/graphrag/config/models/prune_graph_config.py 里的min_edge_weight_pct默认按 40 分位过滤弱边调高一点min_node_freq从默认 2 往上加能把散碎社区在聚类前就清掉。三、处置与验证调参、Gephi 体检、闭环复查关系权重调稳的几个参数按前面的定位结果对症改三处即可entity_types限定抽取范围到真实存在的类型如组织、人物、地点类型越宽噪声实体越多max_gleanings控制实体补全轮数常见配置是 30 左右配合 0.3–0.5 的温度一起用既能补全又不发散抽取温度高精度场景取 0.3日常场景 0.5 以内。改完后不需要全量重建增量更新流程会只处理变更文档省下的时间用来做下一步验证。Gephi 可视化体检把质量看出来参数调得对不对肉眼验证最快。参照 docs/visualization_guide.md 的 Gephi 操作指南导入输出目录里的 GEXF 图文件节点大小映射rankrank 的取值键支持 degree/centrality/pagerank可在实体加载时的rank_key里切换边粗细映射weight用 ForceAtlas2 布局铺开检查是否有大团孤立的卫星点弱关系残留或某社区内部稀稀拉拉内聚不足。把评估嵌进索引流程一次跑完自动复查不想每次都手动抽查可以把上面的检查做成固定步骤嵌进索引流程。packages/graphrag/graphrag/index/workflows/ 目录按阶段拆分了工作流实体抽取阶段核对完整性得分关系构建阶段校验权重分布社区形成阶段输出内聚系数。每次重建索引后这三个数字直接对比上一版——上升说明调参有效回退说明该回滚。若抽取质量整体偏低再参考 docs/prompt_tuning/auto_prompt_tuning.md 做提示词层面的优化。跑完一轮索引后照这份清单打勾⚠️ 随机抽 50 个实体确认完整性得分text_unit_ids 覆盖率没有大批低于 0.3 的⚠️ 按名称/描述相似度升序看前 50 个实体低于 0.6 的条目数量是否可接受⚠️ 检查边权重分布是否大量边停留在默认 1.0 附近抽取温度是否落在 0.3–0.5⚠️ 给最大三个社区算内聚系数低于 0.4 的社区已用min_edge_weight_pct清理✅ Gephi 里铺开整图无成片孤立卫星点rank/weight 映射后层级清晰。【免费下载链接】graphragA modular graph-based Retrieval-Augmented Generation (RAG) system项目地址: https://gitcode.com/GitHub_Trending/gr/graphrag创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考