掌桥专利:专业的专利平台
掌桥专利
首页

文本处理方法、电子设备及计算机可读存储介质

文献发布时间:2024-04-18 20:00:50


文本处理方法、电子设备及计算机可读存储介质

技术领域

本申请涉及大模型、计算机技术领域,具体而言,涉及一种文本处理方法、电子设备及计算机可读存储介质。

背景技术

随着大语言模型(Large Language Model,LLM)的不断发展,大语言模型在许多推理任务上展现出了优秀的问题解决能力,但是在面对结构性更加复杂的推理问题时,例如逻辑推理和算术推理,仍然存在挑战。

目前,通过使用设计的推理结构来迭代式调用大语言模型,从而进一步发掘大语言模型的潜力,该设计的推理结构包括思维链条(Chain-of-Thought)、思维树(Tree-of-Thoughts)以及思维图(Graph-of-Thoughts)等。上述方案虽然能够在一定程度上提高大语言模型在复杂推理问题上的表现,但是由于大语言模型的模型幻觉等因素,上述方案在复杂问题推理过程中生成的推理中间步骤常常包含错误信息,推理过程的准确率仍然较低,进而导致大语言模型推理的因果性和可靠性较低。

针对上述的问题,目前尚未提出有效的解决方案。

发明内容

本申请实施例提供了一种文本处理方法、电子设备及计算机可读存储介质,以至少解决相关技术中通过设计推理结构来迭代式调用大语言模型,仍会导致大语言模型在复杂问题推理过程中生成错误的推理步骤,进而导致大语言模型推理的因果性和可靠性较低的技术问题。

根据本申请实施例的一个方面,提供了一种文本处理方法,包括:获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

根据本申请实施例的另一方面,还提供了一种电子设备,包括:存储器,存储有可执行程序;处理器,用于运行程序,其中,程序运行时执行任意一项上述的文本处理方法。

根据本申请实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的可执行程序,其中,在可执行程序运行时控制计算机可读存储介质所在设备执行任意一项上述的文本处理方法。

在本申请实施例中,通过获取采用自然语言进行描述的查询文本,将查询文本转化为采用预设逻辑编程语言进行描述的符号表征,再按照基于符号表征的复杂推理方式,通过多个推理步骤以及多个推理步骤对应的多个前提条件对转化得到的符号表征进行推理,得到查询文本中的待解答的目标问题对应的目标答案,由此达到了在复杂推理过程中不使用大语言模型进行推理的目的,从而实现了减少大语言模型的调用次数,提高处理效率,避免出现模型幻觉,有效提高大语言模型推理的因果性和可靠性,提高大语言模型的输出正确率的技术效果,进而解决了相关技术中通过设计推理结构来迭代式调用大语言模型,仍会导致大语言模型在复杂问题推理过程中生成错误的推理步骤,进而导致大语言模型推理的因果性和可靠性较低的技术问题。

容易注意到的是,上面的通用描述和后面的详细描述仅仅是为了对本申请进行举例和解释,并不构成对本申请的限定。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是根据本申请实施例1的一种复杂推理过程的示意图;

图2是根据本申请实施例1的一种文本处理方法的应用场景示意图;

图3是根据本申请实施例1的一种文本处理方法的流程图;

图4是根据本申请实施例1的一种推理路径的示意图;

图5是根据本申请实施例1的一种回溯搜索的示意图;

图6是根据本申请实施例1的另一种文本处理方法的流程图;

图7是根据本申请实施例1的一种测试结果示意图;

图8是根据本申请实施例1的另一种测试结果示意图;

图9是根据本申请实施例1的再一种测试结果示意图;

图10是根据本申请实施例2的一种文本处理装置的结构示意图;

图11是根据本申请实施例的一种计算机终端的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请提供的技术方案主要采用大模型技术实现,此处的大模型是指具有大规模模型参数的深度学习模型,通常可以包含上亿、上百亿、上千亿、上万亿甚至十万亿以上的模型参数。大模型又可以称为基石模型/基础模型(Foundation Model),通过大规模无标注的语料进行大模型的预训练,产出亿级以上参数的预训练模型,这种模型能适应广泛的下游任务,模型具有较好的泛化能力,例如大规模语言模型(Large Language Model,LLM)、多模态预训练模型(multi-modal pre-training model)等。

需要说明的是,大模型在实际应用时,可以通过少量样本对预训练模型进行微调,使得大模型可以应用于不同的任务中。例如,大模型可以广泛应用于自然语言处理(Natural Language Processing,简称NLP)、计算机视觉、语音处理等领域,具体可以应用于如视觉问答(Visual Question Answering,简称VQA)、图像描述(Image Caption,简称IC)、图像生成等计算机视觉领域任务,也可以广泛应用于基于文本的情感分类、文本摘要生成、机器翻译等自然语言处理领域任务。因此,大模型主要的应用场景包括但不限于数字助理、智能机器人、搜索、在线教育、办公软件、电子商务、智能设计等。

首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:

大语言模型(Large Language Model,LLM):是一种利用深度学习技术,特别是基于Transformer架构,训练得到的自然语言处理模型。通过在大量文本数据上训练,使模型学会了语言的统计规律,能够理解和生成自然语言。大语言模型通常有数十亿乃至数千亿的参数,能够捕捉和利用人类语言的复杂性和微妙性。

复杂推理(Complex Reasoning):本申请实施例中,复杂推理被定义为一种多步(multi-step)、多个前提条件(multi-premise)的推理问题,即每一步推理都需要从已知知识出发去推断新知识。由于这样的推理常常需要使用多条已知知识去推理一条新知识,因此称之为“多个前提条件”,而解决一个问题常常需要进行多次这样的推理,因此称之为“多步”。复杂推理可以被抽象为一种有向无环图,其中每一个节点表示一条知识,而每一条有向边表示一步推理过程。

图1是根据本申请实施例1的一种复杂推理过程的示意图,图1示出了来自逻辑推理数据集(例如ProofWriter)和数学推理数据集(例如GSM8K)的两种例子。可以看出,以逻辑推理数据集中的数据作为推理过程的上下文,其中包括了用于解答问题的事实内容和规则内容。在推理证明过程中,根据上下文中的事实内容和规则内容能够逐步骤进行推理,进而推理得到问题的答案。

示例性地,事实内容包括:[事实1]安妮是善良的。[事实2]:查理个子不大。[事实3]:查理不是穿绿色的。[事实4]:查理是穿白色的。[事实5]:艾琳个子很大。[事实6]:艾琳是穿绿色的。[事实7]:艾琳是穿白色的。[事实8]:菲奥娜是穿绿色的。[事实9]:菲奥娜是善良的。[事实10]:菲奥娜是安静的。[事实11]:菲奥娜是穿红色的。[事实12]:菲奥娜是穿白色的。规则内容包括:[规则1]:如果艾琳个子很大,艾琳是穿红色的,那么艾琳是善良的。[规则2]:所有粗鲁的东西都是穿绿色的。[规则3]:善良的东西就是穿绿色的。[规则4]:安静的、穿绿色的东西个子很大。[规则5]:如果某物是粗鲁且是穿绿色的,那么它就是穿红色的。[规则6]:如果某物是穿绿色的,那么它就是粗鲁的。[规则7]:如果艾琳是穿红色的,那么艾琳是穿绿色的。[规则8]:所有穿红色的、粗鲁的东西都是安静的。[规则9]:如果某物安静而不是穿红色,那么它就不是穿白色的。问题为:下面的陈述是对的还是错的还是不确定的?陈述:安妮是安静的。

在推理证明过程中,通过有向无环图可以看出,根据上下文中的[事实1]和[规则3]可以推理得到[int-1]:安妮是穿绿色的。然后根据推理得到的[int-1]和[规则6]可以推理得到[int-2]:安妮是粗鲁的。再然后根据推理得到的[int-1]、[int-2]和[规则5]可以推理得到[int-3]:安妮是穿红色的。最后根据推理得到的[int-2]、[int-3]和[规则8]可以推理得到[int-4]:安妮是安静的,进而得到问题的答案为安妮很安静是对的。

以数据推理数据集中的数据作为推理过程的上下文,其中包括了用于解答问题内容。在推理证明过程中,根据上下文中的内容和问题内容能够逐步骤进行推理,进而推理得到问题的答案。

示例性地,上下文中包括:[1]:Natalia在4月卖给了48个朋友,然后[2]在5月卖了一半。问题为:[3]:Natalia在4月和5月一共卖出了多少夹子?

在推理证明过程中,通过有向无环图可以看出,根据上下文内容的[1]和[2]可以推理得到(4)Natalia在5月份卖出了48/2=24个夹子。然后根据推理得到的(4)、上下文内容的[1]和问题[3]可以推理得到(5)Natalia在4月和5月卖出了48+24=72个夹子,进而得到问题的答案为72。

有向无环图(Directed Acyclic Graph,DAG):是一种有向图,从该图的任意节点出发无法经过若干条边回到该节点。

节点(Node):构成图的一种基本组成单元,由边相连接。

边(Edge):本申请实施例中,边特指图的一种基本组成单元,用于连接两个相异节点。

结构化推理(Structured Reasoning):在本申请实施例中,等同于“复杂推理”。

因果性(Causality):本申请实施例中,指在一个复杂推理问题所构成的有向无环图内,两个节点之间存在一个或多个有向边所组成的连接,这一连接的尾部即为“因”,头部即为“果”。两个事物之间存在因果性即说明一个事物(因果关系中的“因”)直接或间接地导致另一个事物的发生(因果关系中的“果”)。

可靠性(Reliability):可靠性是一种广泛存在的概念,本申请实施例中,我们专注于“文本忠实性可靠性”,这一概念被精确定义为在文本推理任务中的准确性和对原始数据的忠实度。该定义目的在于明确区分大语言模型在处理信息时倾向于产生的非事实内容,亦称为“幻觉”现象,确保所生成的推理结果能够可信赖地反映源文本的真实信息。

Prolog(Programming in Logic)语言:一种高级编程语言,以逻辑编程为基础,主要用于人工智能和计算语言学领域。Prolog被设计用于解决符号处理和问题求解的任务,如专家系统、自然语言理解、知识表示、约束满足问题等。Prolog的一个典型应用是在专家系统中,可以根据一组给定的规则和事实库进行逻辑推理,找出解决特定问题的答案。由于Prolog的高度抽象和声明式的特性,提供了一种与过程式编程语言截然不同的编程范式。

搜索深度:指在递归下降解释器中,解释器在解析语法树时所能达到的最大深度。该深度取决于语法树的复杂程度和解释器的实现方式。当解释器达到搜索深度限制时,可能会抛出解析错误或者栈溢出异常。为了避免这种情况,可以通过优化解释器的实现、简化语法规则或者增加递归深度限制来控制搜索深度。

目前,通过使用设计的推理结构来迭代式调用大语言模型,从而进一步发掘大语言模型的潜力,该设计的推理结构包括以下几种:

思维链条(Chain-of-Thought),是一种调用大语言模型的方案,其鼓励语言模型不仅仅直接给出答案,而是生成一系列中间步骤或推理过程,来表明它是如何达到最终答案的。该方法是最早提出通过生成中间步骤来提升大型语言模型推理能力的方法,在多个推理任务上取得了显著提升,但是其依赖于大型语言模型来生成中间推理步骤,因此无法解决大型语言模型经常面临的幻觉问题和因果性不严谨的问题。

