wap网站前景,如何不要钱做网站,wordpress怎么加动态背景图图片,有哪些可以做兼职的翻译网站吗利用检索和存储访问知识库上增强大型语言模型 摘要引言2 相关研究3方法3.1 任务定义3.2 知识检索3.2.1 代码实现3.2.2 实体链接3.2.3 获取实体信息3.2.4 查找实体或值3.2.5 查找关系 3.3 知识存储 4 实验4.1 实验设置4.2 流行知识库上的查询4.3 基于知识的问题回答 摘要
大型语… 利用检索和存储访问知识库上增强大型语言模型 摘要引言2 相关研究3方法3.1 任务定义3.2 知识检索3.2.1 代码实现3.2.2 实体链接3.2.3 获取实体信息3.2.4 查找实体或值3.2.5 查找关系 3.3 知识存储 4 实验4.1 实验设置4.2 流行知识库上的查询4.3 基于知识的问题回答 摘要
大型语言模型LLM在自然语言处理领域展现出了令人印象深刻的影响但它们仍然在几个方面存在问题例如完整性、及时性、忠实度和适应性。尽管最近的研究工作集中在将LLM与外部知识源进行连接但知识库KB的整合仍然研究不足且面临多个挑战。 本文介绍了KnowledGPT这是一个全面的框架用于将LLM与各种知识库连接起来促进知识的检索和存储。
检索过程采用了思维启发程序它以代码格式生成用于KB的搜索语言并具有预定义的KB操作功能。 除了检索KnowledGPT还提供了将知识存储在个性化知识库中的能力以满足个体用户的需求。
通过广泛的实验证明通过将LLM与KB整合KnowledGPT能够比纯粹的LLM更好地回答需要世界知识的更广泛的问题利用广为人知的知识库中已有的知识以及提取到个性化知识库中的知识
引言
大型语言模型LLMs在各种自然语言处理NLP任务中取得了重大影响如翻译摘要和问答同时还处理了来自现实世界用户的各种请求。它们卓越的能力源于不断增加的参数和训练数据这使得它们具有庞大的知识和新兴能力如思维链推理和上下文学习。然而LLMs在处理事实知识方面仍然存在困难包括完整性、及时性、忠实性和适应性等问题。
LLMs在及时更新和领域专业知识方面存在局限性。这些模型可能生成不忠实或“幻觉”知识引发可靠性和伦理方面的担忧。由于成本和可访问性等限制LLMs几乎无法通过持续训练来纳入新知识这妨碍了调整这些模型以适应特定知识需求的能力。
因此这些知识需求鼓励对将LLMs与外部知识源进行整合的全面研究。
为解决这个问题最近已经做出了一些努力使LLMs能够访问插拔式知识源如知识库KBs搜索引擎文档记忆和数据库以为LLMs提供世界知识通常通过LLM生成的API调用。本文专注于知识库KBs这是一种特殊形式的知识源具有以实体为中心的知识如关系三元组和实体描述。
一方面已经构建了各种知识库以实现其在应用程序中的实际有效性以及其表示的简洁性、表达性、可解释性和可见性。另一方面以前的方法主要集中在文档语料库上但在应用于知识图谱时显示出一些缺陷如图1所示从文档语料库和知识库中检索结果的比较。在这种情况下从语料库中检索的文档没有提供足够的知识来回答查询而从知识库中可以检索到足够相关的知识。 因此将LLMs与知识库连接起来具有重要意义但仍然未经充分探索。
最近一些工作尝试将LLMs与知识库连接起来。Toolformer查询维基百科以获取感兴趣实体的描述信息以回答相关问题。Graph-Toolformer和ToolkenGPT使LLMs对知识图谱如Freebase进行推理。RET-LLM通过从过去的对话中提取的关系三元组构建个性化的知识图谱内存供将来使用与LangChain的KG Index和Llama Index的实际工作并行进行。 然而在这个方向上仍然存在许多挑战如图2所示。
LLMs在复杂和各种问题中浏览知识库的过程仍然是一个问题特别是对于需要跨多个和嵌套的KB条目获取信息的多跳问题而言。在知识库中将实体和关系与文本提及对齐是一项具有挑战性的任务因为它们需要映射到广泛的自然语言表达并考虑到知识库中的严重歧义。虽然基于三元组的知识图谱表示整洁且可解释但与自然语言相比它只涵盖有限的信息这表明需要新的知识库表示形式来供LLMs使用。
在这篇论文中提出了一个全面的框架——KnowledGPT有效地将LLMs与各种知识库连接起来提高处理复杂问题、消歧和知识表示的能力。KnowledGPT实现了一个统一的访问接口用于在不同的知识库上进行操作包括广泛使用的公共知识库和个性化知识库存储。KnowledGPT访问以实体为导向的知识包括实体描述和关系三元组。 对于给定的查询KnowledGPT通过三个步骤进行知识库搜索
搜索代码生成、搜索执行答案生成。
KnowledGPT采用了“思维程序”PoT提示的方式通过生成委托搜索步骤并执行的Python代码与知识库交互。该代码封装了用于访问知识库的函数例如实体链接。之后KnowledGPT整合检索到的知识生成响应。如果KnowledGPT判断问题不需要来自知识库的知识或者检索到的知识不足或不存在问题将由LLM直接回答。此外KnowledGPT还可以从以各种形式表示的非结构化文本中提取知识以丰富个性化知识库。
总的来说本文的贡献可以总结如下
提出了KnowledGPT一个全面的框架使LLMs能够从知识库中检索知识。它在处理复杂搜索和消歧等重要实际挑战方面显著推进了LLMs和知识库之间的协作。提出了使用个性化知识库作为LLMs的符号记忆将以实体为导向的知识封装成三种形式的表示。与仅包含三元组的知识库相比这扩大了符号记忆中的知识范围。通过实验证明了我们提出的方法的有效性。结果突出了将知识库作为LLMs的符号记忆的实用性和潜力。
2 相关研究
LLMs的外部知识和记忆 大型语言模型LLMs如GPT-4和LLaMA在各种应用中展示了令人印象深刻的性能。然而它们在考虑完整性、及时性、真实性和适应性方面仍然存在困难。因此最近的许多工作都致力于为LLMs提供外部知识。互联网增强语言模型以及新的Bing和ChatGPT“Browse with Bing”插件允许LLMs通过搜索引擎或网络浏览器访问最新信息。像REALM这样的检索增强方法RAG通过文档语料库增强LLMs这也越来越多地被最近流行的LLMs如ChatGPT采用作为记忆单元。ChatDB通过数据库作为符号记忆来增强LLMs。
LLMs的知识库 一些最近的研究致力于通过外部KB增强LLMs的知识或者将KB作为符号记忆使用通常是通过让LLMs生成KB操作的API调用。Toolformer训练LLMs搜索维基百科中的实体文本。Graph-Toolformer使LLMs能够在知识图谱上进行推理。然而它跳过了实体链接步骤因此需要实体id如/m/053yx作为输入而不是它们的名称。ToolkenGPT保持LLMs冻结并为KB中的关系训练工具嵌入以支持关系查询。RETTLLM与LangChain和Llama-Index的KG记忆类似从用户输入中提取关系三元组并将其存储在符号KG记忆中。与以前的工作相比KnowledGPT支持各种知识表示以及公共和私有知识库如表1所示。 基于知识的问答KBQA 是针对特定KG的自然语言查询搜索答案实体或关系。现有的KBQA系统主要基于语义解析或信息抽取其中越来越多地涉及语言模型。语义解析方法利用语义解析器将自然语言查询转换为中间逻辑形式如SPARQL和程序然后在知识库上执行这些形式以获取答案。然而生成的逻辑形式通常是不可执行的因此无法得到正确的答案。Pangu训练了一个语言模型鉴别器来评估候选计划的概率。信息抽取方法通常结合检索和推理。这些方法在处理单跳检索方面表现出有效性。然而它们在处理多跳检索时面临存储和计算成本的挑战其中每个添加的跳数关系数量呈指数增长。
KnowledGPT与KBQA方法在两个方面不同。 1许多KBQA方法是专为关于知识图谱中关系三元组的特定查询而设计的而KnowledGPT通过从知识库中以各种形式增强LLMs来响应各种用户查询。 2KBQA方法通常在特定的数据集和知识图谱上进行训练而KnowledGPT不需要训练并且可以轻松适应不同的LLMs和知识库。
3方法
本节介绍了KnowledGPT这是一个将LLMs与知识库集成的综合框架。首先给出了KnowledGPT的两个任务的定义即知识检索和知识存储第3.1节。然后详细介绍了KnowledGPT的检索过程第3.2节和存储过程第3.3节的细节。
3.1 任务定义
KnowledGPT通过各种知识库包括个性化知识库作为可写入的符号记忆为LLMs提供外部知识。给定一个自然语言的用户输入KnowledGPT承担两个主要任务即知识检索和知识存储。在知识检索任务中模型通过提供的知识库搜索相关知识来回答用户查询。在知识存储任务中模型从用户输入中提取知识并将其插入个性化知识库。
3.2 知识检索
KnowledGPT采用了一个三步骤的过程来利用知识库中的知识回答用户查询如图3所示。首先它生成一段查询特定知识库访问的搜索代码作为逻辑形式。然后执行搜索代码以检索相关知识。最后KnowledGPT读取检索到的知识并回答查询。 采用了思维程序PoT提示方法它使用由LLMs生成的Python代码作为搜索语言。在本文中使用GPT-4作为LLMs。代码被封装在一个搜索函数中如图3中的黄色部分所示其中包括内置的Python函数和三个自定义的KB函数用于促进LLMs与知识库的交互
get_entity_info接受一个实体作为输入并返回其百科描述。find_entity_or_value接受一个由实体和关系组成的查询作为输入并输出相应实体或值的列表。find_relationship接受两个实体作为输入并返回它们之间的关系列表。
特别地每个实体或关系都表示为候选别名的列表而不是单个名称以有效处理同义词。除了上述输出之外这些KB函数还返回一个记录函数调用和结果的消息。然后搜索函数的整体输出是通过连接各个KB函数调用的消息获得的。在第7节中显示了提示信息。
然后执行搜索函数以从知识库中检索所需的知识。在执行之前代码可能会进行装饰例如添加try-except语句和特定于知识库的访问器对象这在第3.2.1节中详细说明。分别为每个知识库执行搜索函数并将它们的结果连接起来。
最后将检索到的知识提供给LLMs并要求LLMs根据检索到的知识回答用户的查询。在LLMs判断问题不需要外部知识或检索到的知识不足以回答查询的情况下LLMs将忽略检索到的信息并独立回答用户查询。
3.2.1 代码实现
接下来介绍执行生成代码的KB函数的实现。在两个级别上实现这些函数统一级别和KB特定级别。
统一级别的函数提供了对不同KB的操作的统一接口。这些函数包括LLMs直接生成的三个KB函数get_entity_info、find_entity_or_value、find_relationship以及一个entity_linking函数用于将LLMs生成的实体别名与KB中的实体对齐。
在KB特定级别上的函数通过调用相应的API对每个特定的KB执行操作。基本上只需要为每个KB实现三个函数_get_entity_info、_entity_linking和_get_entity_triples。在本文中用下划线在这些函数前面表示。
在执行之前对生成的代码进行装饰。用try-except语句包装代码这样如果代码在后续步骤中出现故障搜索函数仍然可以返回成功步骤中的有价值的结果。此外将用户查询作为全局变量传递给搜索函数。
3.2.2 实体链接
实体链接是将自然语言中的实体提及与知识库中的实体对齐的重要步骤对于将 LLMs 与知识库集成起来是必不可少的。这是至关重要的因为一个实体可能会被不同的提及方式所引用例如Donald Trump 和 President Trump而一个名词短语也可以指代不同的实体例如the fruit apple 和 the tech company Apple。 entity_linking函数包括三个步骤如图4所示。 首先调用KB特定的_entity_linking函数来获取候选实体。它基本上以查询和实体别名作为输入并利用对应KB提供的实体链接API同时包含实体名称和上下文和搜索API仅包含实体名称来进行操作。 其次调用_get_entity_info函数在第3.2.3节中介绍来收集候选实体的信息。每个实体信息将被截断为最大长度。 最后向LLMs提供函数输入包括查询、实体和关系的别名以及候选实体及其信息并让LLMs确定最合适的实体。
3.2.3 获取实体信息
get_entity_info函数用于检索特定实体的信息。它首先使用entity_linking函数将实体别名链接到KB中的实体。随后它调用KB特定的_get_entity_info函数该函数返回KB中给定实体的信息包括实体描述和三元组信息。调用_get_entity_triples函数来收集它的三元组信息。KB特定的_get_entity_info函数嵌套在entity_linking函数中使其成为统一级别所有KB函数的一个组成部分。
3.2.4 查找实体或值 给定一个由实体和关系组成的查询find_entity_or_value函数旨在检索相应的实体或属性值。该函数经历了几个步骤如算法1所示。它首先调用entity_linking函数将实体别名与KB中的相应实体关联起来。然后它调用内部的_find_entity_or_value函数其中包括一个KB特定的_get_entity_triples函数用于检索与实体相关的所有三元组。随后根据它们与输入关系别名的相似性对这些三元组中的关系进行排序。在这里我们使用句子嵌入的余弦相似度来衡量相似性而不是使用符号度量这考虑了关系的同义词。然后我们选择具有最高相似度分数的关系并从所有相应的三元组中返回实体或属性值。为了提高我们方法的鲁棒性如果找不到三元组我们将在实体描述中进一步搜索关系。如果描述中存在该关系我们返回相应的句子。否则我们返回整个描述该描述可能仍然提供LLMs所需的相关细节。
3.2.5 查找关系
给定一个由两个实体组成的查询find_relationship函数旨在检索它们之间的关系。这个函数类似于find_entity_or_value。不同之处在于在检索第一个实体的三元组或实体信息后find_relationship函数继续搜索第二个实体而不是关系。如果这次初始搜索失败函数会交换第一个实体和第二个实体并再次进行搜索。与关系相似度不同我们通过Levenshitein距离d来衡量实体的相似性。如果两个实体名称有单词重叠实体相似性计算为100 - d否则为0。
3.3 知识存储
虽然公共知识库提供了丰富的世界知识但仍无法涵盖用户感兴趣的所有知识。为了满足用户的个人知识需求KnowledGPT引入了个性化知识库 (PKB)作为LLMs的符号记忆使用户能够存储和访问专业知识。PKB中的知识是从用户提供的文档中提取的。当用户想要将知识添加到PKB中时我们提示LLMs从提供的文档中提取知识提示如Sec A所示。
考虑三种形式的知识表示包括实体描述、关系三元组和实体-方面信息如图2所示。这与RET-LLM 、LangChain的KG-Index 和Llama Index中仅提取三元组的方法不同。实体描述和关系三元组在维基百科和维基数据等知识库中得到了广泛采用但它们只代表了知识的一小部分。例如当想要了解苏格拉底作为一名士兵的经历时苏格拉底的维基百科页面上的大部分内容几乎没有帮助也几乎无法表示为三元组。因此提出了额外的知识表示方法称为实体-方面信息用于LLMs的符号记忆。它是三元组的变体其中对象是一段长文本描述了一个实体和一个方面可以通过实体和方面进行检索。例如一个记录可能以“苏格拉底”“军事服务”索引并对应于描述苏格拉底曾担任希腊重装步兵…。以这种形式表示的知识也可以通过 get_entity_or_value 函数进行检索。
考虑到PKB与公共知识库相比规模较小采用了不同的实体链接策略。主要有三个差异。 1基于精确匹配和嵌入相似度定义了PKB的实体搜索API。嵌入相似度有助于识别广为人知的实体别名例如Chanelle Scott Calica和Shystie。 2在提取过程中提取的实体提及不会与PKB中的实体对齐。因此一个实体可能在不同的文档中被提取为不同的提及。因此对于实体链接KnowledGPT返回多个匹配的实体。 3一个实体将被提取为一个别名列表该列表将提供给LLMs进行实体链接。
对于 get_entity_or_value 函数由于一个关系也可以被提取为不同的表达方式选择检索相似度得分高于阈值的关系而不是选择得分最高的关系。
4 实验
在本节中对KnowledGPT在不同设置下进行了实验包括在流行的知识库上手工创建多样化的查询第4.2节基于知识的问答第4.3节以及将个性化知识库作为LLM的记忆第4.4节。
4.1 实验设置
知识库 KnowledGPT可以通过其统一的知识库操作接口访问各种知识库。在本文中我们主要考虑以下知识库
Wikipedia和WikidataWikipedia提供了由全球志愿者维护的关于世界实体的丰富百科知识。Wikidata是对Wikipedia的补充它以关系三元组的形式结构化和组织这些百科知识。
CN-DBPediaCN-DBPedia是一个大规模的、不断更新的中文知识库从包括中文维基百科和百度百科在内的多个来源中提取而来。CN-DBPedia既包含类似Wikipedia的实体描述也包含类似Wikidata的关系三元组。
个性化知识库个性化知识库被设计为LLM的可写入符号性记忆用于存储从用户输入中提取的即将到来的知识。
NLPCC 2016 KBQA知识库这个知识库是为了评估模型在基于知识的问答任务方面而广泛采用的。它包含4300万个三元组。这个知识库仅在第4.3节中使用。
在实际场景中我们通过确定用户查询的语言来启动处理过程。对于英文查询我们使用Wikipedia、Wikidata和个性化知识库。对于中文查询我们将CN-DBPedia与个性化知识库结合使用。我们的方法也可以轻松扩展到更多语言并使用相应语言的知识库。
语言模型 在本文中默认使用强大的LLM GPT-4通过OpenAI API进行访问。我们通过指令、要求和上下文示例来提示LLM并要求LLM以json格式输出。详细的提示信息在附录A中展示。对于句子嵌入我们使用OpenAI的GPT text-embedding-ada-002模型。
4.2 流行知识库上的查询
为了评估KnowledGPT在涉及外部知识的真实用户多样化查询方面的性能针对CN-DBPedia的知识设计了11个问题。这些问题涵盖了各种类型包括单跳和多跳关系查询、关系预测、多样化指令、混合查询和值比较。这些问题涉及流行实体和长尾实体。具体示例请参见附录B。使用GPT-4和ChatGPT作为基础LLM对KnowledGPT进行实验并以直接回答问题、生成代码、实体链接和KnowledGPT答案的成功生成率进行评估。
结果如表2所示。详细的生成内容请参见附录B。可以观察到
(1) GPT-4和ChatGPT本身在回答关于知名实体的查询方面表现良好但对于不常见的实体它们经常会产生幻觉。(2) 使用GPT-4的KnowledGPT在代码生成和实体链接等任务上表现出色并最终用正确的知识回答用户查询相比于GPT-4的普通回答有了显著改进。(3) 然而对于ChatGPT来说中间步骤的成功率仍有待提高这限制了KnowledGPT整体的效力。在代码生成步骤中ChatGPT有时会生成质量较差的关系别名尤其是对于多样化或复杂的查询。
这个比较表明GPT-4在复杂指令理解、任务分解和代码生成等方面明显优于ChatGPT。虽然还尝试了像Llama-2-Chat-13B这样的较小开源LLM但它们难以直接提供准确的答案也无法生成格式良好的代码并以JSON格式回应这是KnowledGPT框架所要求的。
案例研究
图3展示了使用KnowledGPT回答问题“谁写了《静夜思》”的完整过程这需要进行多跳知识检索和推理。GPT-4给出的原始答案包含不真实的信息这表明需要用精确的外部知识增强LLM。KnowledGPT生成了一段优秀的代码首先查找《静夜思》的作者然后搜索作者的作品名称。这展示了使用代码解决多跳知识检索的有效性。执行代码时它高效地检索相关信息。最后KnowledGPT整合检索到的知识来正确回答查询。尽管在中间步骤中可能存在噪声但KnowledGPT能够很好地过滤噪声并给出正确的答案。 图5展示了KnowledGPT中实体链接步骤的三个实例。这些示例清楚地表明从外部知识库的实体链接和搜索API返回的原始候选实体没有很好的排序甚至可能不包含正确的实体。因此仅仅选择排名靠前的实体可能会引入严重的噪声。使用GPT-4从提供了信息的候选实体中进行选择。结果表明GPT-4能够熟练地识别出查询的正确实体当没有合适的选项时也能够拒绝所有选项。
4.3 基于知识的问题回答
在零样本基于知识的问题回答KBQA上评估了KnowledGPT。KBQA是一个广泛研究的领域旨在回答与知识库中特定关系三元组相关的自然语言问题。例如要回答问题“《理想国》的作者是谁”KBQA模型应该检索到三元组《理想国》作者柏拉图并回答柏拉图。
考虑到调用OpenAI API的费用我们编制了两个简洁的数据集即NLPCC-100用于单跳查询和NLPCC-MH-59用于多跳查询。NLPCC-100由NLPCC 2016 KBQA数据集Duan, 2016的测试集中的100个样本组成而NLPCC-MH-59由NLPCC-MHWang和Zhang, 2019的测试集中的59个样本组成后者是一个多跳KBQA数据集。NLPCC-MH是通过扩展NLPCC 2016数据集自动构建的因此存在某种固有的噪声。我们从NLPCC-MH数据集中手动选择了59个样本确保它们的质量和知识库中存在支持事实链。此外我们纠正了这些样本中存在的任何噪声。在NLPCC-100和NLPCC-MH-59中我们在本实验中仅使用全面的NLPCC 2016 KBQA知识库。
对KnowledGPT进行了几项修改以适应该数据集和知识库。首先在提供的知识库中三元组的尾实体可能包含由特殊符号分隔的多个实体因此我们调整了搜索代码生成的提示要求LLMs在生成的代码中包含一个分割机制。其次为了更好地进行实体链接由于提供的知识库不包含实体描述我们修改了_get_entity_information的实现返回与实体相关的10个三元组按查询关系与三元组中关系之间的Jaccard相似度排序。第三我们还修改了实体链接提示要求LLMs也调整查询关系别名以更好地与知识库中的关系对齐。
将KnowledGPT与以下基线方法进行比较
基于嵌入相似性的检索 将每个三元组视为一个文档并使用CoSENT模型进行嵌入。根据嵌入相似性为每个查询检索一个文档。对于多跳问题将第一次检索的结果添加到查询中以促进第二次检索。 基于BM25的检索。对于每个实体我们将其所有三元组分组为一个文档。使用BM25算法为每个搜索查询检索最相关的文档去除停用词。如果检索到的文档包含相应的三元组则视为成功。对于多跳查询我们根据关系之间的Jaccard相似度从初始检索的文档中选择一个三元组并将该三元组整合到后续检索的查询中。 SPE。SPE使用嵌入相似性从简单问题中提取主谓对。它在NLPCC 2016 KBQA任务的比赛中获得第一名。 我们报告了NLPCC-100和NLPCC-MH-59的平均F1值。平均F1是KBQA中广泛采用的度量标准用于具有多个正确答案和预测的任务。然而由于我们的数据集中每个样本只有一个答案和一个预测因此平均F1实际上等同于准确率。
结果如表3所示得出以下观察结果 1对于单跳查询KnowledGPT在检索方法基于BM25和嵌入相似性方面表现显著优于这表明与文档语料库相比从符号知识库中获取知识相关的问题的检索的有效性。 2零样本的KnowledGPT在NLPCC-2016 KBQA数据集的完整训练集上训练的SPE方法0.92 vs 0.85表现更好这表明KnowledGPT具有强大的零样本性能。 3对于多跳查询KnowledGPT也取得了出色的性能而基于BM25和嵌入相似性的检索方法的性能显著下降。
4.4 作为记忆的知识库
我们进行了一系列实验研究了当KnowledGPT与一个可修改的个性化知识库PKB配对时的有效性。KnowledGPT的任务是从提供的文档中提取知识来构建PKB并研究是否能够正确回答相关问题。图6展示了一个示例其中提供了关于苏格拉底的文本。KnowledGPT从文本中提取知识并通过检索提取的知识来回答相关问题。
我们进一步将KnowledGPT应用于HotpotQAYang等2018这是一个提供文档的多跳问题回答数据集。我们从HotpotQA开发集干扰项中选择了25个问题包括5个比较问题如“Mimosa和Cryptocoryne中哪个是灌木”和20个桥接问题如“Erik Watts的父亲是什么时候出生的”每个问题都与10个文档配对KnowledGPT从这些文档中提取知识来构建PKB。 结果如表4所示。KnowledGPT成功回答了所有的比较问题以及20个桥接问题中的15个。在未成功回答的案例中有两个桥接问题无法提取回答问题所需的知识还有一个桥接问题在实体链接阶段失败。总体而言这个实验显示了利用PKB作为LLMs的符号记忆的潜在前景。
我们进一步研究了KnowledGPT在HotpotQA中100个文档上的知识提取覆盖率考虑了不同的LLMs和应用知识表示的多样组合。为了量化覆盖率我们使用了单词召回率进行计算计算公式如下 其中| · | 表示集合的基数元素个数。 Wextracted 和 Wdoc 分别表示经过预处理包括去除停用词和词形还原使用NLTK工具包后提取出的知识和文档中的单词集合。
结果如表5所示我们得出以下观察结果 1当仅限制知识表示为三元组时知识提取覆盖率为0.53这表明只有很小一部分的知识可以表示为三元组。因此仅支持三元组的PKB无法充分包含真实用户提供的知识。 2通过增加其他知识表示如实体描述和实体-方面信息我们观察到知识提取覆盖率显著提高这表明加入实体描述和实体-方面信息能够使KnowledGPT填充PKB以包含更广泛的知识。 3ChatGPT 和 GPT-4 在知识提取方面的表现相似。只有在包含实体-方面信息时GPT-4 的性能优于 ChatGPT这可能归因于GPT-4在遵循复杂指令方面的增强能力。