专栏名称: 计算机视觉深度学习和自动驾驶
讨论计算机视觉、深度学习和自动驾驶的技术发展和挑战
目录
相关文章推荐
51好读  ›  专栏  ›  计算机视觉深度学习和自动驾驶

KnowAgent: Knowledge-Augmented Planning for LLM-Based Agents

计算机视觉深度学习和自动驾驶  · 公众号  ·  · 2024-04-27 01:28

正文

原文链接: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)合并:然后我们合并不同迭代生成的模型的轨迹。对于解决相同任务的轨迹,我们基于效率对它们进行优化,具体保留更高效(更短路径)的轨迹,以确保最佳的解决问题的效果。







请到「今天看啥」查看全文