CN117391192B - 基于图数据库的利用llm从pdf构建知识图谱的方法及装置 - Google Patents
基于图数据库的利用llm从pdf构建知识图谱的方法及装置 Download PDFInfo
- Publication number
- CN117391192B CN117391192B CN202311679563.3A CN202311679563A CN117391192B CN 117391192 B CN117391192 B CN 117391192B CN 202311679563 A CN202311679563 A CN 202311679563A CN 117391192 B CN117391192 B CN 117391192B
- Authority
- CN
- China
- Prior art keywords
- text
- point
- information
- cache pool
- edge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 239000012634 fragment Substances 0.000 claims description 59
- 230000011218 segmentation Effects 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 238000013506 data mapping Methods 0.000 abstract description 4
- 238000000605 extraction Methods 0.000 description 4
- 101100521345 Mus musculus Prop1 gene Proteins 0.000 description 3
- 108700017836 Prophet of Pit-1 Proteins 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
Abstract
本申请涉及知识图谱技术领域,解决了现有技术中从PDF文件构建知识图谱需要大量的人工介入的问题,公开了一种基于图数据库的利用LLM从PDF构建知识图谱的方法及装置,包括:按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组,生成最终的提示模板,利用LLM获取点信息和边信息并缓存到点缓存池和边缓存池,将点缓存池和边缓存池中的数据存储到图数据库中,通过LLM来理解PDF文件中的文本内容,提取出关键信息,以及理解这些信息之间的关系,并将这些信息转化为知识图谱的形式,能够大大的减少人工标注、数据映射等过程。
Description
技术领域
本申请涉及知识图谱技术领域,尤其是一种基于图数据库的利用LLM从PDF构建知识图谱的方法及装置。
背景技术
Large Language Model(LLM)是一种基于人工智能的模型,它使用大量的文本数据进行训练,以理解和生成人类语言。LLM可以理解和生成各种类型的文本,包括文章、对话和代码。OpenAI的GPT系列模型就是LLM的例子。
在信息爆炸的时代,大量的知识以PDF的形式被创建和传播。然而,这些PDF文件中的知识通常是非结构化的,这使得从这些文件中提取有用的信息并将其转化为可查询和可分析的形式变得非常困难。
知识图谱是一种用于组织和利用知识的技术,它可以表示实体(如人、地点、事件)之间的关系。知识图谱可以用于各种应用,包括搜索引擎、推荐系统和人工智能,是这些系统的基础数据存储方式。然而,构建知识图谱通常需要大量的人工,特别是当源数据是PDF文件中的知识(非结构化)的时候。
发明内容
本申请的目的在于克服现有技术中从PDF文件构建知识图谱需要大量的人工介入的问题,提供一种基于图数据库的利用LLM从PDF构建知识图谱的方法及装置。
第一方面,提供了一种基于图数据库的利用LLM从PDF构建知识图谱的方法,包括:
按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;
根据所述文本分片数组生成最终的提示模板;
通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;
将点缓存池和边缓存池中的数据存储到图数据库中。
进一步的,对所述PDF文件内容进行标记文本重要度处理包括:
遍历所有页的文本内容,获取文本内容中每行文字所有类别的字高,并将字高从大到小排序,存储在字高数组中;
再次遍历每页的文本内容,将不同字高的文本行按照其字高所在字高数组中的次序,包裹上H标签+次序X,以生成伪html片段。
进一步的,对所述PDF文件内容进行分片处理包括:
将每页的文本内容使用换行符分割生成文本数组;
设定每片文本的最大长度,按次序遍历文本数组将每行的文字拼接到当前片文本上,记录当前的HX标签和H(X+1)标签,将HX标签和H(X+1)标签之间的内容作为当前片文本生成,其中,X是字高数组中的次序,X从1开始,X代表着这个标签的重要度,H(X+1)标签即为HX标签的下一标签,最大长度是限定为2000,如果超了直接作为下一片内容,主要目的是为了避免将HX标签包裹的分段文本截断,导致知识图谱抽取不准确;
若当前片文本字数超过最大长度,则直接生成文本分片,并将当前分片所存在的HX标签和H(X+1)标签作为下一分片的标签头,随即从当前次序开始循环生成下一片文本内,以生成一个每片文本量都在最大长度以下的文本分片数组,且每个文本分片都在开头拼接上当前分片内容所在的HX标签和H(X+1)标签。
进一步的,根据所述文本分片数组生成提示模板,包括:
构建点和边的缓存池;
选取一个文本分片,遍历点缓存池,检测当前文本分片内是否有该点名称存在,若存在,则用字符包裹,得到缓存节点被字符包裹的文本分片;
将文本分片按照换行符分割,过滤文本分片中的空行,然后再次用换行符合并,以得到最终的文本分片;
获取图schema信息;
构建提示模板,其中,所述提示模板包括文本内容和图空间描述信息;
将最终的文本分片替换提示模板中的文本内容,并将图schema信息替换提示模板中的图空间描述信息,以得到最终的提示模板。
进一步的,获取图schema信息,包括:
通过图数据库语句查询当前图空间的点类型、边类型、点类型的属性、边类型的属性、点类型的属性类型和边类型的属性类型;
构造所有点类型的描述文本,将点类型和点类型的属性拼接为包含点类型所有信息的第一字符串;
构造所有边类型的描述文本,将边类型和边类型的属性拼接为包含边类型所有信息的第二字符串;
将第一字符串和第二字符串拼接成图schema信息。
进一步的,通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池,包括:
构建提示模板查询语句;
根据最终的提示模板构造LLM请求的结构体;
通过查询语句请求结构体LLM模型服务器,以得到返回的知识图谱点信息和边信息;
将得到的将得到的LLM查询结果按换行符分割,并过滤掉非vertex:和edge:开头的语句;
分别将vertex语句和edge语句去除头部后用逗号分割,得到点信息数组或边信息数组;
将所述点信息数组和边信息数组分别缓存到点缓存池和边缓存池。
进一步的,将点缓存池和边缓存池中的数据存储到图数据库中,包括:
遍历点缓存池和边缓存池中的数据以生成图数据库插入语句;
将所述图数据库插入语句发送到图数据库逐条执行;
若语句执行成功,则在界面显示对应信息,若语句执行失败,则存储失败语句和返回原因。
第二方面,提供了一种基于图数据库的利用LLM从PDF构建知识图谱的装置,包括:
读取模块,用于按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;
生成模块,用于根据所述文本分片数组生成最终的提示模板;
缓存模块,用于通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;
存储模块,用于将点缓存池和边缓存池中的数据存储到图数据库中。
第三方面,提供了一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如第一方面中的任意一种实现方式中方法的步骤。
第四方面,提供了一种电子设备,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面中的任意一种实现方式中的方法。
本申请具有如下有益效果:本申请通过LLM来理解PDF文件中的文本内容,提取出关键信息,以及理解这些信息之间的关系,并将这些信息转化为知识图谱的形式,对比传统的知识图谱提取过程,能够大大的减少人工标注、数据映射等过程,从而减少构建知识图谱过程中的人工介入,尤其针对小型数据集,在人物关系、设备手册、拓扑架构等场景下,能够快速构建产生知识图谱,用以进行图分析和查询。
附图说明
构成本申请的一部分的附图用于来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例1的基于图数据库的利用LLM从PDF构建知识图谱的方法的流程图;
图2是本申请实施例2的基于图数据库的利用LLM从PDF构建知识图谱的装置的结构框图;
图3是本申请实施例4的电子设备的内部结构示意图。
附图标记:
100、读取模块;200、生成模块;300、缓存模块;400、存储模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1
本申请实施例1所涉及的一种基于图数据库的利用LLM从PDF构建知识图谱的方法,包括:按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;根据所述文本分片数组生成最终的提示模板;通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;将点缓存池和边缓存池中的数据存储到图数据库中。该方法请通过LLM来理解PDF文件中的文本内容,提取出关键信息,以及理解这些信息之间的关系,并将这些信息转化为知识图谱的形式,对比传统的知识图谱提取过程,能够大大的减少人工标注、数据映射等过程,尤其针对小型数据集,在人物关系、设备手册、拓扑架构等场景下,能够快速构建产生知识图谱,用以进行图分析和查询。
具体的,图1示出了申请实施例1中的基于图数据库的利用LLM从PDF构建知识图谱的方法的流程图,包括:
S100、按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组,具体的,包括以下步骤:
S101、读取PDF文件:使用PDF.js 库将PDF文件内容按页读取,抽取其中每页的文本,页和页之间使用换行符分割。
S102、标记文本重要度:
S1021、遍历所有页的文本,获取文本中每行文字所有类别的字高,最终将字高从大到小排序,存储在字高数组中;
S1022、再次遍历每页的文本,将不同字高的文本行按照其字高所在字高数组中的次序,包裹上H标签+次序,例如:<H1>行文本</H1>,以生成伪html片段。
S103、文本分片:由于LLM模型无法一次处理大批量的文本文字,因此需要将文本内容进行分片让LLM模型上下文进行滑动窗口,将上述处理好的每页文本,使用换行符分割生成文本数组,示例性的,设定每片文本最大长度为2000,按次序遍历文本数组将每行的文字拼接到当前片文本上,记录当前的H1标签和H2标签,将H2标签或H1标签之间的内容作为当前片文本生成。若当前片文本字数超过2000,则直接生成文本分片,并将当前分片所存在的H1标签和H2标签作为下一分片的标签头,随即从当前次序开始循环生成下一片文本内容。最终生成一个每片文本量都在2000以下的文本分片数组,且每个分片都在开头拼接上当前分片内容所在的H1标签和H2标签,这样可以减少上下文分片导致的一部分关联信息丢失。
S200、根据所述文本分片数组生成最终的提示模板,具体的,包括以下步骤:
S201、构建点缓存池和边缓存池:用hashMap来存储以点,边id为key的缓存池,用来缓存LLM返回抽取的知识图谱点信息、边信息,避免重复添加点、边。
S202、半结构化处理:选取一个文本分片,遍历点缓存池,检测当前分片内是否有该点名称存在,若存在,则用[]字符包裹,得到缓存节点被[]包裹的文本分片;在将文本分片按照换行符分割,然后过滤其中的空行,以减少模型的注意力发散,然后再次用换行符合并,以得到最终的文本分片;
S203、获取图schema(即架构)信息,包括:通过图数据库语句查询当前图空间的点类型、边类型、点类型的属性、边类型的属性、点类型的属性类型和边类型的属性类型;构造所有点类型的描述文本,将点类型和点类型的属性拼接为包含点类型所有信息的第一字符串;构造所有边类型的描述文本,将边类型和边类型的属性拼接为包含边类型所有信息的第二字符串;将第一字符串和第二字符串拼接成图schema信息。
示例性的,通过图数据库语句`show tags`和`show edges'将当前图空间的点类型和边类型,及其类型的各类属性及属性类型查出;构造所有点类型的描述文本,将点类型和其属性按照`点类型名[属性名,...]` 的格式拼接为包含点类型所有信息的第一字符串;构造所有边类型的描述文本,和点类型描述文本类似,构造为 `边类型名[属性名,...]` 的格式,得到包含所有边类型信息的第二字符串;最将点类型描述文本和边类型描述文本,拼接为 `点类型:{第一字符串} 边类型:{第二字符串} `,得到最终的图schema信息。
S204、构建提示模板(即prompt模板):提示模板主要用来描述目的,及黏合已知信息作为上下文,prompt模板为:`从以下的图数据库空间描述信息和提供的包含关系数据的文本内容中提取其中的关系数据和实体,并生成如下的结果:
"vertex:id,type,prop1,prop2,value2"
"edge:src,dst,type,prop1,prop2"
其中,prop1等代表对应的属性值,无法获取时留空,用[]包裹的字段已存在,不用生成。当前图空间描述信息为:{图空间描述信息},当前文本内容为: {文本内容}。
S205、合并生成提示模板:将步骤S202中的最终的文本分片替换提示模板中的文本内容,并将步骤S203中图schema信息替换提示模板中的图空间描述信息,以得到最终的提示模板。
S300、通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池。具体的,包括以下步骤:
S301、构建提示模板查询语句;
S302、将步骤S205生成的最终的提示模板,构造LLM请求的结构体;
S303、通过查询语句请求结构体LLM模型服务器,以得到返回的知识图谱点信息和边信息;
S304、对LLM返回的结果进行处理:首先将得到的LLM查询结果按换行符分割;然后过滤掉其中非vertex:和edge:开头的语句;最后分别将vertex语句和edge语句去除头部后用逗号分割,得到点或边信息数组。
重复执行步骤S302-S304,批量执行直到所有文本分片被处理完成。
S305、将点信息数组和边信息数组分别缓存到点、边缓存池,示例性的:将点的第一位作为ID 缓存到点缓存池;将边的第一位和第二位用‘→’拼接,作为ID,缓存到边缓存池中。
S400、将点缓存池和边缓存池中的数据存储到图数据库中,具体的,包括以下步骤:
S401、生成图数据库插入语句:首先将点边缓存池中点边数据进行遍历,用来生成图数据库插入语句(即insert语句);然后根据当前图空间的vid类型是否为字符串,若否选择使用hash函数对点的vid进行编码;最后按照 nebulagraph的insert vertex 和 insertedge 语法,将点边数据生成图数据库插入语句。
S402、执行语句:将步骤S401中生成的图数据库插入语句,发送到图数据库逐条执行;若语句执行成功则在界面显示对应信息,若语句失败,则存储失败语句和返回原因,提示用户失败语句和原因。
在本实施例中通过LLM来理解PDF文件中的文本内容,提取出关键信息,以及理解这些信息之间的关系,并将这些信息转化为知识图谱的形式,对比传统的知识图谱提取过程,能够大大的减少人工标注、数据映射等过程,尤其针对小型数据集,在人物关系、设备手册、拓扑架构等场景下,能够快速构建产生知识图谱,用以进行图分析和查询。
实施例2
如图2所示,本申请实施例2所涉及的一种基于图数据库的利用LLM从PDF构建知识图谱的装置,包括:
读取模块100,用于按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;
生成模块200,用于根据所述文本分片数组生成最终的提示模板;
缓存模块300,用于通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;
存储模块400,用于将点缓存池和边缓存池中的数据存储到图数据库中。
需要说明的是,本发明实施例中基于图数据库的利用LLM从PDF构建知识图谱的装置的其他具体实施方式,可参见上述基于图数据库的利用LLM从PDF构建知识图谱的方法的具体实施方式,为避免冗余,此处不再赘述。
实施例3
本申请实施例3所涉及的一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如本申请实施例1中的任意一种实现方式中方法的步骤;
其中,计算机可读存储介质可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM);计算机可读存储介质可以存储程序代码,当计算机可读存储介质中存储的程序被处理器执行时,处理器用于执行如本申请实施例1中的任意一种实现方式中方法的步骤。
实施例4
如图3所示,本申请实施例4所涉及的一种电子设备,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如本申请实施例1中的任意一种实现方式中的方法;
其中,处理器可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例1中的任意一种实现方式中的方法。
处理器还可以是一种集成电路电子设备,具有信号的处理能力。在实现过程中,本申请实施例1中的任意一种实现方式中方法的各个步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器还可以是通用处理器、数字信号处理器、专用集成电路(ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成本申请实施例的数据处理的装置中包括的单元所需执行的功能,或者执行本申请实施例1中的任意一种实现方式中方法。
以上,仅为本申请较佳的具体实施方式;但本申请的保护范围并不局限于此。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,根据本申请的技术方案及其改进构思加以等同替换或改变,都应涵盖在本申请的保护范围内。
Claims (6)
1.一种基于图数据库的利用LLM从PDF构建知识图谱的方法,其特征在于,包括:
使用PDF.js 库按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;
根据所述文本分片数组生成最终的提示模板;
通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;
将点缓存池和边缓存池中的数据存储到图数据库中;
其中,对所述PDF文件内容进行标记文本重要度处理包括:
遍历所有页的文本内容,获取文本内容中每行文字所有类别的字高,并将字高从大到小排序,存储在字高数组中;
再次遍历每页的文本内容,将不同字高的文本行按照其字高所在字高数组中的次序,包裹上H标签+次序X,以生成伪html片段;
根据所述文本分片数组生成最终的提示模板,包括:
构建点和边的缓存池;
选取一个文本分片,遍历点缓存池,检测当前文本分片内是否有该点名称存在,若存在,则用字符包裹,得到缓存节点被字符包裹的文本分片;
将文本分片按照换行符分割,过滤文本分片中的空行,然后再次用换行符合并,以得到最终的文本分片;
获取图schema信息;
构建提示模板,其中,所述提示模板包括文本内容和图空间描述信息;
将最终的文本分片替换提示模板中的文本内容,并将图schema信息替换提示模板中的图空间描述信息,以得到最终的提示模板;
获取图schema信息,包括:
通过图数据库语句查询当前图空间的点类型、边类型、点类型的属性、边类型的属性、点类型的属性类型和边类型的属性类型;
构造所有点类型的描述文本,将点类型和点类型的属性拼接为包含点类型所有信息的第一字符串;
构造所有边类型的描述文本,将边类型和边类型的属性拼接为包含边类型所有信息的第二字符串;
将第一字符串和第二字符串拼接成图schema信息;
通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池,包括:
构建提示模板查询语句;
根据最终的提示模板构造LLM请求的结构体;
通过查询语句请求结构体LLM模型服务器,以得到返回的知识图谱点信息和边信息;
将得到的将得到的LLM查询结果按换行符分割,并过滤掉非vertex:和edge:开头的语句;
分别将vertex语句和edge语句去除头部后用逗号分割,得到点信息数组或边信息数组;
将所述点信息数组和边信息数组分别缓存到点缓存池和边缓存池。
2.根据权利要求1所述的基于图数据库的利用LLM从PDF构建知识图谱的方法,其特征在于,对所述PDF文件内容进行分片处理包括:
将每页的文本内容使用换行符分割生成文本数组;
设定每片文本的最大长度,按次序遍历文本数组将每行的文字拼接到当前片文本上,记录当前的HX标签和H(X+1)标签,将HX标签和H(X+1)标签之间的内容作为当前片文本生成;
若当前片文本字数超过最大长度,则直接生成文本分片,并将当前分片所存在的HX标签和H(X+1)标签作为下一分片的标签头,随即从当前次序开始循环生成下一片文本内,以生成一个每片文本量都在最大长度以下的文本分片数组,且每个文本分片都在开头拼接上当前分片内容所在的HX标签和H(X+1)标签。
3.根据权利要求1所述的基于图数据库的利用LLM从PDF构建知识图谱的方法,其特征在于,将点缓存池和边缓存池中的数据存储到图数据库中,包括:
遍历点缓存池和边缓存池中的数据以生成图数据库插入语句;
将所述图数据库插入语句发送到图数据库逐条执行;
若语句执行成功,则在界面显示对应信息,若语句执行失败,则存储失败语句和返回原因。
4.一种基于图数据库的利用LLM从PDF构建知识图谱的装置,其特征在于,包括:
读取模块,用于按页读取PDF文件内容,并对所述PDF文件内容进行标记文本重要度和分片处理以制得文本分片数组;
生成模块,用于根据所述文本分片数组生成最终的提示模板;
缓存模块,用于通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池;
存储模块,用于将点缓存池和边缓存池中的数据存储到图数据库中;
其中,对所述PDF文件内容进行标记文本重要度处理包括:
遍历所有页的文本内容,获取文本内容中每行文字所有类别的字高,并将字高从大到小排序,存储在字高数组中;
再次遍历每页的文本内容,将不同字高的文本行按照其字高所在字高数组中的次序,包裹上H标签+次序X,以生成伪html片段;
根据所述文本分片数组生成最终的提示模板,包括:
构建点和边的缓存池;
选取一个文本分片,遍历点缓存池,检测当前文本分片内是否有该点名称存在,若存在,则用字符包裹,得到缓存节点被字符包裹的文本分片;
将文本分片按照换行符分割,过滤文本分片中的空行,然后再次用换行符合并,以得到最终的文本分片;
获取图schema信息;
构建提示模板,其中,所述提示模板包括文本内容和图空间描述信息;
将最终的文本分片替换提示模板中的文本内容,并将图schema信息替换提示模板中的图空间描述信息,以得到最终的提示模板;
获取图schema信息,包括:
通过图数据库语句查询当前图空间的点类型、边类型、点类型的属性、边类型的属性、点类型的属性类型和边类型的属性类型;
构造所有点类型的描述文本,将点类型和点类型的属性拼接为包含点类型所有信息的第一字符串;
构造所有边类型的描述文本,将边类型和边类型的属性拼接为包含边类型所有信息的第二字符串;
将第一字符串和第二字符串拼接成图schema信息;
通过LLM查询批量获取文本分片的点信息和边信息,并分别将点信息和边信息缓存到点缓存池和边缓存池,包括:
构建提示模板查询语句;
根据最终的提示模板构造LLM请求的结构体;
通过查询语句请求结构体LLM模型服务器,以得到返回的知识图谱点信息和边信息;
将得到的将得到的LLM查询结果按换行符分割,并过滤掉非vertex:和edge:开头的语句;
分别将vertex语句和edge语句去除头部后用逗号分割,得到点信息数组或边信息数组;
将所述点信息数组和边信息数组分别缓存到点缓存池和边缓存池。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储用于设备执行的程序代码,该程序代码包括用于执行如权利要求1-3中任一项所述方法的步骤。
6.一种电子设备,其特征在于,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311679563.3A CN117391192B (zh) | 2023-12-08 | 2023-12-08 | 基于图数据库的利用llm从pdf构建知识图谱的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311679563.3A CN117391192B (zh) | 2023-12-08 | 2023-12-08 | 基于图数据库的利用llm从pdf构建知识图谱的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117391192A CN117391192A (zh) | 2024-01-12 |
CN117391192B true CN117391192B (zh) | 2024-03-15 |
Family
ID=89441301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311679563.3A Active CN117391192B (zh) | 2023-12-08 | 2023-12-08 | 基于图数据库的利用llm从pdf构建知识图谱的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117391192B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751567A (zh) * | 2008-12-12 | 2010-06-23 | 汉王科技股份有限公司 | 快速文本识别方法 |
CN111339316A (zh) * | 2020-02-27 | 2020-06-26 | 河海大学 | 一种知识图谱可视化编辑与持久化实现方法及系统架构 |
CN112307718A (zh) * | 2020-11-25 | 2021-02-02 | 北京邮电大学 | 一种基于文本特征和语法规则的pdf全自动标引系统及方法 |
CN115687655A (zh) * | 2022-11-14 | 2023-02-03 | 新华智云科技有限公司 | 一种基于pdf文档的知识图谱构建方法、系统、设备及存储介质 |
WO2023018379A2 (zh) * | 2021-08-12 | 2023-02-16 | 脸萌有限公司 | 知识图谱构建方法、装置、存储介质及电子设备 |
CN116578712A (zh) * | 2023-03-09 | 2023-08-11 | 北京海致星图科技有限公司 | 一种基于知识图谱领域知识库的检索和图谱分析方法 |
CN116628229A (zh) * | 2023-07-21 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 一种利用知识图谱生成文本语料的方法及装置 |
CN116860987A (zh) * | 2023-06-13 | 2023-10-10 | 中电通商数字技术(上海)有限公司 | 基于生成式大语言模型的领域知识图谱构建方法和系统 |
CN116955674A (zh) * | 2023-09-20 | 2023-10-27 | 杭州悦数科技有限公司 | 一种通过LLM生成图数据库语句的方法及web装置 |
CN117056531A (zh) * | 2023-08-29 | 2023-11-14 | 上海大学 | 领域知识驱动的大语言模型精调方法、系统、设备及存储介质 |
KR102603767B1 (ko) * | 2023-08-30 | 2023-11-17 | 주식회사 인텔렉투스 | 지식 그래프 자동 생성 방법 및 시스템 |
CN117150050A (zh) * | 2023-10-31 | 2023-12-01 | 卓世科技(海南)有限公司 | 一种基于大语言模型的知识图谱构建方法及系统 |
-
2023
- 2023-12-08 CN CN202311679563.3A patent/CN117391192B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751567A (zh) * | 2008-12-12 | 2010-06-23 | 汉王科技股份有限公司 | 快速文本识别方法 |
CN111339316A (zh) * | 2020-02-27 | 2020-06-26 | 河海大学 | 一种知识图谱可视化编辑与持久化实现方法及系统架构 |
CN112307718A (zh) * | 2020-11-25 | 2021-02-02 | 北京邮电大学 | 一种基于文本特征和语法规则的pdf全自动标引系统及方法 |
WO2023018379A2 (zh) * | 2021-08-12 | 2023-02-16 | 脸萌有限公司 | 知识图谱构建方法、装置、存储介质及电子设备 |
CN115687655A (zh) * | 2022-11-14 | 2023-02-03 | 新华智云科技有限公司 | 一种基于pdf文档的知识图谱构建方法、系统、设备及存储介质 |
CN116578712A (zh) * | 2023-03-09 | 2023-08-11 | 北京海致星图科技有限公司 | 一种基于知识图谱领域知识库的检索和图谱分析方法 |
CN116860987A (zh) * | 2023-06-13 | 2023-10-10 | 中电通商数字技术(上海)有限公司 | 基于生成式大语言模型的领域知识图谱构建方法和系统 |
CN116628229A (zh) * | 2023-07-21 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 一种利用知识图谱生成文本语料的方法及装置 |
CN117056531A (zh) * | 2023-08-29 | 2023-11-14 | 上海大学 | 领域知识驱动的大语言模型精调方法、系统、设备及存储介质 |
KR102603767B1 (ko) * | 2023-08-30 | 2023-11-17 | 주식회사 인텔렉투스 | 지식 그래프 자동 생성 방법 및 시스템 |
CN116955674A (zh) * | 2023-09-20 | 2023-10-27 | 杭州悦数科技有限公司 | 一种通过LLM生成图数据库语句的方法及web装置 |
CN117150050A (zh) * | 2023-10-31 | 2023-12-01 | 卓世科技(海南)有限公司 | 一种基于大语言模型的知识图谱构建方法及系统 |
Non-Patent Citations (3)
Title |
---|
Let’s Chat to Find the APIs: Connecting Human, LLM and Knowledge Graph through AI Chain;Qing Huang.etc;《IEEE》;20231108;全文 * |
基于知识图谱的信息查询系统设计与实现;杨荣;翟社平;王志文;;计算机与数字工程;20200420(04);全文 * |
电力脑初探:一种多模态自适应学习系统;尚宇炜;郭剑波;吴文传;马钊;赵丽娟;赵东方;韩路波;;中国电机工程学报;20180508(11);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117391192A (zh) | 2024-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874928B (zh) | 简历数据信息解析处理方法、装置、设备及存储介质 | |
CN111241209B (zh) | 用于生成信息的方法和装置 | |
CN113704667B (zh) | 一种招标公告的自动提取处理方法和装置 | |
CN111831920A (zh) | 用户需求分析方法、装置、计算机设备及存储介质 | |
CN111597800A (zh) | 同义句的获取方法及装置、设备及存储介质 | |
CN116306498B (zh) | 文字渲染方法及装置 | |
CN117391192B (zh) | 基于图数据库的利用llm从pdf构建知识图谱的方法及装置 | |
CN114842982B (zh) | 一种面向医疗信息系统的知识表达方法、装置及系统 | |
CN111160445A (zh) | 投标文件相似度计算方法及装置 | |
CN110110050B (zh) | 一种新闻事件生成式问答数据集的生成方法 | |
CN114579796B (zh) | 机器阅读理解方法及装置 | |
CN113283231B (zh) | 获取签章位的方法、设置系统、签章系统及存储介质 | |
CN115481599A (zh) | 文档的处理方法、装置、电子设备和存储介质 | |
CN114637505A (zh) | 一种页面内容提取方法和装置 | |
CN112328246A (zh) | 页面组件生成方法、装置、计算机设备及存储介质 | |
CN117252153B (zh) | 用于大语言模型的富文本数据处理方法、设备、存储介质 | |
CN113569974B (zh) | 编程语句纠错方法、装置、电子设备及存储介质 | |
CN112181389B (zh) | 生成教程片段的api标记的方法、系统及计算机设备 | |
CN113255292B (zh) | 基于预训练模型的端到端文本生成方法及相关设备 | |
CN117494806B (zh) | 基于知识图谱和大语言模型的关系抽取方法、系统及介质 | |
CN117077664B (zh) | 一种文本纠错数据的构造方法、装置和存储介质 | |
CN115880697B (zh) | 图像搜索方法、装置、可读存储介质及电子设备 | |
CN110457659B (zh) | 条款文档生成方法及终端设备 | |
CN113779218B (zh) | 问答对构建方法、装置、计算机设备和存储介质 | |
CN117933209A (zh) | 信息处理方法、装置、电子设备和可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |