首页 > 其他分享 >GraphRAG如何构建知识图谱Knowledge Graph (GraphRAG系列第二篇)

GraphRAG如何构建知识图谱Knowledge Graph (GraphRAG系列第二篇)

时间:2024-10-30 17:00:15浏览次数:7  
标签:prompt Knowledge GraphRAG graphrag Graph Entity Relation 提取

      GraphRAG工作的第一步,是将输入的文档集合,按一定的策略拆分成一个一个chunks,然后解析每个chunks,将chunk中所关注的实体(entity)和关系(relation)解析出来,以此构建知识图谱。

 

 

      那问题来了,GraphRAG是如何抽取文本中的实体及其间的关系,是像以前NLP任务那样,通过标注文本词性的方式,来训练一个LSTM/GRU网络来实现吗?

      其实,GraphRAG的知识图谱构建思想是简单和朴素的,它借助大模型的few shot能力,来提取输入文档中的实体关系,从而建立起知识图谱。GraphRAG的默认实现,是借助OpenAI的ChatGPT,基于默认的prompt模板,来提取关系实体,

      考虑到不同文本所属领域不同,使用的语言也不同,所以对于不同的输入文本,需要对prompt模板进行微调(tune)。

      GraphRAG的prompt模板有三种类型

  • Entity/Relation提取

     指示LLM如何提取实体关系的prompt,该prompt源码路径:

          http://github.com/microsoft/graphrag/blob/main/graphrag/index/graph/extractors/graph/prompts.py

  • 总结Entity/Relation描述

     指示LLM如何对每个Entity/Relation的功能进行总结,该prompt源码路径:

     http://github.com/microsoft/graphrag/blob/main/graphrag/index/graph/extractors/summarize/prompts.py

  • Claim提取

     指示LLM如何提取每个Entity的Claim,这个Claim可以理解为Entity或Relation的属性,该prompt源码路径:

     http://github.com/microsoft/graphrag/blob/main/graphrag/index/graph/extractors/claims/prompts.py

 

  下面以提取Entity/Relation为例,讲解如何微调prompt。先看下提取Entity/Relation默认prompt内容:

      

     prompt包含Goal、Steps、Examples等几个部分,告诉LLM本次任务的目标是什么,如何达成这个目标,并举了几个例子,这些就是GraphRAG实现对特定文本进行实体抽取的秘密所在。而微调prompt以适应当前任务的方法,就是修改Examples部分,将本次任务领域的实体关系,举些例子写进并替换Examples部分的例子,使得LLM能够识别并提取本次任务关注的实体关系类型。

     

 

关注更多安卓开发、AI技术、股票分析技术及个股诊断等理财、生活分享等资讯信息,请关注本人公众号(木圭龙的知识小屋)

 

标签:prompt,Knowledge,GraphRAG,graphrag,Graph,Entity,Relation,提取
From: https://www.cnblogs.com/tgltt/p/18516035

相关文章

  • LLM论文研读: GraphRAG的替代者LightRAG
    1. 背景最近有一个很火的开源项目LightRAG,Github6.4K+星※,北邮和港大联合出品,是一款微软GraphRAG的优秀替代者,因此本qiang~得了空闲,读读论文、跑跑源码,遂有了这篇文章。2. LightRAG框架2.1 已有RAG系统的局限性1)许多系统仅依赖于平面数据表示(如纯文本),限制了根据文本中......
  • 终于有了!!!基于Langgraph使用本地LLM搭建agent!!!
    需求Langchain是使用闭源LLM实现agent搭建的,Langgraph官网给的例子是基于Claude,其他一些agent例子也是基于OPENAI的,但是对于很多私有化场景,使用本地LLM搭建agent是非常重要的。但是网上并没有相关的教程,捣鼓了两天,捣鼓出来Ollama+Langgraph实现的基于本地LLM的agent搭建模......
  • [LeetCode] 3216. Lexicographically Smallest String After a Swap
    Givenastringscontainingonlydigits,returnthelexicographicallysmalleststringthatcanbeobtainedafterswappingadjacentdigitsinswiththesameparityatmostonce.Digitshavethesameparityifbothareoddorbothareeven.Forexample,5......
  • GraphRAG原理及部署实战(GraphRAG系列第一篇)
        RAG在大模型时代,被寄予了厚望,但在近一年多各大小公司的实施过程中,其效果远没有抖音中宣传的那么振奋人心,其原因是多方面的。这篇文章就RAG中的一个弱项--局部性来展开讨论。一、RAG原理       图1描述了RAG的原理,用户输入了一个指令Instruct,RAG将其与Docu......
  • 【数据结构与算法】图(Graph)
    文章目录图的逻辑结构一.图的定义二.图的基本概念和术语图的存储结构一.邻接矩阵(数组)二.邻接表(链式)三.十字链表四.邻接多重表五.边集数组图的遍历一.深度优先遍历二.广度优先遍历三.图的遍历与图的连通性图的逻辑结构在线性表中,数据元素之间是被串起来的,仅有线......
  • 【241027-论文阅读】DGraph: A Large-Scale Financial Dataset for Graph Anomaly Det
    DGraph:ALarge-ScaleFinancialDatasetforGraphAnomalyDetectionDGragh是一个用于图异常检测(graghanomalydetection,GAD)的大型金融数据集。它包含300w个节点、400w个动态边和100w个ground-truth节点。作者在关注的问题大领域:图异常检测(GAD)现实世界场景中,异常是普遍......
  • 解密prompt系列41. GraphRAG真的是Silver Bullet?
    这一章我们介绍GraphRAG范式,算着时间也是该到图谱了,NLP每一轮新模型出来后,往往都是先研究微调,然后各种预训练方案,接着琢磨数据,各种主动学习半监督,弱监督,无监督,再之后就到图谱和对抗学习~前一阵GraphRAG的风吹得呼呼的,经常被问你们也GraphRAG了么?但GraphRAG虽好但并非RAG的Silv......
  • 《向量数据库指南》揭秘:GraphRAG如何重塑知识图谱与RAG的融合之道
    嘿,各位向量数据库和AI领域的探索者们,我是你们的老朋友,大禹智库的向量数据库高级研究员王帅旭,也是《向量数据库指南》的作者。今天,咱们来聊聊一个既前沿又实用的话题——GraphRAG,一个通过结合知识图谱来增强检索增强生成(RAG)能力的新方法。如果你对向量数据库和AI应用感兴趣的话,......
  • 《向量数据库指南》——基础 RAG 与 GraphRAG 输出质量对比
    基础RAG与GraphRAG输出质量对比为了展示GraphRAG的有效性,其开发者在博客(https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/)中比较了基础RAG和GraphRAG的输出质量。我在这里引用一个简单的例子来说明。......
  • COMP3811 Computer GraphicsModule code
    SchoolofComputing:assessmentbriefModuletitleComputerGraphicsModulecodeCOMP3811AssignmenttitleCoursework1AssignmenttypeanddescriptionProgrammingassignment:GraphicsfundamentalsRationaleThecourseworkrevolvesaroundfundamentalgraphi......