首页/详情

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 作为生成模型。

关键步骤

  1. 环境准备
    git clone https://github.com/yourorg/atomic-graphrag-demo.git
    cd atomic-graphrag-demo
    pip install -r requirements.txt
    
  2. 文档导入:使用 DirectoryLoader 将本地 Markdown/HTML 文件读取为 Document 对象。
  3. 图构建
    • 为每段落创建节点,使用 OpenAI Embedding 将文本转为向量。
    • 通过 Neo4jGraph 将节点写入 Neo4j,自动建立基于相似度的边(阈值 0.75)。
  4. 单次查询
    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 邻居,形成上下文子图。
  5. 结果展示:控制台输出 生成的答案,同时绘制子图(使用 pyvis),帮助开发者直观看到检索路径。

技术亮点

  • 原子化:每一步都封装为独立函数,便于替换向量模型、图数据库或
  • 单查询端到端:无需预先构建索引或手动调参,一条命令即可完成全部操作。
  • 可视化:示例自带子图可视化脚本,帮助调试检索质量。

完整代码位于仓库的 demo.py,可直接运行并根据自己的数据集进行改造。

标签