颠覆传统RAG!微软发布GraphRAG革新AI检索!打造你的AI助手:GraphRAG+Chainlit实现跨文档智能检索分析,效果惊人!#graphrag #rag #ai #AI检索 #知识图谱

AI超元域
4 min readJul 4, 2024

--

🔥🔥🔥本篇笔记所对应的YouTube视频 https://youtu.be/_UU4cffEmKI

安装

pip3 install graphrag
mkdir -p ./ragtest/inputcurl https://raw.githubusercontent.com/win4r/mytest/main/book.txt > ./ragtest/input/book.txtpython3 -m graphrag.index --init --root ./ragtestpython3 -m graphrag.index --root ./ragtest
python3 -m graphrag.query \
--root ./ragtest \
--method global \
"show me some Prompts about Interpretable Soft Prompts."
python3 -m graphrag.query \
--root ./ragtest \
--method local \
"show me some Prompts about Knowledge Generation."

chainlit

#pip3 install chainlit
import chainlit as cl
import subprocess
import shlex
@cl.on_chat_start
def start():
cl.user_session.set("history", [])
@cl.on_message
async def main(message: cl.Message):
history = cl.user_session.get("history")
# 从 Message 对象中提取文本内容
query = message.content
# 构建命令
cmd = [
"python3", "-m", "graphrag.query",
"--root", "./ragtest",
"--method", "local",
]
# 安全地添加查询到命令中
cmd.append(shlex.quote(query))
# 运行命令并捕获输出
try:
result = subprocess.run(cmd, capture_output=True, text=True, check=True)
output = result.stdout
# 提取 "SUCCESS: Local Search Response:" 之后的内容
response = output.split("SUCCESS: Local Search Response:", 1)[-1].strip()
history.append((query, response))
cl.user_session.set("history", history)
await cl.Message(content=response).send()
except subprocess.CalledProcessError as e:
error_message = f"An error occurred: {e.stderr}"
await cl.Message(content=error_message).send()
if __name__ == "__main__":
cl.run()

👉👉👉如有问题请联系我的徽信 stoeng

🔥🔥🔥本项目代码由AI超元域频道制作,观看更多大模型微调视频请访问我的频道⬇

👉👉👉我的哔哩哔哩频道

👉👉👉我的YouTube频道

👉👉👉我的开源项目 https://github.com/win4r/AISuperDomain

--

--

No responses yet