思维树(Tree-of-Thoughts),是一种迭代式调用大语言模型进行复杂推理的方案,利用树结构进行深度优先搜索以找到更优的推理路径。该方法是较早提出使用树结构进行搜索来进行推理的方法,在24点这类组合爆炸问题上取得了较大提升,但是其解决一个问题需要多次调用大型语言模型,导致效率低下,此外,还依赖于大型语言模型来生成中间推理步骤,因此无法解决大型语言模型经常面临的幻觉问题和因果性不严谨的问题。

语言模型的推理是世界模型的规划(Reasoning with Language Model isPlanning with World Model),是一种迭代式调用大语言模型进行复杂推理的方案,利用树结构进行蒙特卡洛树搜索算法(Monte Carlo Tree Search,MCTS)以找到更优的推理路径。相比于Tree-of-Thoughts,该方法的MCTS搜索更加高效、且更容易找到更优解,但是其解决一个问题需要多次调用大型语言模型,导致效率低下,此外,还依赖于大型语言模型来生成中间推理步骤,因此无法解决大型语言模型经常面临的幻觉问题和因果性不严谨的问题。

大语言模型的累积推理(Cumulative Reasoning with Large LanguageModels),是一种迭代式调用大型语言模型进行复杂推理的方案,利用图结构进行搜索以找到更优的推理路径,这种搜索由三个组件共同完成:Proposer提出新路径,Verifier检验新路径,Reporter决定当前是否已经解决问题。该方法利用图结构使得推理路径的构造更加灵活,这也与复杂推理的有向无环图相一致,但是其解决一个问题需要多次调用大型语言模型,导致效率低下,此外,还依赖于大型语言模型来生成中间推理步骤,因此无法解决大型语言模型经常面临的幻觉问题和因果性不严谨的问题。

相关技术通过使用设计的推理结构来迭代式调用大语言模型存在如下缺陷。

缺陷1:解决一个问题需要多次调用大型语言模型,导致效率低下,例如Tree-of-Thoughts和Reasoning with Language Model is Planning with World Model等方式。

缺陷2:依赖于大型语言模型来生成中间推理步骤,因此无法解决大型语言模型经常面临的幻觉问题和因果性不严谨的问题,例如Chain-of-Thought、Tree-of-Thoughts、Reasoning with Language Model is Planning with World Model、CumulativeReasoning with Large Language Models等方式。

针对上述缺陷,在本申请之前尚未提出有效的解决方案。

实施例1

根据本申请实施例,提供了一种文本处理方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

考虑到大模型的模型参数量庞大,且移动终端的运算资源有限,本申请实施例提供的上述文本处理方法可以应用于如图2所示的应用场景,但不仅限于此。在如图2所示的应用场景中,大模型部署在服务器10中,服务器10可以通过局域网连接、广域网连接、因特网连接,或者其他类型的数据网络,连接一个或多个客户端设备20,此处的客户端设备20可以包括但不限于:智能手机、平板电脑、笔记本电脑、掌上电脑、个人计算机、智能家居设备、车载设备等。客户端设备20可以通过图形用户界面与用户进行交互,实现对大模型的调用,进而实现本申请实施例所提供的方法。

在本申请实施例中,客户端设备和服务器构成的系统可以执行如下步骤:客户端设备执行获取用户在图形用户界面内输入的查询文本,接收服务器发送的推理路径并基于推理路径确定目标答案,并将查询文本发送给服务器等步骤,服务器执行对查询文本进行语言翻译以得到符号表征,采用解释器对符号表征进行推理以得到目标问题对应的推理路径,以及将推理路径返回至客户端设备等步骤,需要说明的是,在客户端设备的运行资源能够满足大模型的部署和运行条件的情况下,本申请实施例可以在客户端设备中进行。

在上述运行环境下,本申请提供了如图3所示的文本处理方法。图3是根据本申请实施例1的一种文本处理方法的流程图。如图3所示,该方法可以包括如下步骤:

步骤S31,获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;

步骤S32,将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;

步骤S33,按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

查询文本可以理解为推理过程中所用到的上下文内容,采用自然语言进行描述。查询文本的文本内容可以包括待解答的目标问题,根据查询文本的文本内容能够推理得到待解答的目标问题所对应的目标答案。

待解答的目标问题用于表示需要得到答案的问题,可以为用户提出的问题。

本申请实施例中,预设逻辑编程语言为一种符号语言,能够符号化表示自然语言描述的文本内容。示例性地,预设逻辑编程语言可以为Prolog语言,还可以为Datalog语言、ASP语言、XSB语言等,此处不予限制。

本申请实施例中,预设推理方式用于通过多个推理步骤(multistep)以及多个推理步骤对应的多个前提条件(multi-premise)进行推理,可以理解为复杂推理,进一步可以理解为基于符号表征的复杂推理,即根据符号表征的上下文内容和目标问题进行复杂推理的推理方式。

本申请实施例中,通过获取采用自然语言进行描述的查询文本,然后将查询文本转化为采用预设逻辑编程语言进行描述的符号表征,再按照基于符号表征的复杂推理方式对转化得到的符号表征进行推理,从而能够得到查询文本中的待解答的目标问题对应的目标答案。

可以看出,本申请实施例通过将自然语言描述的查询文本转化为符号形式进行表示,且在执行复杂推理的过程中不使用大语言模型进行推理,因此能够减少大语言模型的调用次数,提高处理效率,并且不依赖于大语言模型生成中间推理步骤,能够避免出现模型幻觉,有效提高大语言模型推理的因果性和可靠性,提高大语言模型的输出正确率。

