CN118227868A - 文本处理方法、装置、电子设备和存储介质 - Google Patents

文本处理方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN118227868A
CN118227868A CN202410324534.3A CN202410324534A CN118227868A CN 118227868 A CN118227868 A CN 118227868A CN 202410324534 A CN202410324534 A CN 202410324534A CN 118227868 A CN118227868 A CN 118227868A
Authority
CN
China
Prior art keywords
tool
information
target
candidate
tools
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
Application number
CN202410324534.3A
Other languages
English (en)
Inventor
薛宪巍
徐焕旻
潘秋桐
何伯磊
陈坤斌
和为
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202410324534.3A priority Critical patent/CN118227868A/zh
Publication of CN118227868A publication Critical patent/CN118227868A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了一种文本处理方法、装置、电子设备和存储介质,涉及人工智能领域,具体涉及NLP、大模型、LLM、深度学习等技术领域。具体实现方案为:获取查询文本、工具集中多个候选工具的工具信息和多个候选工具之间的关系信息;根据查询文本、工具信息和关系信息,生成工具调用路径;其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数;采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息;根据回复信息,对查询文本进行回复。

Description

文本处理方法、装置、电子设备和存储介质
技术领域
本公开涉及AI(Artificial Intelligence,人工智能)领域,具体涉及NLP(Natural Language Processing,自然语言处理)、大模型、LLM(Large Language Model,大语言模型)、深度学习等技术领域,尤其涉及文本处理方法、装置、电子设备和存储介质。
背景技术
目前,大语言模型可以使用外部工具(如API(Application ProgrammingInterface,应用程序接口)、函数、搜索引擎等),来解决复杂的问题,增强大语言模型的能力,扩展大语言模型的实用性,以及增强大语言模型与现实世界接口的互动性。例如,大语言模型可以通过调用API,从网上数据库检索信息、执行数据分析、甚至与社交媒体平台进行交互,来准确地理解和响应用户的需求。
发明内容
本公开提供了一种用于文本处理方法、装置、电子设备和存储介质。
根据本公开的一方面,提供了一种文本处理方法,包括:
获取查询文本、工具集中多个候选工具的工具信息和所述多个候选工具之间的关系信息;
根据所述查询文本、所述工具信息和所述关系信息,生成工具调用路径;其中,所述工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,所述目标工具是从所述候选工具中确定的,i为正整数;
采用所述大语言模型依次调用所述工具调用路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息;
根据所述回复信息,对所述查询文本进行回复。
根据本公开的另一方面,提供了一种文本处理装置,包括:
获取模块,用于获取查询文本、工具集中多个候选工具的工具信息和所述多个候选工具之间的关系信息;
生成模块,用于根据所述查询文本、所述工具信息和所述关系信息,生成工具调用路径;其中,所述工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,所述目标工具是从所述候选工具中确定的,i为正整数;
调用模块,用于采用所述大语言模型依次调用所述工具调用路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息;
回复模块,用于根据所述回复信息,对所述查询文本进行回复。
根据本公开的再一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开上述一方面提出的文本处理方法。
根据本公开的又一方面,提供了一种计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开上述一方面提出的文本处理方法。
根据本公开的还一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述一方面提出的文本处理方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例一所提供的文本处理方法的流程示意图;
图2为本公开实施例二所提供的文本处理方法的流程示意图;
图3为本公开实施例三所提供的文本处理方法的流程示意图;
图4为本公开实施例四所提供的文本处理方法的流程示意图;
图5为本公开实施例五所提供的文本处理方法的流程示意图;
图6为本公开实施例六提供的文本处理的实现原理示意图;
图7为本公开实施例七所提供的文本处理装置的结构示意图;
图8示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
目前,对于大语言模型的研究,主要集中在让大语言模型可以使用外部工具来增强自身的能力。这些研究使得大语言模型可以利用外部工具(例如API、函数等),来解决复杂的问题,拓展了大语言模型的实用性。这样的整合不仅提高了大语言模型的功能性,也增强了大语言模型与现实世界接口的互动性。例如,通过调用API,大语言模型能够直接从网上数据库检索信息,执行数据分析,甚至与社交媒体平台进行交互。此外,大语言模型通过调用外部工具进行学习和适应,能够更准确地理解和响应用户的需求。
随着技术的进一步融合,大语言模型的应用范围已从简单的文本生成扩展到提供复杂的决策支持。目前,大语言模型可以参与到项目管理、客户服务和在线教育等领域,成为这些领域工作效率提升的助力。例如,在项目管理中,大语言模型可以协助制定工作流程,优化资源分配,以及预测项目风险;在客户服务方面,大语言模型可以实时地处理客户查询,提供个性化的解答和建议;在在线教育中,大语言模型能够根据学生的学习进度和风格定制个性化的教学计划和材料。
相关技术中,大语言模型主要使用深度搜索或者逐步(step-by-step)的方式调用外部工具。
其中,深度搜索的方式由于需要进行大量的尝试,时间和空间复杂度都很大,并且会浪费大量的大语言模型的调用次数。
其中,Step-by-step的方式需要根据当前调用的外部工具的输出结果或执行结果来决定下一步的计划,这种方式难以确保工具调用顺序的正确性,也没有利用到工具之间的关系信息。
综上,现有的外部工具的多轮调用方式,至少存在以下问题:
(1)无法保证工具调用顺序的正确性;
(2)使用大语言模型的次数过多,导致成本过高,耗时过长;
(3)缺乏监督机制,不能保证工具执行结果或输出结果的可靠性。
因此针对上述存在的至少一项问题,本公开提出一种文本处理方法、装置、电子设备和存储介质。
下面参考附图描述本公开实施例的文本处理方法、装置、电子设备和存储介质。在具体描述本公开实施例之前,为了便于理解,首先对常用技术词进行介绍:
大模型,是指具有大规模参数和复杂计算结构的机器学习模型,通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型在各种领域都有广泛的应用,包括自然语言处理、计算机视觉、语音识别和推荐系统等。
大模型中的LLM,是一类基于深度学习的自然语言处理模型,其主要特点是具有庞大的模型参数和复杂的神经网络结构,具备强大的语言理解能力、上下文感知能力和语言生成能力,其能够自动地从输入数据中学习有用的特征表示,生成相关文本。
图1为本公开实施例一所提供的文本处理方法的流程示意图。
本公开实施例以该文本处理方法被配置于文本处理装置中来举例说明,该文本处理装置可以应用于任一电子设备中,以使该电子设备可以执行文本处理功能。
其中,电子设备可以为任一具有计算能力的设备,例如可以为个人电脑、移动终端、服务器等,移动终端例如可以为手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
如图1所示,该文本处理方法可以包括以下步骤:
步骤S101,获取查询文本、工具集中多个候选工具的工具信息和多个候选工具之间的关系信息。
在本公开实施例中,对查询文本(query)的获取方式不做限制,比如,查询文本可以为用户输入的文本(或语句、问题、提问),或者,查询文本也可以为在线采集的文本(或语句、问题、提问),例如可以采用网络爬虫技术,在线采集查询文本,或者,查询文本也可以为从现有的训练集或测试集中获取的文本,等等,本公开实施例对此并不做限制。
其中,查询文本的输入方式可以包括但不限于触摸输入(如滑动、点击等)、键盘输入、语音输入等。
在本公开实施例中,候选工具包括但不限于:API、函数、搜索引擎等,其中,候选工具可以是工具集中的全部工具,或者,候选工具也可以是工具集中的部分工具,本公开实施例对此并不做限制。
在本公开实施例中,工具信息包括但不限于:候选工具的标识信息(如工具名称、工具ID(Identity,身份标识))、功能描述信息。其中,每个候选工具的工具信息可以为预先设置的。
其中,功能描述信息包括但不限于以下至少一项:
第一项,候选工具的输入要求。
其中,输入要求包括但不限于:数据类型(即候选工具所接受的输入数据类型,如文本、图像、数值、文件等)、格式要求(即候选工具所接受的输入数据需要遵循的格式或规范,如特定文件扩展名、编码方式、文本格式等)、内容要求(如果候选工具所接受的输入数据需要包含某些特定信息或满足特定条件,也应详细列出该内容要求)等。
第二项,候选工具的处理过程。
其中,处理过程用于指示候选工具对输入数据进行处理的方式,包括使用的算法、技术或方法。需要说明的是,如果处理过程涉及多个步骤或阶段,应逐一说明。
第三项,候选工具的输出要求。
其中,输出要求包括但不限于:数据类型(即候选工具的输出数据类型)、输出格式(即候选工具的输出数据的格式或呈现方式,如表格、图表、文本报告等)、信息内容(详细列出输出数据中包含的具体信息或指标,以便用户了解输出数据的结构和内容)等。
第四项,候选工具的使用限制。
其中,使用限制用于指示使用候选工具时可能遇到的限制,比如处理速度、内存限制、数据大小限制等。
第五项,候选工具的使用注意事项。
其中,使用注意事项用于提供关于如何正确使用候选工具的建议或提示,以避免候选工具调用出错或提高候选工具的使用效率。
综上,工具信息包括与候选工具关联的多项信息,可以提升后续工具调用路径生成的可靠性和合理性,提升工具调用路径中各工具的调用顺序的正确性。
在本公开实施例中,关系信息(还可以称为连接关系)包括但不限于:依赖关系、并列关系。其中,多个候选工具之间的关系信息可以为预先预测得到的。
其中,依赖关系:一个工具的输入取决于另一个工具的输出。
其中,并列关系(或替换关系、替代关系):工具之间可以互相替换,比如,在某个工具无法正常工作的情况下,可以利用另一个工具替代该工具。
步骤S102,根据查询文本、工具信息和关系信息,生成工具调用路径。
其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
在本公开实施例中,可以根据查询文本、每个候选工具的工具信息和不同候选工具之间的关系信息,生成工具调用路径;其中,工具调用路径中可以包含N(N为正整数)个节点,工具调用路径中的第i(i为大不于N的正整数)个节点,用于指示大语言模型第i次需要调用的目标工具,其中,目标工具是从候选工具中确定的。
步骤S103,采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
其中,为了提升回复信息的内容丰富性,满足用户的实际查询需求,回复信息中可以包括以下至少一项:
第一项,文本。
第二项,音频,或称为语音。
第三项,视频。
第四项,图像。
第五项,文档。
第六项,压缩包。
第七项,网络链接,如URL(uniform resource locator,统一资源定位系统)链接。用户可以通过点击该网络链接,来访问查询文本对应的回复信息。比如,以查询文本为用户提问进行示例,可以通过点击该网络链接,来访问用户提问对应的答案。
在本公开实施例中,可以采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
步骤S104,根据回复信息,对查询文本进行回复。
在本公开实施例中,可以根据回复信息,对查询文本进行回复。
本公开实施例的文本处理方法,在大语言模型调用工具之前,预先规划(或预先编排)出工具调用路径,大语言模型基于预先规划的工具调用路径来调用工具,可以实现大语言模型的使用次数(或调用次数)最少为工具调用路径中的节点数量,降低大语言模型的使用次数,即,预先编排工具的调用顺序,可以减少使用大语言模型进行思考的次数,提升文本处理效率,以及降低成本;此外,工具调用路径不仅是根据查询文本和每个候选工具的工具信息确定的,还根据不同候选工具之间的关系信息(比如依赖关系、并列关系)确定,可以提升工具调用路径的逻辑连贯性和工具执行的有效性,提升工具调用顺序的正确性。
需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均在征得用户同意的前提下进行,并且均符合相关法律法规的规定,且不违背公序良俗。
为了清楚说明本公开任一实施例中是如何从工具集中确定候选工具的,本公开还提出一种文本处理方法。
图2为本公开实施例二所提供的文本处理方法的流程示意图。
如图2所示,该文本处理方法可以包括以下步骤:
步骤S201,获取查询文本。
步骤S201的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤S202,对查询文本进行意图识别,得到目标意图。
其中,目标意图包括但不限于以下意图:搜索类查询、问答类查询等。
在本公开实施例中,可以基于NLP技术,对查询文本进行意图识别,得到目标意图。
作为一种示例,查询文本所属的目标意图的识别方式,例如可以为:
1、根据查询文本,获取至少一个文本意图对(后续记为目标文本意图对);其中,目标文本意图对中包括与查询文本相似的候选文本及候选文本所属的候选意图。
其中,文本意图对为预先生成的,比如,可以预先从至少一个数据源,采集参考文本,之后,可以采用文本分类算法识别该参考文本所属的参考意图,或者,也可以采用人工标注方式,标注该参考文本所属的参考意图,从而可以根据参考文本和对应的参考意图,生成文本意图对。
本公开中,可以计算查询文本与各文本意图对中的参考文本之间的相似度(如文本相似度、语义相似度),并基于查询文本与文本意图对中的参考文本之间的相似度,从文本意图对中确定目标文本意图对。
2、根据至少一个目标文本意图对,生成提示信息(prompt),本公开中记为第二提示信息。
作为一种示例,可以根据至少一个目标文本意图对,生成至少一个问答对,其中,每个问答对中的问题(Question,简称为Q)用于指示对应的目标文本意图对中的候选文本,每个问答对中的答案(Answer,简称为A)用于指示对应的目标文本意图对中的候选意图,本公开中,可以根据至少一个目标文本意图对中的候选意图,确定意图识别范围,即意图识别范围中包括各个候选意图,并根据至少一个问答对和意图识别范围,生成第二提示信息。
由此,第二提示信息可以指示各个问答对,该问答对可以作为先验信息或任务信息,指示大语言模型待识别的信息,可以提升意图识别的精度,并且,第二提示信息还可以指示意图识别范围,从而可以仅在该第二提示信息所指示的意图识别范围内进行意图识别,而无需在所有意图中进行意图识别,可以消除意图识别幻觉,从而提升意图识别结果的可靠性。
3、采用大语言模型基于第二提示信息,对查询文本进行意图识别,得到查询文本所属的目标意图。
可以理解的是,相似文本所属的意图也是相似的,基于与查询文本相似的候选文本以及候选文本所属的候选意图,来识别查询文本所属的目标意图,可以提升意图识别的准确性和可靠性。
当然,也可以采用其他意图识别算法,对查询文本进行意图识别,本公开实施例对此并不做限制。
步骤S203,基于目标意图,从工具集中确定与目标意图匹配的候选工具。
在本公开实施例中,可以预先设置不同意图与工具之间的对应关系,比如,搜索类查询对应工具1、工具2和工具3,问答类查询对应工具4、工具5和工具6,本公开中,可以基于查询文本所属的目标意图,查询上述对应关系,以从工具集中确定与该目标意图匹配的候选工具。
仍以上述例子进行示例,假设目标意图为问答类查询,则候选工具可以为工具4、工具5和工具6。
步骤S204,获取多个候选工具的工具信息和多个候选工具之间的关系信息。
步骤S205,根据查询文本、工具信息和关系信息,生成工具调用路径。
其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
步骤S206,采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
步骤S207,根据回复信息,对查询文本进行回复。
步骤S204至S207的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的文本处理方法,通过从工具集中,筛选与查询文本所属的目标意图匹配的候选工具,仅根据筛选得到的候选工具进行路径规划或编排,而无需根据工具集中所有工具进行路径规划或编排,可以提升工具调用路径的生成效率,进而提升文本处理效率。
为了清楚说明本公开任一实施例中是如何从工具集中确定候选工具的,本公开还提出一种文本处理方法。
图3为本公开实施例三所提供的文本处理方法的流程示意图。
如图3所示,该文本处理方法可以包括以下步骤:
步骤S301,获取查询文本。
步骤S301的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤S302,识别查询文本所属的目标领域。
作为一种示例,可以对查询文本进行语义和语法分析,以得到查询文本所属的目标领域。
作为另一种示例,由于不同的领域的文本具有不同的语言特征,如专业术语、表达方式、句式结构等,因此本公开中,还可以通过分析查询文本中的专业术语、关键词和句式结构等,识别查询文本所属的目标领域。
作为又一种示例,可以基于NLP技术和文本分类算法,识别查询文本所属的目标领域。
需要说明的是,上述目标领域的识别方式仅是示例性说明,但本公开并不限于此,实际应用时,也可以采用其他算法,来识别查询文本所属的目标领域。
步骤S303,基于目标领域,从工具集中确定与目标领域匹配的候选工具。
在本公开实施例中,可以预先设置不同领域与工具之间的对应关系,从而本公开中,可以基于查询文本所属的目标领域,查询上述对应关系,以从工具集中确定与该目标领域匹配的候选工具。
步骤S304,获取多个候选工具的工具信息和多个候选工具之间的关系信息。
步骤S304的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,多个候选工具之间的关系信息的获取方式,例如可以为:采用大语言模型对多个候选工具的工具信息进行处理,得到结构化信息。
其中,结构化信息可以包括任意两个候选工具的标识信息(如工具名称)以及该任意两个候选工具之间的关系信息;其中,关系信息包括依赖关系、并列关系。
由此,采用深度学习技术,预测不同候选工具之间的关系信息,可以提升预测结果的准确性和可靠性。并且,候选工具之间的关系信息,以结构化数据的方式提供,不仅清晰、易于理解,还可以提升后续关系信息处理的效率、准确性和可靠性。
需要说明的是,为了提升文本处理效率,可以预先采用大语言模型基于工具集中每个工具的工具信息,预测不同工具之间的关系信息,并存储不同工具之间的关系信息,从而本公开中,仅需通过查询方式,获取多个候选工具之间的关系信息,不仅操作简单、易于实现,还可以提升关系信息的获取效率。
在本公开的任意一个实施例之中,多个候选工具之间的关系信息的预测方式,例如可以为:
1、获取提示模板;其中,提示模板,用于指示大语言模型的输出要求和待执行的任务信息。
其中,提示模板可以为预先配置的,当然,也可以根据实际应用需求,对该提示模板进行动态更新,本公开实施例对此并不作限制。其中,提示模板用于指示大语言模型待执行的任务信息和输出要求。其中,输出要求可以包括但不限于:输出格式、输出的数据类型等。
2、可以采用多个候选工具的工具信息,对提示模板进行填充,得到提示信息(prompt),本公开中记为第一提示信息。
3、可以采用大语言模型对该第一提示信息进行处理,得到结构化信息。
其中,结构化信息可以包括任意两个候选工具的标识信息(如工具名称)以及该任意两个候选工具之间的关系信息;其中,关系信息包括依赖关系、并列关系。
综上,第一提示信息可以作为先验信息或任务信息,指示大语言模型待执行的任务信息,可以提升大语言模型的预测精度,即,提升结构化信息预测的准确性。并且,第一提示信息还可以指示大语言模型的输出要求,可以使得输出的大语言模型输出的结构化信息能够满足用户实际的查询需求。
步骤S305,根据查询文本、工具信息和关系信息,生成工具调用路径。
其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
步骤S305的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,工具调用路径的生成方式,例如可以为:
1、采用大语言模型基于查询文本、多个候选工具的工具信息和多个候选工具之间的关系信息,从多个候选工具中依次确定每次需要调用的目标工具。
2、根据每次需要调用的目标工具,生成工具调用路径。
可以理解的是,通过分析候选工具之间的关系信息,比如依赖关系和并列关系(或替换关系、替代关系),可以为大语言模型提供了一种更加高效的路径规划方法,该方法考虑了候选工具的输入和输出之间的关系,确保了工具调用路径的逻辑连贯性和工具执行的有效性。例如,如果某个候选工具因为不满足执行条件而无法产生所需的输出,则可以将与该候选工具之间的关系信息为并列关系的其他工具,作为替换工具(或备选工具),以保证整个任务流程不会因为单一工具的失败而中断。并且,该方法允许大语言模型在面对不确定性和复杂性时,依旧能够维持任务执行的连续性,为大语言模型提供了一种更加灵活和动态的工具调用能力,使其能够更好地适应多变的应用场景和用户需求。
步骤S306,采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
步骤S307,根据回复信息,对查询文本进行回复。
步骤S306至S307的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的文本处理方法,通过从工具集中,筛选与查询文本所属的目标领域匹配的候选工具,仅根据筛选得到的候选工具进行路径规划,而无需根据工具集中所有工具进行路径规划,可以提升工具调用路径的生成效率,进而提升文本处理效率。
为了清楚说明本公开任一实施例是如何采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息的,本公开还提出一种文本处理方法。
图4为本公开实施例四所提供的文本处理方法的流程示意图。
如图4所示,该文本处理方法可以包括以下步骤:
步骤S401,获取查询文本、工具集中多个候选工具的工具信息和多个候选工具之间的关系信息。
步骤S402,根据查询文本、工具信息和关系信息,生成工具调用路径。
其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
步骤S401至S402的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤S403,采用大语言模型依次调用工具调用路径中的各节点所指示的目标工具对查询文本进行处理。
在本公开实施例中,可以采用大语言模型依次或遍历调用工具调用路径中的各节点所指示的目标工具对查询文本进行处理。
步骤S404,获取大语言模型当前调用的目标工具的输出结果。
在本公开实施例中,可以对大语言模型当前调用的目标工具进行实时监测,以获取该当前调用的目标工具的输出结果(或执行结果、处理结果)。
步骤S405,判断输出结果是否满足与当前调用的目标工具适配的预期要求,若是,则执行步骤S406,若否,则执行步骤S407至S409。
在本公开的任意一个实施例中,与当前调用的目标工具适配的预期要求可以包括以下至少一项:
第一项,当前调用的目标工具的输出结果与工具调用路径中位于当前节点的下一节点所指示的目标工具的输入要求适配。
其中,当前节点是指工具调用路径中当前调用的目标工具所处的节点。
比如,当前节点所指示的目标工具的输出结果的数据类型,与下一节点所指示的目标工具的输入要求中的数据类型匹配。
再比如,当前调用的目标工具的输出结果的格式,与下一节点所指示的目标工具的输入要求中的格式要求匹配。
由此,可以避免当前节点所指示的目标工具的输出结果与下一节点所指示的目标工具的输入要求不匹配,而导致下一节点所指示的目标工具无法执行或执行失败的情况发生。
第二项,当前调用的目标工具的输出结果与查询文本之间的相关度高于设定阈值。
其中,设定阈值为预先设定的相关度阈值。
由此,可以避免目标工具的输出结果与查询文本无关,而导致回复信息无法满足用户实际的查询需求的情况发生,改善用户的使用体验。
需要说明的是,步骤S406与步骤S407至S409为并列的两种实现方式,实际应用时,仅需择一执行。
步骤S406,采用大语言模型基于当前调用的目标工具的输出结果,继续调用下一节点所指示的目标工具对查询文本进行处理,以得到回复信息。
其中,下一节点是工具调用路径中位于当前节点的下一个节点,当前节点是为当前调用的目标工具所处的节点。
在本公开实施例中,在大语言模型当前调用的目标工具的输出结果满足预期要求的情况下,可以继续调用下一节点所指示的目标工具对查询文本进行处理,以得到回复信息。
由此,仅在工具调用路径中的每个节点所指示的目标工具的输出结果(或执行结果)均满足每个节点对应的预期要求的情况下,才继续调用后续节点所指示的目标工具来对查询文本进行处理,可以保证回复信息生成的准确性和可靠性。
步骤S407,基于关系信息,从候选节点中确定替换工具。
在本公开实施例中,在大语言模型当前调用的目标工具的输出结果不满足上述预期要求的情况下,可以基于多个候选工具之间的关系信息,从多个候选节点中确定替换工具;其中,替换工具与该当前调用的目标工具之间的关系信息为并列关系(或替换关系)。
步骤S408,采用替换工具对工具调用路径中的当前节点进行更新。
在本公开实施例中,可以采用替换工具对工具调用路径中的当前节点进行更新;其中,当前节点为工具调用路径中当前调用的目标工具所处的节点。
步骤S409,采用大语言模型调用更新后的当前节点所指示的替换工具对查询文本进行处理,以得到回复信息。
在本公开实施例中,可以采用大语言模型重新调用工具调用路径中更新后的当前节点所指示的替换工具对查询文本进行处理。
在本公开实施例中,还可以获取替换工具的输出结果,并判断该替换工具的输出结果是否满足与该调换工具适配的预期要求,在替换工具的输出结果满足与该替换工具适配的预期要求的情况下,可以进一步采用大语言模型基于该替换工具的输出结果,继续调用下一节点所指示的目标工具对查询文本进行处理,以得到回复信息。
在本公开的任意一个实施例之中,采用大语言模型调用替换工具对查询文本进行处理的方式,例如可以为:
1、根据当前调用的目标工具的输出结果和与该当前调用的目标工具适配的预期要求,确定当前调用的目标工具的异常输出原因。
比如,在目标工具的输出结果的数据类型与下一节点所指示的目标工具的输入要求中的数据类型不匹配的情况下,异常输出原因用于指示输出结果的数据类型错误。
2、采用大语言模型基于异常输出原因,调用更新后的当前节点所指示的替换工具对查询文本进行处理。
由此,可以实现基于异常输出原因,指导大语言模型调用的替换工具的输出,降低替换工具的输出结果与下一节点所指示的目标工具的输入要求不匹配的概率,和/或,降低替换工具的输出结果与查询文本不相关的概率。
作为一种示例,可以将异常输出原因与输出结果,对应写入历史对话中,从而可以采用大语言模型基于历史对话,调用更新后的当前节点所指示的替换工具对查询文本进行处理。
由此,同时基于异常输出原因与异常的输出结果,来指导大语言模型调用的替换工具的输出,可以进一步降低替换工具的输出结果与下一节点所指示的目标工具的输入要求不匹配的概率,和/或,进一步降低替换工具的输出结果与查询文本不相关的概率。
步骤S410,根据回复信息,对查询文本进行回复。
步骤S410的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的文本处理方法,对每个目标工具的输出结果进行监测,并在每个目标工具的输出结果不满足对应的预期要求的情况下,采用替换工具对该目标工具进行替换,不仅可以实现即时地纠正错误,避免错误的累积和传递,从而保证了任务流程的顺利进行,即可以保证整个任务流程不会因为单一工具的失败而中断,而且还可以提升文本处理的有效性、高效性和成功率。
为了清楚说明本公开任一实施例是如何采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息的,本公开还提出一种文本处理方法。
图5为本公开实施例五所提供的文本处理方法的流程示意图。
如图5所示,该文本处理方法可以包括以下步骤:
步骤S501,获取查询文本、工具集中多个候选工具的工具信息和多个候选工具之间的关系信息。
步骤S501的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
在本公开的任意一个实施例之中,在获取到查询文本后,还可以采用大语言模型对查询文本进行预处理。
其中,预处理可以包括但不限于以下处理:去重处理、消歧处理、纠错处理(比如拼写错误、语法错误等错误的纠错处理)、字体转换、字体格式转换、指定符号的去除处理、缺失语句的去除处理或填空处理。
其中,指定符号可以包括表情符号、特殊符号等。
由此,可以实现对查询文本进行清洗和整理,提升后续的文本处理的质量和可靠性。
步骤S502,根据查询文本、工具信息和关系信息,生成多条工具调用路径。
其中,每条工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
步骤S503,采用大语言模型依次调用目标工具调用路径中的各节点所指示的目标工具对查询文本进行处理。
其中,目标工具调用路径可以为多条工具调用路径中的任一路径。
步骤S504,获取大语言模型当前调用的目标工具的输出结果。
步骤S505,判断输出结果是否满足与当前调用的目标工具适配的预期要求,若是,则执行步骤S506,若否,则执行步骤S507至S509。
需要说明的是,步骤S506与步骤S507至S509为并列的两种实现方式,实际应用时,仅需择一执行。
步骤S506,采用大语言模型基于当前调用的目标工具的输出结果,继续调用下一节点所指示的目标工具对查询文本进行处理,以得到回复信息。
其中,下一节点是目标工具调用路径中位于当前节点的下一个节点,当前节点是为当前调用的目标工具所处的节点。
步骤S502至S506的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
步骤S507,停止调用目标工具调用路径中位于当前节点之后的其余节点。
在本公开实施例中,在当前调用的目标工具的输出结果不满足与当前调用的目标工具适配的预期要求的情况下,可以停止调用目标工具调用路径中位于当前节点之后的其余节点。
步骤S508,从多条工具调用路径中除目标工具调用路径之外的其他路径中,确定替换路径。
在本公开实施例中,还可以从多条工具调用路径中除目标工具调用路径之外的其他路径中,确定用于替换该目标工具调用路径的替换路径。
比如,可以从其他路径中,随机选择一条路径,作为替换路径。
再比如,可以将其他路径中节点数量最少的路径,作为替换路径。
步骤S509,采用大语言模型依次调用替换路径中的节点所指示的目标工具,对查询文本进行处理,得到回复信息。
在本公开实施例中,可以采用大语言模型依次调用替换路径中的节点所指示的目标工具,对查询文本进行处理,得到回复信息。其实现原理与步骤S103类似,在此不做赘述。
步骤S510,根据回复信息,对查询文本进行回复。
步骤S510的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
本公开实施例的文本处理方法,可以实现在大语言模型调用的某条路径中的某个节点的输出异常的情况下,选择等价的替换路径(或备选路径),大语言模型可以继续调用该替换路径中的各个节点所指示的目标工具对查询文本进行处理,可以保证整个任务流程的顺利执行,提升文本处理的成功率和有效性。
需要说明的是,对于已知的可使用的工具集,有效地利用工具集中工具之间的关系信息,这对于保证工具的调用顺序的正确性而言是至关重要的。同时,预先编排工具的调用顺序,可以减少使用大语言模型进行思考的次数,降低成本。而对于工具的输出结果(或执行结果)的监督也是必不可少的,对于工具执行出现错误(即工具的输出结果异常)的情况,一个成熟的监督机制可以帮助系统检查出错误原因(本公开中记为异常输出原因)并进行修正。
在这个背景下,本公开提供了一种基于大语言模型预编排的工具(如API)多轮调用方法,利用工具之间的关系信息(或连接关系)和预先编排机制来保证工具的调用顺序的正确性,并减少大语言模型的调用次数,同时使用了监督机制来保证工具的输出结果(或执行结果)的可靠性,为大语言模型与外部工具的结合提供了更有效的途径。
即,大语言模型可以通过调用一系列的工具来完成特定任务,并利用工具之间的关系信息、预先编排机制和监督机制来改善效果。在这种协作中,大语言模型提供规划和反省能力,而外部工具提供领域特定的知识,用户可以使用自然语言与大语言模型进行交流。一旦理解了用户的意图,就可以使用相关的工具执行必要的任务。
作为一种示例,为了克服工具间关系缺乏信息以及工具的输出结果缺乏反馈机制的问题,本公开提出如图6所示的几种机制:
一、工具关系连接机制,或工具间关系的生成机制。
由于传统方法没有利用到已知工具集中的工具之间的关系信息(或连接关系),导致很难保证大语言模型完全理解了工具的使用方法,为了解决这个问题,本公开设计了工具关系连接机制,将工具之间的关系信息分为以下两种:
第一种,依赖关系:这种关系体现了工具之间的依赖关系,其中一个工具的输入取决于另一个工具的输出。
第二种,并列关系(或替代关系):这种关系体现了工具与工具之间是可以互相替代的。意味着在初始工具无法正常工作的情况下,一个工具可以替代另一个工具。
其中,工具关系连接机制可以描述为以下公式:
T=L(t); (1)
其中,t表示工具名称和工具的功能描述信息,L表示大语言模型,T表示工具关系连接机制发掘出来的关系信息。即,可以预先将工具集中所有工具的工具名称及其功能描述信息输入到大语言模型中,使得大语言模型能够基于这些输入数据预测工具之间的关系信息(如依赖关系、并列关系)。
其中,大语言模型可以按照标准格式输出工具间的关系信息,形成三元组。其中,工具的功能描述信息通常可以提供关于工具的输入和输出的清晰细节,辅助大语言模型预测它们之间的连接关系。利用预测的三元组关系,预先编排机制可以有效地克服正确排序工具的障碍。
举例而言,“XX搜索”工具经常用于信息检索,在使用“XX搜索”工具之前,需要先使用“查询生成器”工具来生成相关查询文本,这说明了这两个工具之间存在依赖关系。同样,在寻找指定员工的员工信息时,首先需要使用“ID查询”工具,来确定指定员工的ID,然后才能通过ID,查询指定员工的员工信息。
在这些场景中,一个通用的大语言模型可能在正确安排工具的调用顺序方面面临挑战,然而,通过工具关系连接机制,大语言模型可以轻松地识别工具之间的关系信息,从而后续可以采用预先编排机制基于该关系信息,正确安排工具的调用顺序。
二、预先编排机制。
在大语言模型的工具调用中,生成正确的工具调用路径是一个重大挑战。传统的Step-by-step方法需要在形成工具调用路径的过程中,多次调用大语言模型进行推理。事实上,一旦大语言模型理解了用户意图和可用工具集,它就可以有效地规划工具调用路径。在这个过程中,并不是step-by-step的思考起到了作用,对大语言模型来说至关重要的是要认识到工具之间的关系信息,并处理工具不能完成的情况。因此本公开结合工具之间的关系信息,设计了预先编排机制,以增强大语言模型在生成工具调用路径方面的能力,并为工具无效的情景设计了一个工具替代的策略。
其中,预先编排机制可以总结为如下公式:
P=P(T,t,Q); (2)
其中,P表示具体计划,t表示工具名称和功能描述信息,Q表示用户输入的查询文本。在这个公式中,P为大语言模型在每个规划步骤中提供的指导,T向大语言模型提供工具之间的关系信息。在整个规划过程中,大语言模型会根据T来决定下一个使用哪一个工具。
预先编排机制可以通过分析工具之间的依赖关系和替代关系,为大语言模型提供了一种更加高效的路径规划方法,这种机制考虑了工具的输入和输出之间的关系,确保了工具调用路径的逻辑连贯性和工具执行的有效性。例如,如果某个特定的工具因为不满足执行条件而无法产生所需的输出,则预先编排机制能够识别出等价的替换工具(或备选工具),以保证整个任务流程不会因为单一工具的失败而中断。
其中,工具替代策略进一步增强了系统的鲁棒性,允许大语言模型在面对不确定性和复杂性时,依旧能够维持任务执行的连续性。该工具替代策略通过构建一个包含替换工具(或备选工具)和其适用条件的知识库,使得大语言模型能够在原有工具无法正常工作时,快速切换到最合适的替换工具。
通过预先编排机制和工具替代策略的结合,不仅提升了大语言模型在处理复杂任务时的效率,也提高了任务执行的成功率。更重要的是,它为大语言模型提供了一种更加灵活和动态的工具调用能力,使其能够更好地适应多变的应用场景和用户需求。
综上所述,通过深入理解和应用工具之间的依赖关系和并列关系,以及有效地管理工具的替代和失败情况,本公开能够极大地提升大语言模型在自动化和智能化任务执行中的表现,为用户提供更加智能和高效的服务。
三、监督机制,或反思机制。
尽管大语言模型展现出了强大的语言理解能力,但在工具调用能力上仍存在局限性。在本公开中,监督机制(或反思机制)对于确保后续执行的准确性至关重要。在监督机制中,由工具关系连接机制提供的工具间的关系信息为监督(或反思)提供了基础,这些关系使得监督机制(或反思机制)能够确定一个工具的输出结果是否满足下一个工具的需求或预期要求。如果监督机制(或反思机制)得出的结果为“正确”,这表明输出结果满足预期要求,并且,可以将工具的输出结果直接添加到对话历史中。如果监督机制(或反思机制)得出的结果为“错误”,这表明工具未能生成预期的输出,或者输出没有满足标准。此外,监督机制(或反思机制)会为工具的输出生成反馈。如果监督机制(或反思机制)的输出被判定为“错误”,它会将反馈和不正确的工具的输出结果一起添加到对话历史中,指导工具改正错误的输出结果。
通过引入监督机制(或反思机制),可以显著地提高大语言模型在自动化处理中的可靠性和效率。通过实时监控和评估工具的输出结果的正确性,能够即时地纠正错误,避免错误的累积和传递,从而保证了任务流程的顺利进行。此外,将错误的输出结果和反馈加入到对话历史中,不仅有助于即时修正问题,也为未来的任务执行提供了宝贵的学习材料,使得大语言模型能够从过去的错误中学习,不断优化其工具调用和任务处理策略。
需要说明的是,监督机制(或反思机制)的有效实施,依赖于对工具间的关系信息的深入理解和准确描述。这不仅包括工具的直接输出输入关系,还涉及到更为复杂的场景,如工具间的潜在兼容性问题、特定条件下的替代关系等。因此,建立一个全面而精确的工具关系知识库,成为实现高效监督机制(或反思机制)的关键。
在实践中,监督机制(或反思机制)的应用,不仅可以极大地提升了大语言模型处理多步骤、多工具任务的能力,而且还增强了大语言模型的自适应能力,使其能够更好地应对各种突发情况和复杂需求,为用户提供更加精准和个性化的服务。通过持续的反馈和学习,大语言模型能够逐步提高其对工具调用路径的规划能力,实现更加智能化的自动化处理。
总之,监督机制(或反思机制)为大语言模型的工具调用能力提供了重要的支撑,确保了任务执行的准确性和高效性。通过不断地学习和优化,大语言模型将在未来展现出更加卓越的性能,为自动化领域带来更多的创新和突破。
综上,本公开提出了一种利用大语言模型进行工具多轮调用的方法,可以通过工具关系连接机制和预先编排机制来保证工具调用顺序的正确性,并通过监督机制来保证工具的输出结果的准确性。
与上述图1至图6实施例提供的文本处理方法相对应,本公开还提供一种文本处理装置,由于本公开实施例提供的文本处理装置与上述图1至图6实施例提供的文本处理方法相对应,因此在文本处理方法的实施方式也适用于本公开实施例提供的文本处理装置,在本公开实施例中不再详细描述。
图7为本公开实施例七所提供的文本处理装置的结构示意图。
如图7所示,该文本处理装置700可以包括:获取模块710、生成模块720、调用模块730以及回复模块740。
其中,获取模块710,用于获取查询文本、工具集中多个候选工具的工具信息和多个候选工具之间的关系信息。
生成模块720,用于根据查询文本、工具信息和关系信息,生成工具调用路径;其中,工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,目标工具是从候选工具中确定的,i为正整数。
调用模块730,用于采用大语言模型依次调用工具调用路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
回复模块740,用于根据回复信息,对查询文本进行回复。
在本公开实施例的一种可能的实现方式中,多个候选工具之间的关系信息,采用以下模块确定:
处理模块,用于采用大语言模型对多个候选工具的工具信息进行处理,得到结构化信息;
其中,结构化信息包括任两候选工具的标识信息以及任两候选工具之间的关系信息;其中,关系信息包括依赖关系、并列关系。
在本公开实施例的一种可能的实现方式中,工具信息包括候选工具的标识信息和功能描述信息;其中,功能描述信息包括以下至少一项:候选工具的输入要求;候选工具的处理过程;候选工具的输出要求;候选工具的使用限制;候选工具的使用注意事项。
在本公开实施例的一种可能的实现方式中,处理模块,用于:获取提示模板;其中,提示模板,用于指示大语言模型的输出要求和待执行的任务信息;采用多个候选工具的工具信息,对提示模板进行填充,得到第一提示信息;采用大语言模型对第一提示信息进行处理,得到结构化信息。
在本公开实施例的一种可能的实现方式中,候选工具是采用以下模块,从工具集中确定的:
第一识别模块,用于对查询文本进行意图识别,得到目标意图;
第一确定模块,用于基于目标意图,从工具集中确定与目标意图匹配的候选工具。
在本公开实施例的一种可能的实现方式中,第一识别模块,用于:根据查询文本,获取至少一个文本意图对;其中,文本意图对中包括与查询文本相似的候选文本及候选文本所属的候选意图;根据至少一个文本意图对,生成第二提示信息;采用大语言模型基于第二提示信息,对查询文本进行意图识别,得到目标意图。
在本公开实施例的一种可能的实现方式中,候选工具是采用以下模块,从工具集中确定的:
第二识别模块,用于识别查询文本所属的目标领域;
第二确定模块,用于基于目标领域,从工具集中确定与目标领域匹配的候选工具。
在本公开实施例的一种可能的实现方式中,生成模块720,用于:采用大语言模型基于查询文本、工具信息和关系信息,从多个候选工具中依次确定每次需要调用的目标工具;根据每次需要调用的目标工具,生成工具调用路径。
在本公开实施例的一种可能的实现方式中,调用模块730,用于:采用大语言模型依次调用工具调用路径中的各节点所指示的目标工具对查询文本进行处理;获取大语言模型当前调用的目标工具的输出结果;判断输出结果是否满足与当前调用的目标工具适配的预期要求;在输出结果满足预期要求的情况下,采用大语言模型基于当前调用的目标工具的输出结果,继续调用下一节点所指示的目标工具对查询文本进行处理,以得到回复信息;其中,下一节点是工具调用路径中位于当前节点的下一个节点,当前节点是为当前调用的目标工具所处的节点。
在本公开实施例的一种可能的实现方式中,调用模块730,还用于:在输出结果不满足预期要求的情况下,基于关系信息,从候选节点中确定替换工具;其中,替换工具与当前调用的目标工具之间的关系信息为并列关系;采用替换工具对工具调用路径中的当前节点进行更新;采用大语言模型调用更新后的当前节点所指示的替换工具对查询文本进行处理,以得到回复信息。
在本公开实施例的一种可能的实现方式中,调用模块730,用于:根据输出结果和预期要求,确定当前调用的目标工具的异常输出原因;采用大语言模型基于异常输出原因,调用更新后的当前节点所指示的替换工具对查询文本进行处理。
在本公开实施例的一种可能的实现方式中,调用模块730,用于:将异常输出原因与输出结果,对应写入历史对话中;采用大语言模型基于历史对话,调用更新后的当前节点所指示的替换工具对查询文本进行处理。
在本公开实施例的一种可能的实现方式中,工具调用路径为多条;调用模块730,还用于:在输出结果不满足预期要求的情况下,停止调用工具调用路径中位于当前节点之后的其余节点;从多条工具调用路径中除工具调用路径之外的其他路径中,确定替换路径;采用大语言模型依次调用替换路径中的节点所指示的目标工具,以对查询文本进行处理,得到回复信息。
在本公开实施例的一种可能的实现方式中,预期要求包括以下至少一项:输出结果与工具调用路径中位于当前节点的下一节点所指示的目标工具的输入要求适配;输出结果与查询文本之间的相关度高于设定阈值。
在本公开实施例的一种可能的实现方式中,该文本处理装置700还可以包括:
预处理模块,用于采用大语言模型对查询文本进行预处理;
其中,预处理包括以下至少一项:去重处理、消歧处理、纠错处理、字体转换、字体格式转换、指定符号的去除处理、缺失语句的去除处理或填空处理。
本公开实施例的文本处理装置,在大语言模型调用工具之前,预先规划(或预先编排)出工具调用路径,大语言模型基于预先规划的工具调用路径来调用工具,可以实现大语言模型的使用次数(或调用次数)最少为工具调用路径中的节点数量,降低大语言模型的使用次数,即,预先编排工具的调用顺序,可以减少使用大语言模型进行思考的次数,提升文本处理效率,以及降低成本;此外,工具调用路径不仅是根据查询文本和每个候选工具的工具信息确定的,还根据不同候选工具之间的关系信息(比如依赖关系、并列关系)确定,可以提升工具调用路径的逻辑连贯性和工具执行的有效性,提升工具调用顺序的正确性。
为了实现上述实施例,本公开还提供一种电子设备,该电子设备可以包括至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开上述任一实施例提出的文本处理方法。
为了实现上述实施例,本公开还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开上述任一实施例提出的文本处理方法。
为了实现上述实施例,本公开还提供一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序在被处理器执行时实现本公开上述任一实施例提出的文本处理方法。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图8示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
其中,电子设备可以包括上述实施例中的服务端、客户端。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,电子设备800包括计算单元801,其可以根据存储在ROM(Read-OnlyMemory,只读存储器)802中的计算机程序或者从存储单元807加载到RAM(Random AccessMemory,随机访问/存取存储器)803中的计算机程序,来执行各种适当的动作和处理。在RAM803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。I/O(Input/Output,输入/输出)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于CPU(Central Processing Unit,中央处理单元)、GPU(Graphic Processing Units,图形处理单元)、各种专用的AI(Artificial Intelligence,人工智能)计算芯片、各种运行机器学习模型算法的计算单元、DSP(Digital SignalProcessor,数字信号处理器)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如上述文本处理方法。例如,在一些实施例中,上述文本处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的文本处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述文本处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、ASSP(Application Specific StandardProduct,专用标准产品)、SOC(System On Chip,芯片上系统的系统)、CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑设备)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM(Electrically Programmable Read-Only-Memory,可擦除可编程只读存储器)或快闪存储器、光纤、CD-ROM(Compact Disc Read-Only Memory,便捷式紧凑盘只读存储器)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode-Ray Tube,阴极射线管)或者LCD(Liquid Crystal Display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:LAN(LocalArea Network,局域网)、WAN(Wide Area Network,广域网)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(VirtualPrivate Server,虚拟专用服务器)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
根据本公开实施例的技术方案,在大语言模型调用工具之前,预先规划(或预先编排)出工具调用路径,大语言模型基于预先规划的工具调用路径来调用工具,可以实现大语言模型的使用次数(或调用次数)最少为工具调用路径中的节点数量,降低大语言模型的使用次数,即,预先编排工具的调用顺序,可以减少使用大语言模型进行思考的次数,提升文本处理效率,以及降低成本;此外,工具调用路径不仅是根据查询文本和每个候选工具的工具信息确定的,还根据不同候选工具之间的关系信息(比如依赖关系、并列关系)确定,可以提升工具调用路径的逻辑连贯性和工具执行的有效性,提升工具调用顺序的正确性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (33)

1.一种文本处理方法,包括:
获取查询文本、工具集中多个候选工具的工具信息和所述多个候选工具之间的关系信息;
根据所述查询文本、所述工具信息和所述关系信息,生成工具调用路径;其中,所述工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,所述目标工具是从所述候选工具中确定的,i为正整数;
采用所述大语言模型依次调用所述工具调用路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息;
根据所述回复信息,对所述查询文本进行回复。
2.根据权利要求1所述的方法,其中,所述多个候选工具之间的关系信息,采用以下步骤确定:
采用所述大语言模型对所述多个候选工具的工具信息进行处理,得到结构化信息;
其中,所述结构化信息包括任两候选工具的标识信息以及所述任两候选工具之间的关系信息;
其中,所述关系信息包括依赖关系、并列关系。
3.根据权利要求1或2所述的方法,其中,所述工具信息包括所述候选工具的标识信息和功能描述信息;
其中,所述功能描述信息包括以下至少一项:
所述候选工具的输入要求;
所述候选工具的处理过程;
所述候选工具的输出要求;
所述候选工具的使用限制;
所述候选工具的使用注意事项。
4.根据权利要求2所述的方法,其中,所述采用所述大语言模型对所述多个候选工具的工具信息进行处理,得到结构化信息,包括:
获取提示模板;其中,所述提示模板,用于指示所述大语言模型的输出要求和待执行的任务信息;
采用所述多个候选工具的工具信息,对所述提示模板进行填充,得到第一提示信息;
采用所述大语言模型对所述第一提示信息进行处理,得到所述结构化信息。
5.根据权利要求1所述的方法,其中,所述候选工具是采用以下步骤,从所述工具集中确定的:
对所述查询文本进行意图识别,得到目标意图;
基于所述目标意图,从所述工具集中确定与所述目标意图匹配的候选工具。
6.根据权利要求5所述的方法,其中,所述对所述查询文本进行意图识别,得到目标意图,包括:
根据所述查询文本,获取至少一个文本意图对;其中,所述文本意图对中包括与所述查询文本相似的候选文本及所述候选文本所属的候选意图;
根据至少一个文本意图对,生成第二提示信息;
采用所述大语言模型基于所述第二提示信息,对所述查询文本进行意图识别,得到所述目标意图。
7.根据权利要求1所述的方法,其中,所述候选工具是采用以下步骤,从所述工具集中确定的:
识别所述查询文本所属的目标领域;
基于所述目标领域,从所述工具集中确定与所述目标领域匹配的候选工具。
8.根据权利要求1所述的方法,其中,所述根据所述查询文本、所述工具信息和所述关系信息,生成工具调用路径,包括:
采用所述大语言模型基于所述查询文本、所述工具信息和所述关系信息,从所述多个候选工具中依次确定每次需要调用的目标工具;
根据所述每次需要调用的目标工具,生成所述工具调用路径。
9.根据权利要求1所述的方法,其中,所述采用所述大语言模型依次调用所述工具调用路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息,包括:
采用所述大语言模型依次调用所述工具调用路径中的各节点所指示的目标工具对所述查询文本进行处理;
获取所述大语言模型当前调用的目标工具的输出结果;
判断所述输出结果是否满足与所述当前调用的目标工具适配的预期要求;
在所述输出结果满足所述预期要求的情况下,采用所述大语言模型基于所述当前调用的目标工具的输出结果,继续调用下一节点所指示的目标工具对所述查询文本进行处理,以得到所述回复信息;
其中,所述下一节点是所述工具调用路径中位于当前节点的下一个节点,所述当前节点是为所述当前调用的目标工具所处的节点。
10.根据权利要求9所述的方法,其中,所述判断所述输出结果是否满足与所述当前调用的目标工具适配的预期要求之后,所述方法还包括:
在所述输出结果不满足所述预期要求的情况下,基于所述关系信息,从所述候选节点中确定替换工具;其中,所述替换工具与所述当前调用的目标工具之间的关系信息为并列关系;
采用所述替换工具对所述工具调用路径中的所述当前节点进行更新;
采用所述大语言模型调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理,以得到所述回复信息。
11.根据权利要求10所述的方法,其中,所述采用所述大语言模型调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理,包括:
根据所述输出结果和所述预期要求,确定所述当前调用的目标工具的异常输出原因;
采用所述大语言模型基于所述异常输出原因,调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理。
12.根据权利要求11所述的方法,其中,所述采用所述大语言模型基于所述异常输出原因,调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理,包括:
将所述异常输出原因与所述输出结果,对应写入历史对话中;
采用所述大语言模型基于所述历史对话,调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理。
13.根据权利要求9所述的方法,其中,所述工具调用路径为多条;
所述判断所述输出结果是否满足与所述当前调用的目标工具适配的预期要求之后,所述方法还包括:
在所述输出结果不满足所述预期要求的情况下,停止调用所述工具调用路径中位于所述当前节点之后的其余节点;
从多条工具调用路径中除所述工具调用路径之外的其他路径中,确定替换路径;
采用所述大语言模型依次调用所述替换路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息。
14.根据权利要求9-13中任一项所述的方法,其中,所述预期要求包括以下至少一项:
所述输出结果与所述下一节点所指示的目标工具的输入要求适配;
所述输出结果与所述查询文本之间的相关度高于设定阈值。
15.根据权利要求1所述的方法,其中,所述获取查询文本之后,还包括:
采用所述大语言模型对所述查询文本进行预处理;
其中,所述预处理包括以下至少一项:去重处理、消歧处理、纠错处理、字体转换、字体格式转换、指定符号的去除处理、缺失语句的去除处理或填空处理。
16.一种文本处理装置,包括:
获取模块,用于获取查询文本、工具集中多个候选工具的工具信息和所述多个候选工具之间的关系信息;
生成模块,用于根据所述查询文本、所述工具信息和所述关系信息,生成工具调用路径;其中,所述工具调用路径中的第i个节点,用于指示大语言模型第i次需要调用的目标工具,所述目标工具是从所述候选工具中确定的,i为正整数;
调用模块,用于采用所述大语言模型依次调用所述工具调用路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息;
回复模块,用于根据所述回复信息,对所述查询文本进行回复。
17.根据权利要求16所述的装置,其中,所述多个候选工具之间的关系信息,采用以下模块确定:
处理模块,用于采用所述大语言模型对所述多个候选工具的工具信息进行处理,得到结构化信息;
其中,所述结构化信息包括任两候选工具的标识信息以及所述任两候选工具之间的关系信息;
其中,所述关系信息包括依赖关系、并列关系。
18.根据权利要求16或17所述的装置,其中,所述工具信息包括所述候选工具的标识信息和功能描述信息;
其中,所述功能描述信息包括以下至少一项:
所述候选工具的输入要求;
所述候选工具的处理过程;
所述候选工具的输出要求;
所述候选工具的使用限制;
所述候选工具的使用注意事项。
19.根据权利要求17所述的装置,其中,所述处理模块,用于:
获取提示模板;其中,所述提示模板,用于指示所述大语言模型的输出要求和待执行的任务信息;
采用所述多个候选工具的工具信息,对所述提示模板进行填充,得到第一提示信息;
采用所述大语言模型对所述第一提示信息进行处理,得到所述结构化信息。
20.根据权利要求16所述的装置,其中,所述候选工具是采用以下模块,从所述工具集中确定的:
第一识别模块,用于对所述查询文本进行意图识别,得到目标意图;
第一确定模块,用于基于所述目标意图,从所述工具集中确定与所述目标意图匹配的候选工具。
21.根据权利要求20所述的装置,其中,所述第一识别模块,用于:
根据所述查询文本,获取至少一个文本意图对;其中,所述文本意图对中包括与所述查询文本相似的候选文本及所述候选文本所属的候选意图;
根据至少一个文本意图对,生成第二提示信息;
采用所述大语言模型基于所述第二提示信息,对所述查询文本进行意图识别,得到所述目标意图。
22.根据权利要求16所述的装置,其中,所述候选工具是采用以下模块,从所述工具集中确定的:
第二识别模块,用于识别所述查询文本所属的目标领域;
第二确定模块,用于基于所述目标领域,从所述工具集中确定与所述目标领域匹配的候选工具。
23.根据权利要求16所述的装置,其中,所述生成模块,用于:
采用所述大语言模型基于所述查询文本、所述工具信息和所述关系信息,从所述多个候选工具中依次确定每次需要调用的目标工具;
根据所述每次需要调用的目标工具,生成所述工具调用路径。
24.根据权利要求16所述的装置,其中,所述调用模块,用于:
采用所述大语言模型依次调用所述工具调用路径中的各节点所指示的目标工具对所述查询文本进行处理;
获取所述大语言模型当前调用的目标工具的输出结果;
判断所述输出结果是否满足与所述当前调用的目标工具适配的预期要求;
在所述输出结果满足所述预期要求的情况下,采用所述大语言模型基于所述当前调用的目标工具的输出结果,继续调用下一节点所指示的目标工具对所述查询文本进行处理,以得到所述回复信息;
其中,所述下一节点是所述工具调用路径中位于当前节点的下一个节点,所述当前节点是为所述当前调用的目标工具所处的节点。
25.根据权利要求24所述的装置,其中,所述调用模块,还用于:
在所述输出结果不满足所述预期要求的情况下,基于所述关系信息,从所述候选节点中确定替换工具;其中,所述替换工具与所述当前调用的目标工具之间的关系信息为并列关系;
采用所述替换工具对所述工具调用路径中的所述当前节点进行更新;
采用所述大语言模型调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理,以得到所述回复信息。
26.根据权利要求25所述的装置,其中,所述调用模块,用于:
根据所述输出结果和所述预期要求,确定所述当前调用的目标工具的异常输出原因;
采用所述大语言模型基于所述异常输出原因,调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理。
27.根据权利要求26所述的装置,其中,所述调用模块,用于:
将所述异常输出原因与所述输出结果,对应写入历史对话中;
采用所述大语言模型基于所述历史对话,调用更新后的所述当前节点所指示的替换工具对所述查询文本进行处理。
28.根据权利要求24所述的装置,其中,所述工具调用路径为多条;
所述调用模块,还用于:
在所述输出结果不满足所述预期要求的情况下,停止调用所述工具调用路径中位于所述当前节点之后的其余节点;
从多条工具调用路径中除所述工具调用路径之外的其他路径中,确定替换路径;
采用所述大语言模型依次调用所述替换路径中的节点所指示的目标工具,以对所述查询文本进行处理,得到回复信息。
29.根据权利要求24-28中任一项所述的装置,其中,所述预期要求包括以下至少一项:
所述输出结果与所述下一节点所指示的目标工具的输入要求适配;
所述输出结果与所述查询文本之间的相关度高于设定阈值。
30.根据权利要求16所述的装置,其中,所述装置还包括:
预处理模块,用于采用所述大语言模型对所述查询文本进行预处理;
其中,所述预处理包括以下至少一项:去重处理、消歧处理、纠错处理、字体转换、字体格式转换、指定符号的去除处理、缺失语句的去除处理或填空处理。
31.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-15中任一项所述的文本处理方法。
32.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-15中任一项所述的文本处理方法。
33.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-15中任一项所述文本处理方法的步骤。
CN202410324534.3A 2024-03-20 2024-03-20 文本处理方法、装置、电子设备和存储介质 Pending CN118227868A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410324534.3A CN118227868A (zh) 2024-03-20 2024-03-20 文本处理方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410324534.3A CN118227868A (zh) 2024-03-20 2024-03-20 文本处理方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN118227868A true CN118227868A (zh) 2024-06-21

Family

ID=91503520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410324534.3A Pending CN118227868A (zh) 2024-03-20 2024-03-20 文本处理方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN118227868A (zh)

Similar Documents

Publication Publication Date Title
US20210342549A1 (en) Method for training semantic analysis model, electronic device and storage medium
CN107908803B (zh) 问答交互的响应方法及装置、存储介质、终端
US11223723B2 (en) Call center system having reduced communication latency
US12026471B2 (en) Automated generation of chatbot
US11238132B2 (en) Method and system for using existing models in connection with new model development
US20230089268A1 (en) Semantic understanding method, electronic device, and storage medium
EP4113357A1 (en) Method and apparatus for recognizing entity, electronic device and storage medium
CN110705255B (zh) 检测语句之间的关联关系的方法和装置
CN110019729B (zh) 智能问答方法及存储介质、终端
CN116737908A (zh) 知识问答方法、装置、设备和存储介质
CN114840671A (zh) 对话生成方法、模型的训练方法、装置、设备及介质
CN111737432A (zh) 一种基于联合训练模型的自动对话方法和系统
EP3685245A1 (en) Method, apparatus, and computer-readable media for customer interaction semantic annotation and analytics
CN116521841B (zh) 用于生成回复信息的方法、装置、设备及介质
JP2022173453A (ja) ディープラーニングモデルのトレーニング方法、自然言語処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム
CN117077791A (zh) 一种基于图数据结构的模型推理方法、装置、设备及介质
CN115688920A (zh) 知识抽取方法、模型的训练方法、装置、设备和介质
CN115803734A (zh) 使用动作解释的自然语言丰富
CN112115244A (zh) 对话交互方法、装置、存储介质及电子设备
CN117688946A (zh) 基于大模型的意图识别方法、装置、电子设备和存储介质
CN112925895A (zh) 自然语言软件运维方法及装置
US20230070966A1 (en) Method for processing question, electronic device and storage medium
CN115186738B (zh) 模型训练方法、装置和存储介质
CN116842143A (zh) 基于人工智能的对话模拟方法、装置、电子设备及介质
CN118227868A (zh) 文本处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination