Atomic GraphRAG 演示:单次查询完整执行流程
Lobsters AI2026/02/28 18:44机翻/自动摘要/自动分类
3 阅读
内容评分
技术含量
8/10
营销水分
4/10
摘要
本文提供了 Atomic GraphRAG 的端到端演示,展示如何在一次查询中完成文档加载、向量化、图构建、子图检索以及 LLM 生成答案。示例基于 Python、LangChain 与 Neo4j,配有一键安装脚本和可视化子图工具,适合开发者快速上手并自行扩展。
正文
本文展示了 Atomic GraphRAG 的最小可运行示例,演示如何在一次查询中完成文档加载、图构建、向量化、子图检索以及 生成答案的全链路。示例基于 Python、LangChain 与 Neo4j,使用 OpenAI 的 gpt‑3.5‑turbo 作为生成模型。
关键步骤
- 环境准备:
git clone https://github.com/yourorg/atomic-graphrag-demo.git cd atomic-graphrag-demo pip install -r requirements.txt - 文档导入:使用
DirectoryLoader将本地 Markdown/HTML 文件读取为Document对象。 - 图构建:
- 为每段落创建节点,使用 OpenAI Embedding 将文本转为向量。
- 通过
Neo4jGraph将节点写入 Neo4j,自动建立基于相似度的边(阈值 0.75)。
- 单次查询:
query = "What are the security implications of using GraphRAG?" subgraph = graph.retrieve_subgraph(query, top_k=5) answer = llm.generate(query, context=subgraph) print(answer)retrieve_subgraph会先用检索模型找出最相关的节点,再在图中扩展至 2‑hop 邻居,形成上下文子图。 - 结果展示:控制台输出 生成的答案,同时绘制子图(使用
pyvis),帮助开发者直观看到检索路径。
技术亮点
- 原子化:每一步都封装为独立函数,便于替换向量模型、图数据库或 。
- 单查询端到端:无需预先构建索引或手动调参,一条命令即可完成全部操作。
- 可视化:示例自带子图可视化脚本,帮助调试检索质量。
完整代码位于仓库的 demo.py,可直接运行并根据自己的数据集进行改造。