AI个人学习
和实操指南

SimGRAG:利用相似子图进行知识图谱驱动的检索增强生成

综合介绍

SimGRAG(SimGRAG: Leveraging Similar Subgraphs for Knowledge Graphs Driven Retrieval-Augmented Generation)是一个基于知识图谱驱动的检索增强生成(RAG)方法。该项目旨在通过利用相似子图来提升知识图谱在问答和事实验证等任务中的表现。SimGRAG支持即插即用的使用方式,结合大语言模型、嵌入模型和向量数据库,提供高效的相似性搜索和生成能力。该项目依赖于开源解决方案,如Ollama、Nomic嵌入模型和Milvus向量数据库,用户可以根据需求替换这些组件。

SimGRAG:利用相似子图进行知识图谱驱动的检索增强生成-1


 

SimGRAG:利用相似子图进行知识图谱驱动的检索增强生成-1

 

功能列表

  • 大语言模型生成:使用Llama 3 70B模型进行生成任务。
  • 节点和关系嵌入:利用Nomic嵌入模型进行节点和关系的嵌入。
  • 向量数据库:使用Milvus存储节点和关系的嵌入,支持高效的相似性搜索。
  • 数据准备:支持MetaQA和FactKG数据集的下载和准备。
  • 配置文件:提供可修改的配置文件以适应不同需求。
  • 管道运行:提供运行管道的脚本,支持MetaQA和FactKG的索引和查询。

 

使用帮助

安装流程

  1. 安装Ollama
    • 访问Ollama官网,按照指示安装Ollama。
    • 安装完成后,运行以下命令启动Llama 3 70B模型:
     ollama run llama3:70b
    
    • 启动SimGRAG所需服务:
     bash ollama_server.sh
    
  2. 安装Nomic嵌入模型
    • 克隆Nomic嵌入模型:
     mkdir -p data/raw
    cd data/raw
    git clone https://huggingface.co/nomic-ai/nomic-embed-text-v1
    
  3. 安装Milvus
    • 访问Milvus官网,按照文档安装Milvus。
    • 安装完成后,启动Milvus服务。

数据准备

  • MetaQA数据集
    • 下载MetaQA数据集并放置在data/raw文件夹中。
  • FactKG数据集
    • 下载FactKG数据集并放置在data/raw文件夹中。

运行管道

  1. MetaQA
    • 运行以下命令进行索引和查询:
     cd pipeline
    python metaQA_index.py
    python metaQA_query1hop.py
    python metaQA_query2hop.py
    python metaQA_query3hop.py
    
  2. FactKG
    • 运行以下命令进行索引和查询: bash
      cd pipeline
      python factKG_index.py
      python factKG_query.py

配置文件

  • 配置文件位于configs文件夹中,用户可以根据需求修改配置文件以适应不同的任务和数据集。

结果查看

  • 查询结果将保存在配置文件中指定的输出文件中,例如results/FactKG_query.txt。每行结果是一个字典,键correct表示最终答案的正确性。

通过以上步骤,用户可以快速上手使用SimGRAG进行知识图谱驱动的检索增强生成任务。

未经允许不得转载:首席AI分享圈 » SimGRAG:利用相似子图进行知识图谱驱动的检索增强生成

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文