DB-GPT``v0.6.0 联合TuGraph 社区和AntV社区共同发布了GraphRAG社区总结能力。

“讲了个啥?”,“DB-GPT社区和TuGraph社区在社区贡献,社区生态,开发者的这几个方面的联系和区别分别是什么” 这类概括性,多主题总结性问题时,传统Native RAG可能无法解决。因为这是一个聚焦于查询的总结性QFS检索(Query-Focused Summarization),而不是一个直接明确的向量/关键词检索。

大致原理是通过大模型进行三元组抽取,并且利用社区检测算法(Leiden算法)将整个知识内容图节点划分模块化的社区,然后通过大模型对社区进行摘要总结,实现QFS,具体原理后面会有剖析。

GraphRAG - 图1

基于上述设计,我们采用了TuGraph社区提供的开源知识图谱语料(OSGraph)以及DB-GPT和TuGraph的产品介绍材料(共计约43k tokens),并与Microsoft的GraphRAG系统做了对比测试,最终DB-GPT仅消耗了相比50%的token开销,便生成了同等规模的知识图谱。并且在问答测试质量相当的前提下,全局搜索性能有明显提升。GraphRAG - 图2

安装教程

  1. 安装TuGraph环境
  1. docker run -d -p 7070:7070 -p 7687:7687 --name tugraph tugraph/tugraph-runtime-centos7:latest lgraph_server -d run --enable_plugin true
  1. 安装相关依赖
  1. pip install "neo4j>=5.20.0"
  2. pip install dbgpt-tugraph-plugins==0.1.0rc1 -U -i https://pypi.org/simple

3.在.env里面进行设置

  1. TUGRAPH_HOST=127.0.0.1
  2. TUGRAPH_PORT=7687
  3. TUGRAPH_USERNAME=admin
  4. TUGRAPH_PASSWORD={your_password}
  5. #开启图社区总结能力
  6. GRAPH_COMMUNITY_SUMMARY_ENABLED=True

4.启动dbgpt_server

如何使用

  1. 新建KnowledgeGraph知识库

GraphRAG - 图3

2.上传文档然后切片处理

GraphRAG - 图4

3.构建成功后,查看图谱

GraphRAG - 图5

4.进行对话

GraphRAG - 图6