暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

KnowAgent: Knowledge-Augmented Planning for LLM-Based Agents

814

原文链接:https://arxiv.org/pdf/2403.03101.pdf

摘要:

大语言模型(LLMs)在复杂推理任务中展现出巨大的潜力,但在处理更为复杂的挑战时,尤其是通过生成可执行动作与环境交互时,它们的表现不尽如人意。这种不足主要源于语言代理中缺乏内置的动作知识,这使得在任务解决过程中无法有效指导规划轨迹,导致规划幻觉。为了解决这一问题,我们引入了KnowAgent,这是一种新颖的方法,旨在通过整合明确的动作知识来增强LLMs的规划能力。具体来说,KnowAgent采用了一个动作知识库和一个知识型自学习策略来在规划过程中限制动作路径,使得轨迹合成更为合理,从而提高语言代理的规划性能。在HotpotQA和ALFWorld上的实验结果表明,基于各种骨干模型,KnowAgent能够达到与现有基线相当的或更优越的性能。进一步的分析表明,KnowAgent在减少规划幻觉方面是有效的。

1 引言:

随着人工智能(AI)的发展,语言代理在解决复杂问题方面变得越来越重要。这些代理围绕大型语言模型构建,通过包括任务分解、反思、协作分工和使用外部工具等多种策略来增强其任务规划能力。尽管当前的提示技术为一些闭源语言模型提供了良好的规划能力,但这些方法往往受到模型内在理解能力和其训练知识范围的限制。为了满足在不同领域如问答(Yao等人,2023c; Yin等人,2023)、网络浏览(Yao等人,2022; Deng等人,2023; Zhou等人,2023a)、机器人技术(Ichter等人,2022; Ding等人,2023)等广泛应用和定制的需求,研究人员正在探索通过Agent Tuning来增强模型能力。这涉及通过合成特定任务的轨迹来微调模型,使它们能够执行一系列有效的动作来完成任务,从而提高处理复杂情境的能力。

然而,在执行规划任务时,尤其是在开源模型中,存在一些问题。模型经常生成违反既定知识规则或常识的计划,我们将其称为规划幻觉。这个术语描述了模型可能生成不必要或冲突的动作序列的情况,例如“尝试查找信息而不执行搜索操作”或“试图从桌子上拿起一个苹果而不验证桌子和苹果的存在”。为了解决这些问题,我们提出了KnowAgent,专注于利用外部动作知识来增强合成轨迹,目标是解决规划幻觉问题(见图1)。我们的发展建立在几个关键步骤上:首先,我们创建了一个广泛的动作知识库,它整合了与特定任务相关的动作规划知识。这个数据库作为一个外部信息库,引导模型的动作生成过程。随后,通过将动作知识转换为文本,我们使模型能够深入理解和利用这些知识来创建动作轨迹。最后,通过一个知识型自学习阶段,我们使用模型迭代过程中开发的轨迹不断改进其对动作知识的理解和应用。这个过程不仅加强了代理的规划能力,还增强了它们在复杂情境中应用的潜力。在HotpotQA(Yang等人,2018)和ALFWorld(Shridhar等人,2021)上的实验结果表明,基于各种骨干模型,KnowAgent可以实现与现有基线相当或更优越的性能。进一步的分析表明,KnowAgent在减少规划幻觉方面是有效的。我们总结我们的贡献如下:

  • 我们引入了KnowAgent,它采用知识型自学习将外部动作知识纳入模型。这一进步为整合外部知识以改进和增强语言代理的内在规划能力提供了一种创新方法。
  • 我们进行了全面的实验,证明了KnowAgent在HotpotQA和ALFWorld数据集上可以匹配或超越其他基准模型。
  • 进一步的分析验证了整合动作知识用于规划目的的有效性。我们还展示了使用从LLMs手动精炼的动作知识的可能性,从而减少人力劳动并提高性能。

2 背景

语言代理主要通过生成内部思维和可执行动作来观察外部世界。在本文中,我们遵循并进一步增强了Yao等人(2023b)提出的规划轨迹格式,以训练和评估我们的KnowAgent。传统上,一个规划轨迹τ可以由Thought-Action-Observation三元组表示,其中T表示语言代理的内部思维,表示可执行动作,代表来自环境的反馈信息。在这个意义上,时间的轨迹历史H可以定义如下:然后,语言代理被强化以基于历史生成Tt和At。给定一个参数化的概率语言代理π,其参数为θ,基于Ht生成下一步思维的过程可以表示为:其中Ti t和|Tt|分别是Tt的第i个标记和Tt的长度。随后,动作At将基于Tt和Ht确定:同样,和|At|分别表示的第个标记和的长度。最后,动作At的反馈结果将被视为观察Ot,并添加到轨迹中,生成新的轨迹。值得注意的是,这里的特指轨迹中的动作,这与后续讨论的动作集中的行动是相同的。