本申请实施例提供的上述文本处理方法可以但不限于应用于电商服务、教育服务、法律服务、医疗服务、会议服务、社交网络服务、金融产品服务、物流服务和导航服务等领域中涉及文本问答的应用场景中,例如:电商服务的文本问答、教育服务的文本问答、法律服务的文本问答等,此处不予限制。

采用本申请实施例,通过获取采用自然语言进行描述的查询文本,将查询文本转化为采用预设逻辑编程语言进行描述的符号表征,再按照基于符号表征的复杂推理方式,通过多个推理步骤以及多个推理步骤对应的多个前提条件对转化得到的符号表征进行推理,得到查询文本中的待解答的目标问题对应的目标答案,由此达到了在复杂推理过程中不使用大语言模型进行推理的目的,从而实现了减少大语言模型的调用次数,提高处理效率,避免出现模型幻觉,有效提高大语言模型推理的因果性和可靠性,提高大语言模型的输出正确率的技术效果,进而解决了相关技术中通过设计推理结构来迭代式调用大语言模型,仍会导致大语言模型在复杂问题推理过程中生成错误的推理步骤,进而导致大语言模型推理的因果性和可靠性较低的技术问题。

在一种可选的实施例中,在步骤S32中,将查询文本转化为符号表征,包括如下方法步骤:

步骤S321,采用深度学习模型对查询文本进行语言翻译,得到符号表征,其中,符号表征采用陈述式逻辑编程语言进行描述。

本申请实施例中,深度学习模型可以为大语言模型LLM,例如BERT、GPT-3、T5等,还可以为其他能够对查询文本进行语言翻译的深度学习模型,此处不予限制。

示例性地,在将查询文本转化为符号表征时,可以采用深度学习模型对查询文本进行语言翻译,得到符号表征。需要注意的是,本申请实施例中转化得到的符号表征采用陈述式逻辑编程语言进行描述,描述时采用陈述性表达,例如采用Prolog语言。

示例性地,若查询文本中记载了“Anne is kind”,即安妮很善良,则转化得到的符号表征为“kind(Anne)”。若查询文本中记载了“Charlie is not big”,即查理不大,则转化得到的符号表征为“not(big(Charlie))”。若查询文本中记载了“If Erin is big andErin is red then Erin is kind”,即如果艾琳很大且是红色,那么艾琳很善良,则转化得到的符号表征为“kind(Erin):-big(Erin),red(Erin)”。若查询文本中记载了“All roughthings are green”,即所有粗鲁的东西都是绿色,则转化得到的符号表征为“green(x):-rough(x)”。

在一种可选的实施例中,在步骤S321中,采用深度学习模型对查询文本进行语言翻译,得到符号表征,包括如下方法步骤:

步骤S3211,采用深度学习模型对查询文本进行语言翻译,得到翻译结果;

步骤S3212,从翻译结果中分别提取事实内容、规则内容和目标问题的问题内容,得到符号表征。

本申请实施例中,对查询文本进行语言翻译即为将自然语言描述的文字文本翻译为符号表征的过程。

示例性地,在采用深度学习模型对查询文本进行语言翻译,得到符号表征时,首先采用深度学习模型对查询文本进行语言翻译,得到翻译结果,其中,翻译结果中包括上下文内容中的事实内容(fact)、规则内容(rule)以及待解答的目标问题的问题内容(question)对应的符号表征。然后将翻译结果中的事实内容、规则内容和问题内容对应的符号表征作为最终查询文本转化得到的符号表征。

示例性地,采用本申请实施例的方式,以自然语言描述的事实内容A为:[事实1]安妮是善良的。[事实2]:查理个子不大。[事实3]:查理不是穿绿色的。[事实4]:查理是穿白色的。[事实5]:艾琳个子很大。[事实6]:艾琳是穿绿色的。[事实7]:艾琳是穿白色的。[事实8]:菲奥娜是穿绿色的。[事实9]:菲奥娜是善良的。[事实10]:菲奥娜是安静的。[事实11]:菲奥娜是穿红色的。[事实12]:菲奥娜是穿白色的为例,将上述事实内容转化为符号表征,即:[事实1]:善良(安妮)。[事实2]:非(大(查理))。[事实3]:非(绿色(查理))。[事实4]:白色(查理)。[事实5]:大(艾琳)。[事实6]:绿色(艾琳)。[事实7]:白色(艾琳)。[事实8]:绿色(菲奥娜)。[事实9]:善良(菲奥娜)。[事实10]:安静(菲奥娜)。[事实11]:红色(菲奥娜)。[事实12]:白色(菲奥娜)。

也即,将事实内容A:[fact-1]:Anne is kind.[fact-2]:Charlie is not big.[fact-3]:Charlie is not green.[fact-4]:Charlie is white.[fact-5]:Erin is big.[fact-6]:Erin is green.[fact-10]:Fiona is quiet.[fact-11]:Fiona is red.[fact-12]:Fiona is white,转化为:[fact-1]:kind(anne).[fact-2]:not(big(Charlie)).[fact-3]:not(green(Charlie)).[fact-4]:white(Charlie).[fact-5]:big(erin).[fact-6]:green(erin).[fact-7]:white(erin).[fact-8]:green(fiona).[fact-9]:kind(fiona).[fact-10]:quite(fiona).[fact-11]:red(fiona).[fact-12]:white(fiona)的符号表征。

以自然语言描述的规则内容A为:[规则1]:如果艾琳个子很大,艾琳是穿红色的,那么艾琳是善良的。[规则2]:所有粗鲁的东西都是穿绿色的。[规则3]:善良的东西就是穿绿色的。[规则4]:安静的、穿绿色的东西个子很大。[规则5]:如果某物是粗鲁且是穿绿色的,那么它就是穿红色的。[规则6]:如果某物是穿绿色的,那么它就是粗鲁的。[规则7]:如果艾琳是穿红色的,那么艾琳是穿绿色的。[规则8]:所有穿红色的、粗鲁的东西都是安静的。[规则9]:如果某物安静而不是穿红色,那么它就不是穿白色的为例,将上述规则内容转化为符号表征,即:[规则1]:善良(艾琳):-大(艾琳),红色(艾琳)。[规则2]:绿色(x):-粗鲁(x)。[规则3]:绿色(x):-善良(x)。[规则4]:大(x):-安静(x),绿色(x)。[规则5]:红色(x):-粗鲁(x),绿色(x)。[规则6]:粗鲁(x):-绿色(x)。[规则7]:绿色(艾琳):-红色(艾琳)。[规则8]:安静(x):-红色(x),粗鲁(x)。[规则9]:非(白色(x)):-安静(x),非(红色(x))。

也即,将规则内容A:[rule-1]:If Erin is big and Erin is red then Erin iskind.[rule-2]:All rough things are green.[rule-3]:If something is kind thenit is green.[rule-4]:Quite,green things are big.[rule-5]:If something isrough and green then it is red.[rule-6]:If something is green then it isrough.[rule-7]:If Erin is red then Erin is green.[rule-8]:All red,roughthings are quite.[rule-9]:If something is quite and not red then it is notwhite,转化为:[rule-1]:kind(Erin):-big(Erin),red(Erin).[rule-2]:green(x):-rough(x).[rule-3]:green(x):-kind(x).[rule-4]:big(x):-quite(x),green(x).[rule-5]:red(x):-rough(x),green(x).[rule-6]:rough(x):-green(x).[rule-7]:green(Erin):-red(Erin).[rule-8]:quite(x):-red(x),rough(x).[rule-9]:not(white(x)):-quite(x),not(red(x))的符号表征。

以自然语言描述的问题内容A为:下面的陈述是对的还是错的还是不确定的?陈述:艾琳不是粗鲁的为例,将上述问题内容转化为符号表征,即:非(粗鲁(艾琳))。陈述:艾琳不是粗鲁的。

也即,将问题内容A:whether the following statement is True or False orUncertain?[statement]:Erin is not rough,转化为:not(rough(Erin)).statement:Erin is not rough的符号表征。

在一种可选的实施例中,在步骤S33中,按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,包括如下方法步骤:

步骤S331,按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径;

步骤S332,基于推理路径确定目标答案。

推理路径可以理解为根据事实内容和规则内容依次生成中间推理步骤,最终得到目标答案的路径。示例性地,推理过程可以采用有向无环图进行表示,如图1中所示,此处不过多赘述,推理路径可以理解为有向无环图中箭头所表示的推理过程。

本申请实施例中,可以使用预设逻辑编程语言对应的解释器来对符号表征进行推理,即使用执行符号推理的解释器对符号表征进行推理。示例性地,可以采用Prolog自身的解释器进行推理。

此外,用户可以自定义各类元解释器(meta-interpreter)来实现复杂功能,示例性地,由于Prolog自身的解释器并不支持输出推理路径,因此可以使用客制化的元解释器(Customizable Meta-Interpreter)实现输出推理路径的功能。

通过使用Prolog自身的解释器结合客制化的元解释器,可以在执行推理时能够同时输出可行的(feasible)推理路径,即得到目标问题对应的推理路径,并且这种基于符号的推理保证了推理路径的严格因果性和可靠性。

示例性地,在按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案时,首先按照预设推理方式对符号表征进行推理,可以使用Prolog自身的解释器和客制化的元解释器对基于事实内容、规则内容和问题内容对应的符号表征进行推理,从而得到目标问题对应的推理路径,然后基于得到的推理路径确定目标答案。

示例性地,图4是根据本申请实施例1的一种推理路径的示意图,如图4所示,以图1中根据逻辑推理数据集中的上下文推理得到待解答的问题为例,基于符号表征进行推理从而获取该待解答的问题的推理路径如图4所示。

通过图4示出的有向无环图可以看出,根据上下文中的[事实1]的符号表征和[规则3]的符号表征可以推理得到[int-1]:绿色(安妮)。然后根据推理得到的[int-1]和[规则6]的符号表征可以推理得到[int-2]:粗鲁(安妮)。再然后根据推理得到的[int-1]、[int-2]和[规则5]的符号表征可以推理得到[int-3]:红色(安妮)。最后根据推理得到的[int-2]、[int-3]和[规则8]的符号表征可以推理得到[int-4]:安静(安妮),进而得到问题的答案为安妮很安静是对的。

可以理解的是,若所选择使用的执行符号推理的解释器能够输出推理路径,也可以通过一个解释器进行推理并输出推理路径,此外,也可以根据实际需求选择定制用于执行其他复杂功能的元解释器,此处不予限制。

在一种可选的实施例中,在步骤S331中,按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径,包括如下方法步骤:

步骤S3311,获取预设推理方式对应的搜索深度;

步骤S3312,在预设推理方式下,基于搜索深度对符号表征进行推理,得到目标问题对应的推理路径。

搜索深度是指在递归下降解释器中,解释器在解析语法树时所能达到的最大深度,本申请实施例可以使用客制化的元解释器对符号表征进行推理,用户可以通过定制元解释器来定义该推理方式对应的搜索深度,以避免深度优先搜索(Depth-First Search,DFS)陷入死循环。可以理解的是,元解释器可以根据实际需求进行定制,以实现不同功能,此处不予限制。

