【深度学习】本地运行 GraphRAG + Ollama

随着人工智能不断革新各个行业,对高效且经济的解决方案的需求日益增长。GraphRAG Local Ollama 应运而生,它是一款强大的 Microsoft GraphRAG 改进版,集成了使用 Ollama 下载的本地模型。这种改进让您可以告别昂贵的 OpenAPI 模型,转而采用高效、经济的本地推理。在本博文中,我们将指导您设置和使用 GraphRAG Local Ollama,展示其功能和优势。

介绍GraphRAG Local Ollama

GraphRAG Local Ollama 专为支持本地模型而设计,使其成为依赖昂贵的 OpenAPI 模型的经济替代方案。通过使用 Ollama 下载的本地模型,您可以进行高效的推理,而无需支付高额费用。

关键特征

  • 本地模型支持: 利用 Ollama 下载的本地模型,可用于语言模型 (LLM) 和嵌入式应用。
  • 经济高效: 无需依赖昂贵的 OpenAPI 模型,显著降低成本。
  • 简单易设: 安装过程简单明了,便于快速部署和实验。

安装步骤

  1. 创建并激活一个新的conda 环境

    首先,创建一个新的 conda 环境,确保所有依赖项都被隔离:

    conda create -n graphrag-ollama-local python=3.10
    conda activate graphrag-ollama-local
    
  2. 安装Ollama

    接下来,安装 Ollama,它将用于下载和管理本地模型:

    • 访问 Ollama 的网站获取详细的安装说明。
    • 或者,运行以下命令:
    pip install ollama
    
  3. 使用Ollama下载需要的模型

    ollama pull mistral  #语言模型
    ollama pull nomic-embed-text  #embedding模型
    
  4. Clone 代码

    git clone <https://github.com/TheAiSingularity/graphrag-local-ollama.git>
    
  5. 进入代码目录

    cd graphrag-local-ollama/
    
  6. 安装GraphRAG包

    使用以下命令安装 GraphRAG 包:

    pip install -e .
    
  7. 创建所需的输入目录

    创建实验数据和结果将存储的输入目录:

    mkdir -p ./ragtest/input
    
  8. 复制示例数据

    将示例数据复制到输入目录。此示例数据用于运行初始设置

    cp input/* ./ragtest/input
    
  9. 初始化 ./ragtest 目录

    初始化文件夹以创建所需文件:

    python -m graphrag.index --init --root ./ragtest
    
  10. 移动 settings.yaml 文件

    将预配置的 settings.yaml 文件移动到 ./ragtest 目录。该文件已配置了 Ollama 本地模型:

    mv settings.yaml ./ragtest
    
  11. 构建索引

    python -m graphrag.index --root ./ragtest
    
  12. 执行一个查询

    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 的依赖,并实现了无缝的实验。

相关推荐

  1. 深度学习本地运行 GraphRAG + Ollama

    2024-07-13 06:22:03       25 阅读
  2. Spark scala如何本地运行

    2024-07-13 06:22:03       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 06:22:03       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 06:22:03       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 06:22:03       57 阅读
  4. Python语言-面向对象

    2024-07-13 06:22:03       68 阅读

热门阅读

  1. vim编辑器

    2024-07-13 06:22:03       22 阅读
  2. Linux 安装elk

    2024-07-13 06:22:03       21 阅读
  3. read paper and make summer (Image enhancement)

    2024-07-13 06:22:03       21 阅读
  4. 深入理解 Vuex:Vue.js 的状态管理模式

    2024-07-13 06:22:03       16 阅读
  5. yarn使用

    2024-07-13 06:22:03       23 阅读