3 KnowAgent

在本节中,我们详细介绍了KnowAgent(见图2),重点关注三个核心方面。首先,我们在§3.1中定义了动作知识。接下来,我们描述了如何利用动作知识生成规划路径(§3.2)。最后,我们详细介绍了通过知识型自学习机制对路径进行细化的过程(§3.3)。

3.1 动作知识的定义

动作表示一组动作,包括LLMs必须执行的离散动作,以完成特定任务。

动作规则概述了模型内动作转换的逻辑和顺序的规则。这些规则直接规定了允许的动作转换,基于动作之间的内在关系或特定任务的要求。

动作知识。动作知识,表示为$(Ea, R)4,包括一组定义好的动作Ea和规则R,这些规则管理它们的转换。不同任务的动作知识的组合形成一个动作知识库,也称为动作KB。然后,知识库将作为生成动作和制定决策的重要指导,对于减少潜在的规划幻觉问题至关重要。

提取动作知识的策略。鉴于涉及各种任务的动作知识多样,完全手动构建既耗时又劳动密集。为了应对这一挑战,考虑到LLMs在这类任务上的强性能(Liu等人,2023a; Ouyang和Li,2023),我们使用GPT-4(OpenAI,2023)进行初步构建,然后进行手动完善。在§4.3中,我们提供了这两种方法有效性的详细比较。

3.2 利用动作知识生成规划路径

3.2.1 动作知识到文本

图3展示了从动作知识到文本的转换过程。最初,我们通过确定与任务特定需求相关的动作来建立动作知识库,利用以往的数据集分析和LLMs的内在知识。然后将这些信息转换为文本格式以便于后续操作。作为例证,我们引用了HotpotQA(Yang等人,2018)中的一个动作规则 - 搜索:(搜索,检索,查找,完成)。这个规则意味着从搜索开始,有几条路径是可行的:一个动作可以继续作为搜索,演变为检索或查找,或向完成前进。

3.2.2 路径生成

利用动作知识,模型利用这一洞察力来简化任务的规划过程。它通过制定一个连贯的规划路径来实现这一点,该路径由动作知识的应用指导。

3.3 通过知识型自学习细化规划路径

在这个阶段,我们引入了知识型自学习。我们的目标是通过迭代微调帮助模型更深入地理解动作知识。如图1所示,我们的方法从一个初始训练集和一个未训练的模型M0开始,导致合成初始轨迹τττ。经过过滤后,这些初步结果通知进一步的训练,产生一个初步模型版本M1。随后,M1在D0上进行重新评估,创建新的轨迹τττ。这些轨迹与T0一起,根据动作知识进行过滤和合并。这个精炼后的轨迹集合然后被用来微调模型,产生一个改进的版本M2。我们继续迭代,直到Mtest上的性能提升变得微小,此时我们停止迭代过程。

基于知识的轨迹过滤和合并。我们的知识型自学习方法通过两个关键阶段提高轨迹质量:(1)过滤:我们首先根据结果选择正确的轨迹Tcorrect。特别是对于HotpotQA任务,我们应用动作知识进一步细化这些轨迹。这种细化涉及移除任何不符合提供的AKm的轨迹,特别是那些包含无效动作或动作序列混乱的轨迹。(2)合并:然后我们合并不同迭代生成的模型的轨迹。对于解决相同任务的轨迹,我们基于效率对它们进行优化,具体保留更高效(更短路径)的轨迹,以确保最佳的解决问题的效果。

4 实验

4.1 设置

我们在HotpotQA(Yang等人,2018)和ALFWorld(Shridhar等人,2021)上评估KnowAgent。算法1:轨迹合成和知识型自学习。输入:AKm:来自动作KB的任务特定动作知识,包括一组动作Ea和动作规则R;D0:初始训练集;Dtest:测试集。输出:优化模型M = {M1, M2, ...}。初始化:模型M0。对于i = 0直到测试性能稳定,执行以下操作:

我们使用Llama-2-{7,13,70}b-chat(Touvron等人,2023)作为骨干模型,并将KnowAgent应用于Vicuna(Zheng等人,2023)和Mistral(Jiang等人,2023)。我们将KnowAgent与包括CoT(Wei等人,2022)、ReAct(Yao等人,2023b)、Reflexion(Shinn等人,2023)和FiReAct(Chen等人,2023a)在内的各种基线进行比较。有关数据集、评估指标、基线和训练超参数的更多详细信息可以在附录A中找到。

4.2 主要结果

KnowAgent与基于提示的方法。在表1中,我们展示了KnowAgent和各种基于提示的方法在HotpotQA和ALFWorld上评估的F1分数和成功率。在两个数据集上,KnowAgent在7b、13b和70b模型上始终优于基于提示的基线。值得注意的是,13b模型在两个数据集上相对于ReAct的性能提升分别为↑15.09%和↑37.81%。此外,观察到不同提示方法之间的有效性差异,这与当前研究努力通过多样化的策略(如多代理专业化)增强模型处理复杂任务的能力相一致。具体来说,我们的调查重点关注利用外部动作知识库来促进模型更准确地完成复杂任务。这是通过最小化无效动作(在HotpotQA上)和促进更好地反映现实情况的动作序列(在ALFWorld上)来实现的,从而提高了模型效率。有关HotpotQA中无效动作的进一步分析将在§4.3中讨论。

KnowAgent与微调方法的比较。我们在这里的比较重点是KnowAgent与FiReAct的微调结果。一个显著的区别是,FiReAct的微调数据是由GPT-4合成的,而KnowAgent使用的是自合成的数据。例如,在HotpotQA上,FiReAct使用由GPT-4生成的500个正确轨迹,而KnowAgent也使用500个训练轨迹量,但只选择其中正确数量的轨迹,大约在13b中为100到200个。策略在ALFWorld中也有镜像。结果表明,注入了先验知识的模型合成数据可以实现与更高级模型(如GPT-4)产生的结果相当的成果。此外,研究还表明,迭代微调使模型能够全面掌握动作知识,从而提高规划性能。

4.3 分析

动作知识的作用随着自学习中迭代次数的增加而增长。图4显示了在HotpotQA上使用Llama系列模型的动作知识消融结果。无论迭代次数如何,使用动作知识(w/ action KB)的效果优于不使用动作知识(w/o action KB),表明引入动作知识可以有效提高代理规划的质量。另一个有趣的发现是,随着迭代次数的增加,w/o action KB和w/ action KB之间的性能差距变得更加显著,表明引入动作知识的优势变得更加明显。我们认为这可以归因于动作知识与自学习之间的良性循环。在动作知识的限制下,模型为迭代训练合成高质量的轨迹。反过来,对更高质量的轨迹进行训练使模型更好地学习动作知识,从而生成更高质量的轨迹。

迭代训练提高了模型的熟练度。图5展示了迭代训练对不同基础模型影响的比较分析。(1)迭代次数。值得注意的是,将迭代次数从1提高到2导致了显著的性能优化。迭代次数的增加导致了显著的性能提升。例如,将迭代次数从1增加到2,会导致F1分数的显著提高。图5展示了在不同基础模型上进行知识型自学习迭代的影响分析。这里,Iter0代表在任何训练之前的基线性能。进一步增加迭代次数到4,会导致更加明显的性能提升。与之前的研究一致(Li等人,2023b;Wu等人,2023),这些发现证实了迭代自学习在增强模型对训练数据的理解方面的有效性,与人类学习原则“通过复习旧知识来实现新知识的掌握”相似。(2)不同的基础模型。我们还探索了除了具有7B参数规模的Llama之外的其他基础模型,如Vicuna-7B和Mistral7B。结果表明,我们的方法在不同的预训练和微调模型中是有效且具有普遍性的。然而,它们之间的性能差异也表明了不同模型吸收和利用这种结构化外部知识的能力存在差异。

动作知识有效地减轻了规划幻觉。我们在表2中展示了不同方法生成的无效和乱序动作的统计比率。这里,无效指的是不符合动作规则的动作,而乱序指的是动作逻辑序列中的不一致性。鉴于FiReAct只涉及搜索和完成动作,因此在此处分析中省略。表2的结果表明,引入动作知识显著降低了错误动作的频率和无效动作路径的可能性,从而提高了模型在特定任务上的精确度。为了进一步证实这一主张,我们参考了KnowAgent和ReAct在HotpotQA中的实验结果,如附录6所示。对于给定的问题,ReAct的动作序列遵循Lookup-Search-Search的模式,由于Lookup动作依赖于后续的Search步骤,这是有问题的。然而,通过约束,KnowAgent避免了这种错误的序列,提高了任务的准确性。

提炼知识与手工设计知识。为了调查使用先进的LLMs是否可以取代手工构建特定任务的动作知识,我们比较了从gpt-4-0613提炼的结果与手工设计的知识。对于HotpotQA,我们观察到GPT-4提炼的动作知识更加简洁,与人类设置的相比,循环动作更少。这种效率对于简单任务是成立的,在这些任务中,性能与人类定义的任务相当,而在需要更长动作序列的复杂任务中则表现不佳。对于ALFWorld,GPT提炼的动作知识与人类创造的知识非常相似,强调了模型理解现实世界限制的能力。与之前的研究一致(Ding等人,2023;Zhou等人,2024),这种提炼的知识帮助模型理解现实世界的限制,与人类创造的知识相比,有效性几乎没有差异。

错误分析。在分析KnowAgent的能力后,我们确定了它的局限性,特别是在处理复杂查询和总结大量文本数据方面。KnowAgent在有效提炼关键信息方面存在困难,常常无法提供准确的回应。核心问题在于它们处理长文本上下文的推理和记忆能力不足。因此,生成的回应可能是不正确的,甚至与提出的问题不一致,例如在需要特定实体时只提供简单的是/否答案。未来的增强应该集中在加强我们的工作的长文本处理、信息保留和推理能力。

5 相关工作

基于LLM的代理。基于LLM的代理(Wang等人,2023b;Xi等人,2023;Durante等人,2024)在LLMs(Zhao等人,2023;Qiao等人,2023b;Zhu等人,2023;Li等人,2024a;Jiang等人,2024)崛起后,已成为最常见的AI系统之一。它们通过自然语言表达的动作-观察对与外部世界进行交互。以前的工作主要集中在通过利用人工创造(Yao等人,2023b;Li等人,2023a;Talebirad和Nadiri,2023;Qian等人,2023)或机器生成(Zhou等人,2023b;Chen等人,2023c,b)的提示来解锁LLMs作为语言代理的潜力。最近,越来越多的重视通过微调赋予开源LLMs代理能力(Yin等人,2023;Qiao等人,2024;Shen等人,2024)。然而,现有语言代理微调方法的训练轨迹数据主要依赖于LLMs的注释。这可能导致包含违反一些动作知识规则的轨迹,并且难以识别,从而导致训练语言代理的动作性能不稳定。最近,Guan等人(2024)引入了AMOR,一个基于有限状态机(FSM)构建其推理能力的代理框架。Li等人(2024b)引入了一个“Formal-LLM”框架,将自然语言的表达能力与形式语言的精确性结合起来,以增强代理能力。与这些方法不同,我们提出了知识增强的语言代理,它们结合了与动作相关的知识规则来限制轨迹生成,减少了生成轨迹中不合理动作逻辑的发生。

知识增强的LLMs。以前的工作(Guu等人,2020;Lewis等人,2020;Izacard等人,2023)集中在通过检索增强LLMs的知识。由于LLMs内部丰富的参数化知识(Chen,2023;Feng等人,2023),一些其他工作(Liu等人,2022;Yu等人,2023;Sun等人,2023b)主张知识生成而不是检索。随着增强语言模型(ALMs)的出现,许多研究(Trivedi等人,2023;Li等人,2023c;Vu等人,2023;Qiao等人,2023a)通过结合搜索引擎、知识库和维基百科文档等外部工具的知识,增强了LLMs的推理能力。最近的研究(Zhou等人,2023b;Ye等人,2023)引入了结构化知识来规范基于LLM的多代理的工作流程,但没有这些工作专注于限制个体代理的动作空间。据我们所知,我们是第一个引入结构化动作知识来增强基于LLM的代理的规划能力,特别是旨在减少规划过程中由无效动作引起的规划错误实例。

6 结论

在本研究中,我们介绍了KnowAgent,一个旨在通过将外部动作知识整合到合成轨迹中来减轻规划幻觉的框架。我们的方法涉及利用动作知识来指导模型的动作生成,将这些知识转化为文本以供模型更深入理解,并采用知识型自学习阶段进行持续改进。这种多方面的方法不仅增强了代理的规划能力,而且在复杂场景中也被证明是有效的。我们在各种模型上的实验表明,KnowAgent有效地与或超越了其他基线,展示了整合外部动作知识以简化规划过程和提高性能的好处。

局限性

我们的局限性如下:

任务扩展性。目前实验仅在常识问答和家庭数据集上进行。然而,我们的方法也适用于更广泛的领域,包括医疗(Tang等人,2023)、算术(Cobbe等人,2021)、网络浏览(Xie等人,2023)和具身代理(Yang等人,2023)。这表明还有待探索的更广泛应用潜力。

多代理系统。目前,我们的研究集中在单一代理的应用上。未来的研究应该探索多代理系统,如Chen等人(2023c)和Qiao等人(2024),它们通过分工和协作完成规划任务。这种增强可以帮助代理更好地处理复杂任务并适应不断变化的环境。

动作知识库的自动设计。动作知识库的创建仍然是手动的、耗时的和劳动密集的。即使我们使用GPT-4来提炼动作知识,也需要手动调整。未来的工作应该旨在自动化这个过程,以减少手动努力并提高模型的自主学习和多功能性。


文章转载自向量检索实验室,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论