示例性地,在按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径时,可以使用Prolog自身的解释器和客制化的元解释器对符号表征进行推理,首先获取预设推理方式对应的搜索深度,即获取Prolog自身的解释器对应的搜索深度,在基于符号表征进行推理时,采用Prolog自身的解释器基于获取的搜索深度对符号表征进行推理,再通过客制化的元解释器输出推理路径,从而得到目标问题对应的推理路径。

在一种可选的实施例中,在步骤S3312中,在预设推理方式下,基于搜索深度对符号表征进行推理,得到目标问题对应的推理路径,包括如下方法步骤:

步骤S33121,在预设推理方式下,基于搜索深度对符号表征进行回溯搜索,得到待使用推理步骤以及待使用推理步骤关联的搜索内容,其中,搜索内容包括以下至少之一:事实内容、规则内容;

步骤S33122,利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径。

搜索内容可以理解为查询文本中所记载的用于当前推理过程的上下文内容,包括事实内容和规则内容。

本申请实施例中,在采用Prolog自身的解释器进行符号化推理时,可以以Prolog代码为输入,通过目标问题反向搜索到规则内容(rule)和事实内容(fact),同时,可以通过自动回溯搜索和合一算法(unification algorithm)有效地找到查询(query)的解答(solution)。

示例性地,如图5所示,图5是根据本申请实施例1的一种回溯搜索的示意图,以前述示例地事实内容A、规则内容A和问题内容A为例,问题内容A的陈述为非(粗鲁(艾琳)),基于问题内容A的陈述,可以回溯推断出待使用规则内容A中的[规则6],进而根据[规则6]可以继续回溯推断出待使用规则内容A中的[规则2]以及事实内容A中的[事实6]。从而可以通过[事实6]、[规则6](或[规则2])推断出问题内容A的陈述是错误的,即得到问题内容A对应的答案,同时也能够得到对应的推理路径。

示例性地,在采用Prolog自身的解释器进行符号化推理时,可以基于获取到的搜索深度和符号表征进行自动回溯搜索,从而得到待使用推理步骤以及与待使用推理步骤相关联的上下文内容。然后根据待使用推理步骤以及与待使用推理步骤相关联的上下文内容生成推理路径。

在一种可选的实施例中,在步骤S33122中,利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径,包括如下方法步骤:

步骤S331221,利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在预设逻辑编程语言的编程环境下生成采用依次连接的推理符号串表示的推理路径。

生成推理路径时,可以采用依次连接的推理符号串表示的推理路径。

推理符号串可以自定义表示,例如包括箭头等符号,此处不予限制。

示例性地,以预设逻辑编程语言为Prolog语言为例,在Prolog语言的编程环境下,推理路径可以表示为“=>(=>(,(=>(true,round(harry)),,(=>(=>(true,big(harry)),tall(harry)),=>(true,kind(harry)))),wizard(harry)),smart(harry))”的形式,即采用单向箭头连接Prolog符号串来表示推理路径。

示例性地,可以利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在Prolog语言的编程环境下生成采用依次连接Prolog符号串的单向箭头表示的推理路径。

在一种可选的实施例中,在步骤S33122中,利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径,包括如下方法步骤:

步骤S331222,利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在可视化界面内生成采用有向无环图表示的推理路径。

生成推理路径时,还可以采用有向无环图表示的推理路径。

可视化界面可以理解为用于与用户进行交互的图形用户界面,可以为触屏界面或非触屏界面,此处不予限制。

示例性地,可以利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在图形用户界面内生成采用有向无环图表示的推理路径。

在一种可选的实施例中,通过终端设备提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一文本问答场景,该文本处理方法还包括如下方法步骤:

步骤S34,响应对图形用户界面执行的第一控制操作,输入查询文本;

步骤S35,响应对图形用户界面执行的第二控制操作,采用大语言模型对查询文本进行语言翻译以得到符号表征,以及采用解释器对符号表征进行推理以得到目标问题对应的推理路径,其中,解释器为符号表征的执行工具;

步骤S36,在图形用户界面内展示推理路径以确定目标答案。

本申请实施例中的图形用户界面中至少显示有文本问答场景,用户可以在图形用户界面显示的文本问答场景中输入查询文本。可以理解的是,上述文本问答场景可以但不限于电商、教育、医疗、会议、社交网络、金融产品、物流和导航等领域中涉及文本问答的应用场景。

上述图形用户界面还包括第一控件(或第一触控区域),当检测到作用于第一控件(或第一触控区域)的第一触控操作时,能够获取用户输入的查询文本。上述查询文本可以是用户通过第一触控操作在图形用户界面中显示的文本输入框中输入的。上述第一触控操作可以是点选、框选、勾选、条件筛选等操作,此处不予限制。

上述图形用户界面还包括第二控件(或第二触控区域),当检测到作用于第二控件(或第二触控区域)的第二触控操作时,可以根据用户选择的提交操作,采用大语言模型对查询文本进行语言翻译以得到对应的符号表征,以及采用解释器,例如Prolog解释器与客制化的元解释器对符号表征进行推理以得到目标问题对应的推理路径。上述第二触控操作可以是点选、框选、勾选、条件筛选等操作,此处不予限制。

在生成推理路径后,可以在图形用户界面内展示推理路径,并根据推理路径确定目标答案。示例性地,推理路径可以采用依次连接的推理符号串表示,或者采用有向无环图表示。

图6是根据本申请实施例1的另一种文本处理方法的流程图,提出了一种两模块的神经-符号学推理框架,模块一为逻辑单元(logic component),模块二为控制单元(control component)。逻辑单元用于将自然语言翻译为符号表征,可以将模块一抽象为一种把自然语言翻译为符号表征的模型。控制单元用于通过解释器(interpreter)来执行逻辑单元生成的符号表征,以此来进行复杂推理,可以将模块二抽象为用于执行符号推理的解释器。

