CN117076718A - 一种基于大语言模型的图数据库查询处理系统及方法 - Google Patents
一种基于大语言模型的图数据库查询处理系统及方法 Download PDFInfo
- Publication number
- CN117076718A CN117076718A CN202311062558.8A CN202311062558A CN117076718A CN 117076718 A CN117076718 A CN 117076718A CN 202311062558 A CN202311062558 A CN 202311062558A CN 117076718 A CN117076718 A CN 117076718A
- Authority
- CN
- China
- Prior art keywords
- entity
- prompt
- graph database
- language model
- query
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000000605 extraction Methods 0.000 claims abstract description 34
- 238000003672 processing method Methods 0.000 claims description 5
- 238000012549 training Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 239000003337 fertilizer Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 229920004934 Dacron® Polymers 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000005020 polyethylene terephthalate Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- 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
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/189—Automatic justification
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于大语言模型的图数据库查询处理系统及方法,所述系统包括实体提取模块,用于对获取的查询问题添加给定的第一提示后,送入大语言模型中进行实体提取;实体对齐模块,通过得到的第二提示指导大语言模型将提取的实体和图数据库中的实体进行对齐;语句生成模块,根据对齐结果,生成查询语句;数据返回模块,将生成的查询语句送入图数据库,并返回反馈数据;报告生成模块,将反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将该输入提示作为约束,传送至大语言模型;其效果是:通过提示将图数据库中的关联信息喂给大模型,实现了不需微调为大模型补充知识,允许更长的文本输入,生成更准确的回复。
Description
技术领域
本发明涉及信息查询技术领域,具体涉及一种基于大语言模型的图数据库查询处理系统及方法。
背景技术
大语言模型(Large Language Model)是指使用大量文本数据进行训练的自然语言处理(NLP)模型,它能够自动学习语言规则和语义知识,并能够生成自然语言文本、回答问题、执行文本分类等任务。大语言模型通常需要大量的计算资源和数据来训练,训练数据通常来自于大量的互联网文本,训练完成后,这些模型可以被用于各种自然语言处理任务,如文本生成、机器翻译、文本摘要、情感分析和问答系统等。目前最流行的大语言模型有GPT-4和LaMAD。
通用大语言模型在训练过程中通过处理大量的文本数据来学习知识,但是应用到具体专业领域(如在私域/专业领域图数据库进行查询语言)的大语言模型就需要使用特定领域的知识库进行预训(pre-training)练,并针对该领域的语言任务进行微调(fine-tuning)。
目前这种方式存在以下两个技术问题:
(1)知识库有时可能会过时。例如,GPT-4的知识截止日期为2021年9月,这意味着在该日期之后发生的事件和新的科学发现等信息将无法回答;
(2)知识库微调通常需要更多的人工参与,并且需要更多的计算资源,模型的规模越大,微调(fine-tune)的成本就会越高,需要的计算资源和存储空间就越多,同时训练时间也会更长;
其次现有的最常用来做实体提取的语言模型BERT有很多局限性,例如,输入文本的长度受到BERT模型最大序列长度的限制,这可能会影响模型在处理长文本时的性能。
发明内容
针对背景技术中所提及的技术缺陷,本发明实施例的目的在于提供一种基于大语言模型的图数据库查询处理系统及方法。
本发明提供的技术方案为,第一方面:一种基于大语言模型的图数据库查询处理系统,应用于图数据库,所述系统包括:
实体提取模块,用于获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
实体对齐模块,用于通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
语句生成模块,用于根据所述对齐结果,生成所述图数据库的查询语句;
数据返回模块,用于将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
报告生成模块,用于将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
优选地,添加给定的第一提示后,还通过few shot learning prompt从给定的第一提示中提取实体并提供一系列更新,且每个更新都具有[ENTITY,TYPE]格式;其中,ENTITY是实体名称,TYPE是实体类型。
优选地,所述字符串包括cls_prompt的字符串,该字符串包含有多个问题和答案的模板。
优选地,所述第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐,具体包括以下步骤:
构造所述cls_prompt,所述cls_prompt使用format方法构造,将节点名称node和prop_cls的键列表转为字符串,插入到问题模板中,从而找到一个给定单词与一个给定单词列表中语义最接近的词的cls_prompt;
调用所述大语言模型,传入构造的cls_prompt,以获取预测结果;
判断所述预测结果是否在prop_cls的键中,若在,则表示实体与图数据库中的节点属性实现了正确匹配;
将对应的节点类型,属性,预测词/这个实体添加到一个三元组列表,实现与所述图数据库中的实体进行对齐。
优选地,所述查询语句通过以下步骤生成:
将匹配正确时,则记录实体名称、类别和属性以得到三元组,并记录在对应的三元组列表中;
根据上一步种记录的各个类型的三元组,根据Cypher规则生成一系列Cypher查询语句并存入列表,以实现用于检索对应实体名称的相关实体。
优选地,所述prompt_template模板包含两个占位符,用于分别代入所述节点和边信息以及用户的查询问题。
第二方面:一种基于大语言模型的图数据库查询处理方法,应用于第一方面所述的一种基于大语言模型的图数据库查询处理系统,所述方法包括:
大语言模型的实体提取步骤,具体包括:
通过获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
实体对齐步骤,具体包括:
通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
根据所述对齐结果,生成所述图数据库的查询语句;
将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
采用上述技术方案,本发明提出的一种基于大语言模型的图数据库查询处理系统及方法,通过将大语言模型和图数据库相结合,使用特定的提示来引导大语言模型基于用户的查询问题进行实体提取、生成高质量的相关回答和实体对齐,然后生成查询语句并在图数据库中搜寻并召回用户所需的节点和关系,并生成新的提示传送至大语言模型,生成更准确的回复;进而实现让用户通过自然语言来查询图数据库,而不需要掌握复杂的查询语言;用户可以更快速、更直观地获取所需信息;此外,通过使用大语言模型,还能够提供更精确、更相关的查询结果;
从而不需微调为大模型补充知识,我们可以在低资源和少量样本的情况下,通过提示信息将图数据库信息喂给大模型,补充大模型的知识,大模型再根据图数据库的反馈生成更准确的回复;
同时,我们使用的大语言模型允许更长的文本作为输入来做的实体提取和对齐,相较于现有BERT模型可以接受更长的文本输入,从而获取更多信息,在降低开发成本和难度的同时,也克服了BERT模型所存在的局限性。
附图说明
图1为本发明实施例所提供的一种基于大语言模型的图数据库查询处理系统的原理框图;
图2为本发明实施例所提供的一种基于大语言模型的图数据库查询处理方法的流程图。
具体实施方式
下面将详细描述本发明的具体实施例,应当注意,这里描述的实施例只用于举例说明,并不用于限制本发明。在以下描述中,为了提供对本发明的透彻理解,阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本发明。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本发明至少一个实施例中。因此,在整个说明书的各个地方出现的短语“在一个实施例中”、“在实施例中”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和、或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。
需要注意的是,本实施例的技术用语,除了另有说明,均为所属技术领域所理解的通常含义。
提示工程:prompt engineering是一种技术,它可以通过设计特定的输入提示来引导大语言模型生成特定类型的输出。
实体提取:实体提取(Entity Extraction),也称实体识别(Named EntityRecognition,NER),是指从文本中自动识别和提取出具有特定意义的实体,如人名、组织机构、地点、时间、日期等。
实体对齐:实体对齐(Entity Alignment)是指将不同数据源中表示相同实体的不同标识符对齐起来的过程。在跨多个数据源或知识图谱的情况下,同一实体可能会有不同的标识符,这会给数据集成和查询造成困难。因此,实体对齐旨在识别这些相同的实体并将它们映射到同一标识符,从而消除潜在的混淆和冗余。
如图1所示,本发明实施例所提供的一种基于大语言模型的图数据库查询处理系统,其特征在于,应用于图数据库,所述系统包括:
实体提取模块,用于获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
实体对齐模块,用于通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
语句生成模块,用于根据所述对齐结果,生成所述图数据库的查询语句;
数据返回模块,用于将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
报告生成模块,用于将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
本实施例中,所述大语言模型以GPT为例进行说明;用户通过自然语言提出一个查询问题。
实施时,添加给定的第一提示后,还通过few shot learning prompt从给定的第一提示中提取实体并提供一系列更新,且每个更新都具有[ENTITY,TYPE]格式;其中,ENTITY是实体名称,TYPE是实体类型。
具体地,本实施例中,提示语句有多条,使用了的7-shot learning prompt,这个prompt描述了一个任务,从而帮助大模型理解用户的意图;即从给定的提示中提取实体并提供一系列更新。
基于多个prompt-updates示范示例,然后指示GPT从中提取/推断出实体并更新列表;并且提示GPT实体名称应包含尽可能多的字符,尽量不要将单词分开,组合在一起才能代表完整的含义;
Prompt表示的含义为提示,利用prompt中给出了一些示例,说明如何从给定的提示中提取实体并生成更新。例如,对于提示“中国移动生产的基站都有哪些”,可以提取出实体“中国移动”,并确定其类型为“公司”。因此,对应的更新为[[“中国移动”,“公司”]]。以下为一个Prompt(即第一提示)的举例。Example:
question:中国移动生产的基站都有哪些
answer:[["中国移动","公司"]]
question:请介绍一下阿里巴巴这家公司
answer:[["阿里巴巴","公司"]]
question:你知道腾讯这家企业么
answer:[["腾讯","公司"]]
question:科大讯飞推出了一款叫Alpha蛋的产品
answer:[["讯飞","公司"],["Alpha蛋","产品"]]
question:介绍一下华为基站
answer:[["华为基站","产品"]]
question:移动咪咕在北京有哪些业务
answer:[["移动咪咕","公司"],["北京","城市"]]
question:芯片行业竞争激烈,主要有哪几家公司
answer:[["芯片行业","行业"]]
question:位于合肥的新能源公司有哪些
answer:[["合肥","城市"],["新能源","行业"]]
以上整个举例的段落都是prompt,包括多条提示语句,每条提示语句均包含对应的问题与答案;这个prompt帮助和指导了大数据模型从给定的提示中提取实体。
进一步地,所述字符串包括cls_prompt的字符串,该字符串包含有多个问题和答案的模板;这些问题和答案旨在助模型理解如何找到一个给定单词与一个给定单词列表中语义最接近的单词;通过这个prompt我们指导大模型将用户自然语言中的实体和图数据库中的实体进行对齐;具体包括以下步骤:
构造所述cls_prompt,所述cls_prompt使用format方法构造,将节点名称node和prop_cls的键列表转为字符串,插入到问题模板中,从而找到一个给定单词与一个给定单词列表中语义最接近的词的cls_prompt;
调用所述大语言模型,传入构造的cls_prompt,以获取预测结果;
判断所述预测结果是否在prop_cls的键中,若在,则表示实体与图数据库中的节点属性实现了正确匹配;
将对应的节点类型,属性,预测词/这个实体添加到一个三元组列表,实现与所述图数据库中的实体进行对齐。
这部分是利用GPT做语义匹配,主要借助GPT的迁移能力,根据示例学习(few-shotlearning)将用户想要查询的实体和图数据库中的实体进行对齐。其中,构造cls_prompt先给出两个示例prompt,格式为"问题:词语对应词表中最相近的词是?回答:“词”
使用format方法构造cls_prompt,将节点名称node和prop_cls的键列表转为字符串,插入到问题模板中;prop_cls是一个字典,用来存储节点属性列中的属性值和对应的属性名称之间的映射关系。如,prop_cls={'北京':'城市名',‘上海':'城市名'}
这样就形成了类似于“问题:找到”帝都”与[‘北京’,’新京','海淀']中语义最接近的一个词”的cls_prompt;
调用GPT模型,传入构造的cls_prompt,获取预测结果。比如回答的:‘北京’
判断预测结果‘北京’是否在prop_cls的键中;如果在,根据将(节点类型,属性,预测词/这个实体)添加到一个三元组列表(之后的流程里面要用)
如果不在,给出警告,说明预测结果无法匹配属性列。
基于上述流程中,如果预测结果‘北京’在prop_cls的键中,也就是用户的实体对齐后与我们图数据库中的节点属性匹配上了,则记录实体名称、类别和属性,以生成Cypher查询;再根据节点类型(ntype)将(节点类型,属性名称,预测词)添加到一个三元组列表。
具体地,所述查询语句通过以下步骤生成:
将匹配正确时,则记录实体名称、类别和属性以得到三元组,并记录在对应的三元组列表中;
根据上一步种记录的各个类型的三元组,根据Cypher规则生成一系列Cypher查询语句并存入列表,以实现用于检索对应实体名称的相关实体。
需要说明的是,每个三元组代表一个节点,根据cypher规则(rule based)生成一系列Cypher查询语句并存入列表,这些查询语句用来检索实体类型(比如:城市)与其他类型实体之间的至少一个关系的路径;
如,MATCH p=(n:公司)-[*1..2]-(e:城市)WHERE n.名称=‘豆瓣'e.名称='北京'RETURN p。即:返回从标签为’公司’且’名称’属性值为’豆瓣’的节点出发,通过1到2个关系连接到标签为’城市’且’名称’为’北京’的节点的所有路径。如果两个类型的元组都有结果(比如城市和公司的节点都在库里面),我们生成查询检索”城市"实体与“公司”类型实体之间的关系。如果只有一种类型(如,“城市”的元组,我们仅生成检索该类型实体之间(城市与城市)关系的查询。
然后我们使用prompt_template模版来生成叫report_prompt的提示语,这个提示语代入了之前查询返回的节点信息和边信息以及原始的用户提问(查询问题),从而能帮助大数据模型生成更准确,与我们图数据库里数据更相关的报告。
上述方案,通过将大语言模型和图数据库相结合,使用特定的提示来引导大语言模型对用户查询进行实体提取、生成高质量的相关回答和实体对齐,然后生成查询语句并在图数据库中搜寻并召回用户所需的节点和关系;进而实现让用户通过自然语言来查询图数据库,而不需要掌握复杂的查询语言;用户可以更快速、更直观地获取所需信息;此外,通过使用大语言模型,还能够提供更精确、更相关的查询结果;
从而不需微调为大模型补充知识,我们可以在低资源和少量样本的情况下,通过提示中的提示语句将图数据库信息喂给大模型,补充大模型的知识,大模型再根据图数据库的反馈生成更准确的回复;
同时,我们使用的大语言模型允许更长的文本作为输入来做的实体提取和对齐,相较于现有BERT模型可以接受更长的文本输入,从而获取更多信息,在降低开发成本和难度的同时,也克服了BERT模型所存在的局限性。
基于同样的发明构思,参照图2,本发明实施例还提供了一种基于大语言模型的图数据库查询处理方法,应用于前文所述的一种基于大语言模型的图数据库查询处理系统,所述方法包括:
S101,大语言模型的实体提取步骤,具体包括:
通过获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
S102,实体对齐步骤,具体包括:
通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
S103,根据所述对齐结果,生成所述图数据库的查询语句;
S104,将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
S105,将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
进一步地,为更好理解用户的意图,所述方法还包括:
添加给定的第一提示后,还通过few shot learning prompt从给定的第一提示中提取实体并提供一系列更新,且每个更新都具有[ENTITY,TYPE]格式;其中,ENTITY是实体名称,TYPE是实体类型。
所述第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐,具体包括以下步骤:
构造所述cls_prompt,所述cls_prompt使用format方法构造,将节点名称node和prop_cls的键列表转为字符串,插入到问题模板中,从而找到一个给定单词与一个给定单词列表中语义最接近的词的cls_prompt;
调用所述大语言模型,传入构造的cls_prompt,以获取预测结果;
判断所述预测结果是否在prop_cls的键中,若在,则表示实体与图数据库中的节点属性实现了正确匹配;
将对应的节点类型,属性,预测词/这个实体添加到一个三元组列表,实现与所述图数据库中的实体进行对齐。
在本实施例中,引入的提示,以及各提示对应的提示语句均是帮助大模型理解客户的意图。
需要说明的是,方法实施例中具体的实施步骤和有益效果可参照前述系统实施例的描述,在此不再赘述。
通过上述方案,从而具有以下优点:
1.不需微调为大语言模型补充知识。我们可以在低资源和少量样本的情况下,通过prompt将图数据库信息喂给大模型,可以补充大模型的知识,再根据图数据库生成更准确的回复。
2.降低开发成本。相比从零开始定制或微调传统语言模型(BERT)来做NER,entityalignment,我们对大模型进行prompt engineering,降低了开发成本和难度,并获取了媲美监督模型的准确度。
3.更长输入。我们使用的大语言模型允许更长的文本作为输入(2048token)来做的NER和entity alignment,相较于现有BERT模型可以接受更长的文本输入,从而获取更多信息,生成更精确的回复。
4.低资源和少量样本。通过使用prompt engineering的技术,我们可以实现在低资源(不用微调)和只有少量样本/零样本的情况下使用大语言模型做实体提取和对齐。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述实施例仅仅是示意性的,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种基于大语言模型的图数据库查询处理系统,其特征在于,应用于图数据库,所述系统包括:
实体提取模块,用于获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
实体对齐模块,用于通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
语句生成模块,用于根据所述对齐结果,生成所述图数据库的查询语句;
数据返回模块,用于将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
报告生成模块,用于将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
2.根据权利要求1所述的一种基于大语言模型的图数据库查询处理系统,其特征在于,添加给定的第一提示后,还通过few shot learning prompt从给定的第一提示中提取实体并提供一系列更新,且每个更新都具有[ENTITY,TYPE]格式;其中,ENTITY是实体名称,TYPE是实体类型。
3.根据权利要求1所述的一种基于大语言模型的图数据库查询处理系统,其特征在于,所述字符串包括cls_prompt的字符串,该字符串包含有多个问题和答案的模板。
4.根据权利要求3所述的一种基于大语言模型的图数据库查询处理系统,其特征在于,所述第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐,具体包括以下步骤:
构造所述cls_prompt,所述cls_prompt使用format方法构造,将节点名称node和prop_cls的键列表转为字符串,插入到问题模板中,从而找到一个给定单词与一个给定单词列表中语义最接近的词的cls_prompt;
调用所述大语言模型,传入构造的cls_prompt,以获取预测结果;
判断所述预测结果是否在prop_cls的键中,若在,则表示实体与图数据库中的节点属性实现了正确匹配;
将对应的节点类型,属性,预测词/这个实体添加到一个三元组列表,实现与所述图数据库中的实体进行对齐。
5.根据权利要求4所述的一种基于大语言模型的图数据库查询处理系统,其特征在于,所述查询语句通过以下步骤生成:
将匹配正确时,则记录实体名称、类别和属性以得到三元组,并记录在对应的三元组列表中;
根据上一步种记录的各个类型的三元组,根据Cypher规则生成一系列Cypher查询语句并存入列表,以实现用于检索对应实体名称的相关实体。
6.根据权利要求5所述的一种基于大语言模型的图数据库查询处理系统,其特征在于,所述prompt_template模板包含两个占位符,用于分别代入所述节点和边信息以及用户的查询问题。
7.一种基于大语言模型的图数据库查询处理方法,其特征在于,应用于权利要求1所述的一种基于大语言模型的图数据库查询处理系统,所述方法包括:
大语言模型的实体提取步骤,具体包括:
通过获取用户的查询问题,并对所述查询问题添加给定的第一提示后,送入预设的大语言模型中进行处理,以实现实体提取;其中,所述第一提示包括至少一条提示语句;
实体对齐步骤,具体包括:
通过得到的第二提示指导所述大语言模型将实体提取的结果和所述图数据库中的实体进行对齐;其中,所述第二提示基于定义的字符串生成;
根据所述对齐结果,生成所述图数据库的查询语句;
将生成的查询语句送入所述图数据库中搜寻,并返回所得到的反馈数据;其中,所述反馈数据包括节点和边信息;
将所述反馈数据和查询问题代入到构建的第三提示中,生成新的输入提示,并将所述输入提示作为约束,传送至所述大语言模型,使得所述大语言模型生成更准确,与所述图数据库里数据更相关的报告数据;其中,所述第三提示基于预先定义的prompt_template模板来生成。
8.根据权利要求7所述的一种基于大语言模型的图数据库查询处理方法,其特征在于,所述方法还包括:
添加给定的第一提示后,还通过few shot learning prompt从给定的第一提示中提取实体并提供一系列更新,且每个更新都具有[ENTITY,TYPE]格式;其中,ENTITY是实体名称,TYPE是实体类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311062558.8A CN117076718A (zh) | 2023-08-22 | 2023-08-22 | 一种基于大语言模型的图数据库查询处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311062558.8A CN117076718A (zh) | 2023-08-22 | 2023-08-22 | 一种基于大语言模型的图数据库查询处理系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117076718A true CN117076718A (zh) | 2023-11-17 |
Family
ID=88701882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311062558.8A Pending CN117076718A (zh) | 2023-08-22 | 2023-08-22 | 一种基于大语言模型的图数据库查询处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076718A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117251473A (zh) * | 2023-11-20 | 2023-12-19 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
CN117785177A (zh) * | 2023-12-26 | 2024-03-29 | 北京汉勃科技有限公司 | 可视化大模型微调方法和装置 |
-
2023
- 2023-08-22 CN CN202311062558.8A patent/CN117076718A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117251473A (zh) * | 2023-11-20 | 2023-12-19 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
CN117251473B (zh) * | 2023-11-20 | 2024-03-15 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
CN117785177A (zh) * | 2023-12-26 | 2024-03-29 | 北京汉勃科技有限公司 | 可视化大模型微调方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115238101B (zh) | 一种面向多类型知识库的多引擎智能问答系统 | |
CN109325040B (zh) | 一种faq问答库泛化方法、装置及设备 | |
CN117076718A (zh) | 一种基于大语言模型的图数据库查询处理系统及方法 | |
CN107885844A (zh) | 基于分类检索的自动问答方法及系统 | |
CN113157885B (zh) | 一种面向人工智能领域知识的高效智能问答系统 | |
KR20050032937A (ko) | 언어분석 기반 자동 질문/정답 색인 방법과 그 질의응답방법 및 시스템 | |
CN110162675B (zh) | 应答语句的生成方法、装置、计算机可读介质及电子设备 | |
US11487795B2 (en) | Template-based automatic software bug question and answer method | |
CN112328800A (zh) | 自动生成编程规范问题答案的系统及方法 | |
CN110866089A (zh) | 基于同义多语境分析的机器人知识库构建系统及方法 | |
CN118170894A (zh) | 一种知识图谱问答方法、装置及存储介质 | |
CN117251455A (zh) | 一种基于大模型的智能报表生成方法及其系统 | |
CN111666374A (zh) | 一种在深度语言模型中融入额外知识信息的方法 | |
Dumal et al. | Adaptive and automated online assessment evaluation system | |
CN117828057A (zh) | 知识问答方法、装置、设备和存储介质 | |
CN117932022A (zh) | 一种智能问答方法、装置、电子设备及存储介质 | |
CN118035405A (zh) | 一种基于大模型的知识库问答构建方法及装置 | |
CN113190692A (zh) | 一种知识图谱的自适应检索方法、系统及装置 | |
CN108255818B (zh) | 利用分割技术的复合式机器翻译方法 | |
CN114625759B (zh) | 模型训练方法、智能问答方法、设备、介质及程序产品 | |
CN115757720A (zh) | 基于知识图谱的项目信息搜索方法、装置、设备和介质 | |
van Schooten et al. | Handling speech input in the Ritel QA dialogue system | |
CN114238595A (zh) | 一种基于知识图谱的冶金知识问答方法及系统 | |
CN114328871A (zh) | 一种基于nlp技术和内置知识库的智能客服问题解答方法 | |
CN113849621A (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 |