
回复
circlemind-ai组织开发了一个名为fast-graphrag的开源项目。这个项目的目标是提供一个高效、可解释且精度高的快速图检索增强生成(Fast GraphRAG)框架。该框架专门为Agent驱动的检索工作流程设计,能够轻松融入检索管道中,提供先进的RAG功能,同时避免了构建和设计Agent工作流程的繁琐复杂性。
项目的宗旨是增加全球成功的通用人工智能(GenAI)应用数量。为实现这一目标,他们开发了记忆和数据工具,使LLM应用能够利用高度专业化的检索管道,而无需费心设置和维护复杂的Agent工作流程。
该项目的主要特点和信息如下:
PyPi安装方法:
pip install fast-graphrag
git clone https://github.com/circlemind-ai/fast-graphrag.git
cd fast-graphrag
poetry install
export OPENAI_API_KEY="sk-..."
curl https://raw.githubusercontent.com/circlemind-ai/fast-graphrag/refs/heads/main/mock_data.txt > ./book.txt
from fast_graphrag import GraphRAG
DOMAIN = "分析这个故事并识别其中的角色。重点关注他们之间的互动、探索的地点以及彼此的关系。"
EXAMPLE_QUERIES = [
"圣诞前夜在《圣诞颂歌》中有何重要意义?",
"维多利亚时代的伦敦背景如何影响故事主题?",
"描述导致斯克鲁奇性格转变的一系列事件。",
"狄更斯如何运用不同的幽灵(过去、现在和未来)来引导斯克鲁奇?",
"为什么狄更斯选择将故事分为'乐章'而非章节?"
]
ENTITY_TYPES = ["人物", "动物", "地点", "物品", "活动", "事件"]
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)
这个项目采用MIT许可证发布,允许自由使用和修改。对于那些希望快速可靠地开始使用Fast GraphRAG的用户,项目还提供了托管服务选项。这项服务每月为用户提供前100个免费请求,之后则按实际使用量收费。
项目地址:https://github.com/circlemind-ai/fast-graphrag