具体地,图6以Prolog语言作为符号表征为例,首先逻辑单元获取待解答的复杂推理问题,将复杂推理问题输入至大语言模型,例如输入至Code-LLaMA模型中进行语言翻译,从而将复杂推理问题转化为符号化的Prolog代码。可以看出,该逻辑单元会调用大语言模型,但仅基于大语言模型做文本理解与翻译,不做推理。然后控制单元将得到的Prolog代码输入至Prolog解释器和客制化的元解释器进行推理,从而输出答案和推理路径。可以看出,该控制单元不调用大语言模型,控制单元通过调用Prolog的解释器以及元解释器进行符号化的复杂推理。

图7、图8和图9是在三个数据集上进行实验得到的测试结果示意图,三个数据集包括两个逻辑推理数据集(ProofWriter和PrOntoQA)和一个数学推理数据集(GSM8K),使用Code-LLaMA系列模型作为LLM,这一系列模型包括了三种不同参数量,分别为70亿(7B)、130亿(13B)和340亿(34B)。实验结果如图7、图8和图9所示,图7为在ProofWriter上的实验结果,默认设定为2-shot(2个样本),示出了推理答案的准确率(Acc)、推理过程的相似度(Proof Sim)以及完全正确的推理过程的占比(Proof EM)的数据情况。图8为在GSM8K上的实验结果,默认设定为5-shot(5个样本),示出了推理答案的准确率以及推理过程的相似度。图9为在PrOntoQA上的实验结果,默认设定为2-shot,示出了推理答案的准确率的数据情况。

通过图7、图8和图9可以看出,本方案显著优于Chain-of-Thought基线方法(CoT),尤其是在推理过程的相似度(Proof Sim)上最多甚至能够达到基线方法的两倍有余,这表明了本方案能够针对复杂推理问题生成更具有因果性和可靠性的推理过程。也即,相比于Chain-of-Thought基线方法,本方案不仅能够提高推理准确性,而且能显著提升自动生成的推理过程和正确的推理过程之间的相似度。

容易理解的是,本申请提供的文本处理方法的有益效果包括以下几点。

有益效果(1),本申请在执行复杂推理的过程中不使用大语言模型进行推理,能够减少大语言模型的调用次数,提高处理效率。

有益效果(2),本申请不依赖于大语言模型生成中间推理步骤,能够避免出现模型幻觉,能够有效提高大语言模型执行复杂推理的因果性和可靠性,提高大语言模型的输出正确率。

有益效果(3),本申请通过设计元解释器使得符号推理的过程可以被记录下来。且由于推理过程是基于符号进行推理,因此能够确保生成的推理过程的因果性和可靠性。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。

另外,还需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

实施例2

根据本申请实施例,还提供了一种用于实施上述文本处理方法的装置实施例。图10是根据本申请实施例2的一种文本处理装置的结构示意图,如图10所示,该装置包括:

获取模块1001,用于获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;

转化模块1002,用于将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;

推理模块1003,用于按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

可选地,上述转化模块1002还用于:采用深度学习模型对查询文本进行语言翻译,得到符号表征,其中,符号表征采用陈述式逻辑编程语言进行描述。

可选地,上述转化模块1002还用于:采用深度学习模型对查询文本进行语言翻译,得到翻译结果;从翻译结果中分别提取事实内容、规则内容和目标问题的问题内容,得到符号表征。

可选地,上述推理模块1003还用于:按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径;基于推理路径确定目标答案。

可选地,上述推理模块1003还用于:获取预设推理方式对应的搜索深度;在预设推理方式下,基于搜索深度对符号表征进行推理,得到目标问题对应的推理路径。

可选地,上述推理模块1003还用于:在预设推理方式下,基于搜索深度对符号表征进行回溯搜索,得到待使用推理步骤以及待使用推理步骤关联的搜索内容,其中,搜索内容包括以下至少之一:事实内容、规则内容;利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径。

可选地,上述推理模块1003还用于:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在预设逻辑编程语言的编程环境下生成采用依次连接的推理符号串表示的推理路径。

可选地,上述推理模块1003还用于:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在可视化界面内生成采用有向无环图表示的推理路径。

可选地,通过终端设备提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一文本问答场景,还包括:交互模块,用于:响应对图形用户界面执行的第一控制操作,输入查询文本;响应对图形用户界面执行的第二控制操作,采用大语言模型对查询文本进行语言翻译以得到符号表征,以及采用解释器对符号表征进行推理以得到目标问题对应的推理路径,其中,解释器为符号表征的执行工具;在图形用户界面内展示推理路径以确定目标答案。

采用本申请实施例,通过获取采用自然语言进行描述的查询文本,将查询文本转化为采用预设逻辑编程语言进行描述的符号表征,再按照基于符号表征的复杂推理方式,通过多个推理步骤以及多个推理步骤对应的多个前提条件对转化得到的符号表征进行推理,得到查询文本中的待解答的目标问题对应的目标答案,由此达到了在复杂推理过程中不使用大语言模型进行推理的目的,从而实现了减少大语言模型的调用次数,提高处理效率,避免出现模型幻觉,有效提高大语言模型推理的因果性和可靠性,提高大语言模型的输出正确率的技术效果,进而解决了相关技术中通过设计推理结构来迭代式调用大语言模型,仍会导致大语言模型在复杂问题推理过程中生成错误的推理步骤,进而导致大语言模型推理的因果性和可靠性较低的技术问题。

此处需要说明的是,上述获取模块1001、转化模块1002和推理模块1003对应于实施例1中的步骤S31至步骤S33,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块或单元可以是存储在存储器中并由一个或多个处理器处理的硬件组件或软件组件,上述模块也可以运行在实施例1提供的服务器10中。

