❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- Fast GraphRAG 是微软推出的一款高效的知识图谱检索框架。
- 它结合了 RAG 技术和知识图谱,支持动态数据生成、实时数据更新和智能探索。
- 框架设计考虑大规模运行的需求,支持异步处理和类型安全操作。
正文(附运行示例)
Fast GraphRAG 是什么
Fast GraphRAG 是微软推出的一款高效的知识图谱检索框架,旨在提供可解释性和高精度的代理驱动检索工作流。它结合了检索增强生成(RAG)技术和知识图谱,提升大型语言模型(LLMs)在处理私有数据和复杂数据集时的性能。Fast GraphRAG 无缝融入检索管道,提供高级 RAG 的强大功能,无需构建和设计 Agent 工作流程的开销。具备可解释和可调试的知识、快速、低成本、高效的特性,支持动态数据和增量更新。
Fast GraphRAG 的主要功能
- 知识图谱可视化查询:支持用户在知识图谱上进行可视化查询,使数据检索和更新过程更加直观和易于管理。
- 动态数据生成:支持动态数据生成,自动优化和生成图表,适应不同领域和本体的需求。
- 实时数据更新:支持数据变化时的实时更新,确保信息的时效性和准确性。
- 智能探索:基于 PageRank 的图形探索技术,提高检索的准确性和可靠性。
- 异步和类型化操作:完全异步,具有完整的类型支持,使工作流程更加强大和可预测。
- 可扩展性:框架设计考虑大规模运行的需求,无需大量的资源或成本。
Fast GraphRAG 的技术原理
- 图形结构:Fast GraphRAG 用图形结构表示和存储知识,节点代表实体,边代表实体间的关系。
- 检索增强生成(RAG):结合检索(Retrieval)和生成(Generation)的技术,检索相关知识增强生成的内容。
- PageRank 算法:用 PageRank 算法进行智能探索,一种基于图的排名算法,用于评估节点的重要性。
- 异步处理:支持异步处理,在不阻塞主线程的情况下执行任务,提高效率。
- 类型系统:框架具有完整的类型系统,支持类型安全的操作,确保数据的一致性和准确性。
如何运行 Fast GraphRAG
安装
从 PyPi 安装(推荐)
pip install fast-graphrag
从源码安装
# 克隆仓库
git clone https://github.com/circlemind-ai/fast-graphrag
cd fast-graphrag
poetry install
快速启动
设置 OpenAI API 密钥:
export OPENAI_API_KEY="sk-..."
下载《圣诞颂歌》的文本文件:
curl https://raw.githubusercontent.com/circlemind-ai/fast-graphrag/refs/heads/main/mock_data.txt > ./book.txt
使用以下 Python 代码示例:
from fast_graphrag import GraphRAG
DOMAIN = "分析这个故事并识别角色。重点关注他们如何互动、探索的地点以及他们的关系。"
EXAMPLE_QUERIES = [
"《圣诞颂歌》中圣诞节前夕的意义是什么?",
"维多利亚时代的伦敦背景如何影响故事的主题?",
"描述导致斯克鲁奇转变的一系列事件。",
"狄更斯是如何利用不同的幽灵(过去、现在和未来)来引导斯克鲁奇的?",
"狄更斯为什么选择将故事划分为‘章’而不是章节?"
]
ENTITY_TYPES = ["Character", "Animal", "Place", "Object", "Activity", "Event"]
grag = GraphRAG(
working_dir="./book_example",
domain=DOMAIN,
example_queries="\n".join(EXAMPLE_QUERIES),
entity_types=ENTITY_TYPES
)
with open("./book.txt") as f:
grag.insert(f.read())
print(grag.query("谁是斯克鲁奇?").response)
下一次从同一个工作目录初始化 Fast GraphRAG 时,它将保留所有知识。
资源
- 项目官网:https://circlemind.co
- GitHub 仓库:https://github.com/circlemind-ai/fast-graphrag
- 社区:https://discord.gg/McpuSEkR
- 报告 Bug:https://github.com/circlemind-ai/fast-graphrag/issues/new?assignees=&labels=&projects=&template=🐞-bug-report.md&title=
- 请求功能:https://github.com/circlemind-ai/fast-graphrag/issues/new?assignees=&labels=&projects=&template=💡-feature-request.md&title=
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