网络智能体旨在让一切基于网络功能的任务自动发生。比如你告诉智能体你的预算,它可以帮你预订酒店。既拥有海量常识,又能做长期规划的大语言模型(LLM),自然成为了智能体常用的基础模块。
于是上下文学习示例、任务技巧、多智能体协同、强化学习算法...... 一切适用于通用智能体的想法都抢着在大模型落地。
然而有一个问题始终横亘在 LLM 和智能体之间:基于 LLM 的网络智能体的行动 / 观测空间与 LLM 训练数据的空间相去甚远。
智能体在充斥着具身行为的行动空间(如鼠标悬停、键盘组合键)和遍布前端功能强化、格式渲染的观测空间下运作,大语言模型的理解和推理能力能充分发挥作用吗?尤其是大语言模型的主要训练任务是文本补全、问答和对齐人类偏好,这一点值得思考。
来自伊利诺伊大学香槟分校和亚马逊的研究人员选择和这些问题进一步对话。他们去除了上下文示例、技巧、多智能体系统,仅仅通过行动 / 观测空间与 LLM 的训练任务对齐。他们训练的 AgentOccam 成为了零样本基于 LLM 的网络智能体新 Sota。
帮你找导师
这正呼应了奥卡姆剃刀原则:「若无必要,勿增实体」。然而换个思考的角度,AgentOccam 的研究团队也想发问:构建通用智能体时,在铺设复杂的系统框架前,是否已经优化了行动 / 观测空间,让这些功能模块达到了最优状态?
-
论文名:AgentOccam: A Simple Yet Strong Baseline for LLM-Based Web Agents
背景及动机
某天你刷着短视频,看中了主播手中拿着的商品。于是,你兴致勃勃地对智能助手说:「我是学生,让这个老板送我一张优惠券!」
随后,智能体申请了你的私人账号权限、后台私信商家、绘声绘色地写下「我是学生」,发送消息,一套动作无需人为干预,行云流水...... 一切这样的任务,再也不必动手,都有智能体代劳。
大语言模型是构建智能体的热门选择。过去,基于 LLM 的网络智能体通常专注于让智能体学会某种应用,比如构建上下文学习样本、积累任务经验与技巧、以及多智能体角色扮演等等。然而,在实际交互中,智能体的行动 / 观测空间与 LLM 的技能点不太匹配,这之间的差距却少有人研究。
于是,针对如何对齐基于 LLM 的网络智能体的观测和行动空间与其训练期间学到的功能,来自伊利诺伊大学香槟分校和亚马逊的研究人员们展开了研究。
网络智能体需要准确地从格式各异、编码脚本不一的网页中提取信息,并在网页上定义的动作(例如,鼠标滑轮滚动、点击或悬停在按钮上)中进行选择。这些网络观测和行动空间在 LLM 的预训练和后续训练数据中都较为罕见,这阻碍了 LLM 充分调动潜能,完成任务。
因此,基于不让智能体策略变得更复杂,而是让智能体与 LLM 更加匹配的想法,由此构建的智能体得名 AgentOccam。
形式化与方法
该团队通过部分可观测的马尔可夫决策过程(POMDP),将网络交互过程形式化为:<O,S,A,P,R,p_0,γ>。
在 POMDP 中,观测 o∈O 是智能体从网络环境接收到的信息,例如 HTML,以及任何指令和提示。行动 a∈A 是网络环境认可的动作指令。
为解决 POMDP,常见目标是寻找策略,最大化预期累积奖励,其中 h_t 表示观测历史。
在基于 LLM 的网络智能体设计中,这等价于借助一个或多个基础 LLM 策略
和一组算法模块来设计策略。
在这项工作中,该团队专注于一类特殊的策略,可以表示为:,其中 f 和 g 是处理观测和行动空间的基于规则的函数,该团队将其称为**「观测和行动空间对齐问题」**。
在这样的问题设置下,接下来的所有更改仅应用于观测和行动。值得注意的是,并非所有以往方法中的智能体策略都能以这种方式表示。
例如上表中,基于搜索的算法需要一个顶层控制程序来选择行动并触发回溯;带有评估器、反思或记忆模块的方法也需要一个管理中心来在主 LLM 和这些辅助模块或其他角色扮演 LLM 之间切换。
不同于以往复杂化智能体策略,我们能否仅通过优化观测和行动映射 f 和 g,使用基础 LLM 策略 构建一个强大的网络智能体?这是 AgentOccam 关注的问题。
如上图所示,AgentOccam 包括三个组成部分:
-
首先,减少非必要的网络交互动作,让智能体的具身和琐碎互动需求达到最小;
-
其次,消除冗余和不相关的网页元素,并重构网页内容块,以获取更简洁但同样信息丰富的表示,从而精炼观察空间;
-
最后,引入两个规划动作(分支和修剪),这使得智能体能够以规划树结构自组织导航工作流,并使用相同结构过滤历史步以进行回放。
整个框架通过一套适用于所有标记语言的通用规则来格式化网页,无需依赖测试基准中的任务相关信息。
网络智能体的行动空间规定了可以用来与网络环境交互的有效命令。
研究团队从智能体常见的失败中得出总结:想要成功完成任务,需要编辑行动空间来解决两个关键问题:第一,去除 LLM 难以理解且经常误用的无关行动;第二,当执行任务需要规划、尝试多个潜在路径时,要提高智能体的记忆和规划能力。
为此,该团队提出了对应的解决方法。第一个问题可以通过简单地移除或合并操作来解决(如上图中的步骤 1 和 2)。对于第二个问题,过去的研究通常依赖人工制定规则或任务技巧,但这些方法难以泛化。在本研究中,LLM 将自主生成计划和管理任务流程(如步骤 3 所示)。
AgentOccam 的观测空间(提示词)包含了任务概述的通用指令、期望的输出和可用操作说明,以及关于当前任务目标、智能体过去的交互记录和最新的观察信息。
过往互动和当前观测的部分占据了最多的字符数。这主要归因于两个因素:单页面的长度和历史跨度的范围,这是 AgentOccam 观测空间的主要优化对象。
网页标记语言主要用于前端加载和渲染,往往包含大量格式化字符,显得冗余且重复(如上图步骤 1 所示)。因此,此时的目标是优化这些表示方式,使得单页内容对 LLMs 更加简洁易读。
将观测历史作为输入,对于执行长程任务至关重要。因为一些关键信息可能不会显示在当前页面上。然而,观测历史也会显著增加上下文长度,并增加推理难度以及推断成本。
为了解决这个问题,设置仅选择先前网页上最重要和相关的信息,这一选择依据两个规则,分别基于关键节点和规划树,见于步骤 2 和 3。
结果
研究团队在 WebArena 上评估了 AgentOccam 性能。WebArena 含有 812 项任务,横跨网购、社交网站、软件开发、在线商贸管理、地图等。
测试对象为 AgentOccam 框架下的 GPT-4-Turbo。对比的基线包括:一、WebArena 随配智能体,二、SteP,前 WebArena 上最优智能体,涵盖 14 条人类专为 WebArena 任务编写的技巧,三、多智能体协同方法 WebPilot;四、总结智能体交互经验的工作 AWM。
从上表不难看出,AgentOccam 性能优于以往及同期工作。其中,AgentOccam 分别以 9.8(+29.4%)和 5.9(+15.8%)的绝对分数领先往期和同期工作,并且通过其观测与行动空间的对齐,使得相似的基本网络智能体的成功率提高了 26.6 点(+161%)。
消融实验
逐模块对比行动与观测空间的对齐对最终结果的贡献。从下表可以看出,行动空间对齐能使智能体完成更多 click、type 等引导环境变化的动作,观测空间对齐则减少大模型调用的字符数与智能体完成任务所需的步数。
LLM-as-a-Judge
研究团队发现,智能体的决策行为波动性很强。简而言之,面对一个目标,智能体有一定概率做出正确的行为决断,但由于 token 预测的随机性,它可能做出一些高成本、低回报的决定。这也导致它在后续步骤中难以纠正之前的错误而失败。
例如,要求智能体在某个最相关的话题下发布帖子,单次 LLM 调用的 AgentOccam 往往轻率地选择话题,未考虑「最相关」的要求。
为了解决此类问题,他们引导 AgentOccam 生成单步内所有可能的行动,这系列行动将交付另一个 Judge 智能体(同样调用 GPT-4-turbo)决断,做出最大化回报的选择。
与复合策略结合使用
复合策略中,与任务相关的经验可以提升智能体性能。同时,不因为加入了更多背景知识扰乱决策,不会影响泛化性,能够纠正错误行为模式。
由于行为 / 观测空间对齐和复合策略方法正交,因此能结合利用。该团队试验将 AgentOccam 与 1)SteP 和 2)上述的 LLM-as-a-Judge 方法联合使用。
对于和前 SOTA 方法 SteP 联合,由于它引入人类编写的 WebArena 任务攻略,在经验密集型任务,如购物网页任务中,人类撰写的引导性经验大幅提升任务成功率。
而在常识泛化密集型任务,如社交网页发帖任务中,不相关知识出现会错误扰乱智能体决策。对于 LLM-as-a-Judge 方法,Judge 角色的引入不影响智能体的泛化性,同时纠正了智能体仓促决策的错误行为模式,在 WebArena 上进一步提升 2.6 的绝对分数。