需要说明的是,本申请上述实施例中涉及到的优选实施方案与实施例1提供的方案以及应用场景、实施过程相同,但不仅限于实施例1所提供的方案。

实施例3

本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。

可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。

在本实施例中,上述计算机终端可以执行文本处理方法中以下步骤的程序代码:获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

可选地,图11是根据本申请实施例的一种计算机终端的结构框图。如图11所示,该计算机终端11可以包括:一个或多个(图中仅示出一个)处理器1102、存储器1104、存储控制器、以及外设接口,其中,外设接口与射频模块、音频模块和显示器连接。

其中,存储器可用于存储软件程序以及模块,如本申请实施例中的文本处理方法和装置对应的程序指令/模块,处理器通过运行存储在内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的文本处理方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端11。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

可选地,上述处理器还可以执行如下步骤的程序代码:采用深度学习模型对查询文本进行语言翻译,得到符号表征,其中,符号表征采用陈述式逻辑编程语言进行描述。

可选地,上述处理器还可以执行如下步骤的程序代码:采用深度学习模型对查询文本进行语言翻译,得到翻译结果;从翻译结果中分别提取事实内容、规则内容和目标问题的问题内容,得到符号表征。

可选地,上述处理器还可以执行如下步骤的程序代码:按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径;基于推理路径确定目标答案。

可选地,上述处理器还可以执行如下步骤的程序代码:获取预设推理方式对应的搜索深度;在预设推理方式下,基于搜索深度对符号表征进行推理,得到目标问题对应的推理路径。

可选地,上述处理器还可以执行如下步骤的程序代码:在预设推理方式下,基于搜索深度对符号表征进行回溯搜索,得到待使用推理步骤以及待使用推理步骤关联的搜索内容,其中,搜索内容包括以下至少之一:事实内容、规则内容;利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径。

可选地,上述处理器还可以执行如下步骤的程序代码:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在预设逻辑编程语言的编程环境下生成采用依次连接的推理符号串表示的推理路径。

可选地,上述处理器还可以执行如下步骤的程序代码:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在可视化界面内生成采用有向无环图表示的推理路径。

可选地,通过终端设备提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一文本问答场景,上述处理器还可以执行如下步骤的程序代码:响应对图形用户界面执行的第一控制操作,输入查询文本;响应对图形用户界面执行的第二控制操作,采用大语言模型对查询文本进行语言翻译以得到符号表征,以及采用解释器对符号表征进行推理以得到目标问题对应的推理路径,其中,解释器为符号表征的执行工具;在图形用户界面内展示推理路径以确定目标答案。

采用本申请实施例,通过获取采用自然语言进行描述的查询文本,将查询文本转化为采用预设逻辑编程语言进行描述的符号表征,再按照基于符号表征的复杂推理方式,通过多个推理步骤以及多个推理步骤对应的多个前提条件对转化得到的符号表征进行推理,得到查询文本中的待解答的目标问题对应的目标答案,由此达到了在复杂推理过程中不使用大语言模型进行推理的目的,从而实现了减少大语言模型的调用次数,提高处理效率,避免出现模型幻觉,有效提高大语言模型推理的因果性和可靠性,提高大语言模型的输出正确率的技术效果,进而解决了相关技术中通过设计推理结构来迭代式调用大语言模型,仍会导致大语言模型在复杂问题推理过程中生成错误的推理步骤,进而导致大语言模型推理的因果性和可靠性较低的技术问题。

本领域普通技术人员可以理解,图11所示的结构仅为示意,计算机终端11也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图11其并不对上述电子装置的结构造成限定。例如,计算机终端11还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。

实施例4

本申请的实施例还提供了一种计算机可读存储介质。可选地,在本实施例中,上述计算机可读存储介质可以用于保存上述实施例一所提供的文本处理方法所执行的程序代码。

可选地,在本实施例中,上述计算机可读存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取查询文本,其中,查询文本采用自然语言进行描述,查询文本的文本内容包括:待解答的目标问题;将查询文本转化为符号表征,其中,符号表征采用预设逻辑编程语言进行描述;按照预设推理方式对符号表征进行推理,得到目标问题对应的目标答案,其中,预设推理方式用于通过多个推理步骤以及多个推理步骤对应的多个前提条件进行推理。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:采用深度学习模型对查询文本进行语言翻译,得到符号表征,其中,符号表征采用陈述式逻辑编程语言进行描述。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:采用深度学习模型对查询文本进行语言翻译,得到翻译结果;从翻译结果中分别提取事实内容、规则内容和目标问题的问题内容,得到符号表征。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:按照预设推理方式对符号表征进行推理,得到目标问题对应的推理路径;基于推理路径确定目标答案。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取预设推理方式对应的搜索深度;在预设推理方式下,基于搜索深度对符号表征进行推理,得到目标问题对应的推理路径。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:在预设推理方式下,基于搜索深度对符号表征进行回溯搜索,得到待使用推理步骤以及待使用推理步骤关联的搜索内容,其中,搜索内容包括以下至少之一:事实内容、规则内容;利用待使用推理步骤以及待使用推理步骤关联的搜索内容生成推理路径。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在预设逻辑编程语言的编程环境下生成采用依次连接的推理符号串表示的推理路径。

可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:利用待使用推理步骤以及待使用推理步骤关联的搜索内容,在可视化界面内生成采用有向无环图表示的推理路径。

可选地,通过终端设备提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一文本问答场景,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应对图形用户界面执行的第一控制操作,输入查询文本;响应对图形用户界面执行的第二控制操作,采用大语言模型对查询文本进行语言翻译以得到符号表征,以及采用解释器对符号表征进行推理以得到目标问题对应的推理路径,其中,解释器为符号表征的执行工具;在图形用户界面内展示推理路径以确定目标答案。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

技术分类

06120116541716