微信扫码
与创始人交个朋友
我要投稿
在往期文章中,我们探讨了RAG的应用。然而,在实际使用过程中,我们发现传统RAG的表现并未完全满足预期(例如:在处理数据时,使用默认效果不佳,切片乱七八糟。因此需要花费很大精力去处理数据,比如编写文档时统一规范、使用一些工具/脚本对数据源进行预处理和清洗,这些比起AI本身的价值更大)。
为解决传统RAG的局限性,一种基于图结构的RAG应用应运而生,它被称为GraphRAG。
本篇文章,我们就来探索GraphRAG的魅力,看它是否真的能带来意想不到的惊喜。
官网:https://microsoft.github.io/graphrag
微软开源的一项结合了知识图谱的检索增强生成技术。
简单来说,它可以显著提升AI知识库的性能,让AI能根据你提供的文档,更准确地回答你提出的复杂问题。
关于AI知识库,传统的RAG即使结合了私有知识库,但是在使用过程中还是有很多值得吐槽的点,比如:精确度不够、AI总是回答不到点上。
这个问题的根源之一其实是传统RAG的局限性,当我们用这套技术去搭建知识库时,整个索引和检索的过程,都是基于文本块的。简单来说,就是我们把一个大的文档给切碎,变成一个又一个小的文本块,当有请求过来的时候,就根据请求去寻找哪些文本块是最相关、最匹配的,最后把找到的文本块作为参考资料,连同请求一起给到大模型。
这套技术有两个局限性:
也就导致了传统RAG在面对复杂查询的时候特别吃力。
为了补上传统RAG的短板,微软推出并且开源了GraphRAG,它的优势就是全局性。
Github:https://github.com/microsoft/graphrag
GraphRAG在对数据集建立索引的时候,会做两件事:
从视觉上看,这些实体就是一个又一个的点,而有关联的两个实体,它会用线连接起来,于是一张庞大的知识图谱就形成了,这也是它名字里Graph的来源。
因为要表达复杂的关系,一个有效的手段就是利用图谱。
使用了知识图谱,GraphRAG能够把握复杂的、细微的数据关系,所以它才能构建一种全局性的优势,从而提升RAG的精确度。
官方文档:https://microsoft.github.io/graphrag/get_started
pip install graphrag
要下载的东西贼多,得耐心等待……
mkdir -p ./ragtest/input
在这里放入你的文档,目前只支持txt、csv。
官网给的示例文档查尔斯·狄更斯的《圣诞颂歌》:
curl https://www.gutenberg.org/cache/epub/24022/pg24022.txt -o ./ragtest/input/book.txt
PS:如果你用的OpenAI,不要跑这个文件,200页 11$ 贼贵…… 就…… 离谱
graphrag init --root ./ragtest
运行完命令后会看到多了几个文件,其中最重要的两个文件:
graphrag index --root ./ragtest
graphrag query \
--root ./ragtest \
--method global \
--query "What are the top themes in this story?"
graphrag query \
--root ./ragtest \
--method local \
--query "Who is Scrooge and what are his main relationships?"
settings.yaml文件中修改大语言模型和嵌入式模型:
本地大模型在配置上没什么问题,但是在运行时贼慢,一个是建立索引时提取时间非常漫长,另一个是嵌入时也非长漫长,相比于GPT4几分钟就完成了,本地llama3 8b体量上还是有点差距的。在实际应用中一个200页的大文档要处理半个小时,显然也是不合理的。也许这就是微软要开源的原因?依靠社群的力量去优化它。
以上,完。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-01-07
LLM 幻觉:现象剖析、影响与应对策略
2025-01-07
解锁Agentic RAG,使用LangChain和OpenAI进行实践
2025-01-07
RAG(检索增强生成)系统实践与调优
2025-01-06
RAG,看这一篇就够了!
2025-01-06
CoW帮我成为时间管理大师后,被封号了
2025-01-06
IBM推出文档处理利器Docling,基于LangChain打造RAG应用
2025-01-06
RAG成为过去式?缓存增强生成(CAG)is All You Need?
2025-01-06
GraphRAG × AutoGen × Ollama × Chainlit = 本地免费多代理 RAG 超级 AI 助手
2024-07-18
2024-09-04
2024-05-05
2024-06-20
2024-05-19
2024-07-09
2024-07-09
2024-06-13
2024-07-07
2024-07-07
2025-01-06
2025-01-04
2024-12-30
2024-12-27
2024-12-26
2024-12-24
2024-12-21
2024-12-14