随着人工智能不断革新各个行业,对高效且经济的解决方案的需求日益增长。GraphRAG Local Ollama 应运而生,它是一款强大的 Microsoft GraphRAG 改进版,集成了使用 Ollama 下载的本地模型。这种改进让您可以告别昂贵的 OpenAPI 模型,转而采用高效、经济的本地推理。在本博文中,我们将指导您设置和使用 GraphRAG Local Ollama,展示其功能和优势。
介绍GraphRAG Local Ollama
GraphRAG Local Ollama 专为支持本地模型而设计,使其成为依赖昂贵的 OpenAPI 模型的经济替代方案。通过使用 Ollama 下载的本地模型,您可以进行高效的推理,而无需支付高额费用。
关键特征
- 本地模型支持: 利用 Ollama 下载的本地模型,可用于语言模型 (LLM) 和嵌入式应用。
- 经济高效: 无需依赖昂贵的 OpenAPI 模型,显著降低成本。
- 简单易设: 安装过程简单明了,便于快速部署和实验。
安装步骤
-
创建并激活一个新的conda 环境
首先,创建一个新的 conda 环境,确保所有依赖项都被隔离:
conda create -n graphrag-ollama-local python=3.10 conda activate graphrag-ollama-local
-
安装Ollama
接下来,安装 Ollama,它将用于下载和管理本地模型:
- 访问 Ollama 的网站获取详细的安装说明。
- 或者,运行以下命令:
pip install ollama
-
使用Ollama下载需要的模型
ollama pull mistral #语言模型 ollama pull nomic-embed-text #embedding模型
-
Clone 代码
git clone <https://github.com/TheAiSingularity/graphrag-local-ollama.git>
-
进入代码目录
cd graphrag-local-ollama/
-
安装GraphRAG包
使用以下命令安装 GraphRAG 包:
pip install -e .
-
创建所需的输入目录
创建实验数据和结果将存储的输入目录:
mkdir -p ./ragtest/input
-
复制示例数据
将示例数据复制到输入目录。此示例数据用于运行初始设置
cp input/* ./ragtest/input
-
初始化
./ragtest
目录初始化文件夹以创建所需文件:
python -m graphrag.index --init --root ./ragtest
-
移动
settings.yaml
文件将预配置的 settings.yaml 文件移动到 ./ragtest 目录。该文件已配置了 Ollama 本地模型:
mv settings.yaml ./ragtest
-
构建索引
python -m graphrag.index --root ./ragtest
-
执行一个查询
python -m graphrag.query --root ./ragtest --method global "What is machine learning?"
保存和可视化图表
要保存图表以进行可视化,请在 settings.yaml 文件中启用 graphml 选项:
snapshots:
graphml: true
可以使用 Gephi 之类的工具来可视化生成的 graphml 文件,或者使用提供的脚本 visualize-graphml.py,在 visualize-graphml.py 中传递 .graphml 文件的路径:
graph = nx.read_graphml('output/20240708-161630/artifacts/summarized_graph.graphml')
运行可视化脚本
python visualize-graphml.py
总结
通过以上步骤,您可以设置并使用本地模型与 GraphRAG,使过程更经济高效。这种方法利用了本地模型的力量,减少了对昂贵 API 的依赖,并实现了无缝的实验。