摘要
预训练的大语言模型(LLMs)近年来在自主网页自动化方面实现了更好的泛化能力和样本效率。然而,在真实世界的网站上,其性能仍然受到以下问题的影响:(1) 开放领域的复杂性,(2) 有限的上下文长度,(3) 在 HTML 结构上的归纳偏差不足。
我们提出 WebAgent,一个由 LLM 驱动的智能代理,能够通过自我学习的方式,在真实网站上按照自然语言指令完成任务。WebAgent 通过将指令提前规划,将其分解为子指令,并将长 HTML 文档提炼为与任务相关的摘要内容,最终通过生成的 Python 代码在网站上执行操作。
我们在 WebAgent 的设计中,结合了 Flan-U-PaLM 进行稳健的代码生成,同时使用 HTML-T5(一种针对长 HTML 文档预训练的新型 LLM)进行规划和摘要。HTML-T5 采用了局部与全局注意力机制,以及结合长跨度去噪目标的混合训练方法。
实验结果表明,我们的模块化方法在真实网站上的任务成功率提升了50%以上。此外,HTML-T5 在各种 HTML 理解任务中表现最佳,在 MiniWoB 网页自动化基准测试上,成功率比先前方法高出 18.7%,并在 Mind2Web(一个离线任务规划评估基准)上达到了**最先进(SoTA)**的性能。
1 引言
大语言模型(LLM)(Brown 等, 2020; Chowdhery 等, 2022; OpenAI, 2023)在多种自然语言任务中展现了卓越的能力,例如算术推理、常识推理、逻辑推理、问答、文本生成(Brown 等, 2020; Kojima 等, 2022; Wei 等, 2022),甚至交互式决策任务(Ahn 等, 2022; Yao 等, 2022b)。近年来,LLM 还成功应用于自主网页导航,通过多步推理和决策,使代理能够控制计算机或浏览器,根据自然语言指令执行操作(Furuta 等, 2023; Gur 等, 2022; Kim 等, 2023)。
然而,真实世界网站的网页自动化仍然面临以下挑战:
- 缺乏预定义的操作空间
- 真实网站的 HTML 文档远长于模拟环境的观测数据
- 缺乏专门用于理解 HTML 文档的领域知识(如图 1 所示)
考虑到真实网站的开放性和指令的复杂性,预先定义合适的操作空间 是一项具有挑战性的任务。此外,尽管已有研究表明,通过指令微调或从人类反馈中进行强化学习可以提高 HTML 理解和网页自动化的准确性(Furuta 等, 2023; Kim 等, 2023),但现有架构通常难以处理真实网站的 HTML 文档。
如图 2 所示,真实网站的 HTML 令牌长度远超模拟器,且大多数 LLM 的上下文长度比真实网站的平均 HTML 令牌数要短。直接将如此长的 HTML 文档作为输入成本极高,而使用诸如文本-XPath 对齐(Li 等, 2021b)或文本-HTML 令牌分离(Wang 等, 2022a)等现有技术,也存在一定局限性。为了实现更广泛的任务泛化和模型规模扩展,现有 LLM 往往忽略了针对 HTML 文档的领域知识。
WebAgent 介绍
在本研究中,我们提出了 WebAgent,这是一个由 LLM 驱动的自主智能代理,能够通过自我学习经验,在真实网站上按照用户指令完成任务。
WebAgent 通过在程序空间中结合标准网页操作,完成任务(如图 3 所示),其关键功能包括:
- 任务规划:将自然语言指令分解为子指令。
- HTML 摘要:根据规划结果,将长 HTML 文档提取为与任务相关的片段。
- 网页操作:将子指令和 HTML 摘要转化为可执行的 Python 代码,在真实网站上执行操作。
WebAgent 采用两种 LLM 进行模块化集成:
- HTML-T5:一个新推出的领域专家语言模型,专为任务规划和HTML 摘要而设计。
- Flan-U-PaLM(Chowdhery 等, 2022; Chung 等, 2022):用于稳健的代码生成。
HTML-T5 采用编码-解码架构,并通过局部和全局注意力机制(Guo 等, 2022)来更好地捕获长 HTML 文档的结构。与模拟环境(平均约 0.5K 令牌)相比,真实网站的 HTML 令牌数量显著更高(7K 至 14K),占用了 LLM 大部分的上下文长度。因此,我们在预处理阶段移除了无关的 HTML 标签(例如 <script>
、<meta>
),仅保留必要的属性(例如 id
、type
、value
)。
HTML-T5 采用长跨度去噪目标(Tay 等, 2022)在来自 CommonCrawl 的大规模 HTML 语料库上进行预训练,以更好地捕捉 HTML 的语法和语义信息。
为了将语言模型代理更好地适配真实网站,我们引入了自我经验监督,即使用脚本化的规划/摘要以及自主生成的程序数据对领域专家语言模型进行微调。
与现有 LLM 代理的比较
现有 LLM 驱动的代理通常采用单一 LLM,并根据不同角色提供不同的提示(Kim 等, 2023; Sun 等, 2023; Zheng 等, 2023)。然而,这种方法不足以处理比模拟环境更复杂的真实世界任务。
我们的方法通过自引导的专用语言模型改进了 HTML 理解和操作的泛化能力,并显著优于单一 LLM 代理。在真实网页自动化任务中,WebAgent 将成功率提高了 50%。错误分析表明,将任务规划与HTML 摘要相结合的专用语言模型对于任务成功至关重要。
此外,HTML-T5 不仅是 WebAgent 的核心模块,还在独立的网页任务中表现优异。在 MiniWoB++(Liu 等, 2018; Shi 等, 2017)基准测试上,HTML-T5 的成功率比先前的 LLM 代理高 18.7%,并超越了竞争基线,如本地-全局注意力模型(Guo 等, 2022)及其指令微调版本(Chung 等, 2022)。
在 Mind2Web(Deng 等, 2023)这一离线任务规划数据集上,HTML-T5 在 Synapse(Zheng 等, 2023)与 GPT-3.5,以及 MindAct(采用 FLan-T5-XL 和 GPT-4)等方法中取得了**最先进(SoTA)**的性能。
我们的关键贡献
- 提出 WebAgent:将两个模块化的 LLM 进行自监督整合,以实现真实世界的网页自动化。专用语言模型负责任务规划和 HTML 摘要,而通用语言模型负责生成可执行的 Python 程序。
- 引入 HTML-T5:一种基于局部-全局注意力机制的新型语言模型,在来自 CommonCrawl 的大规模 HTML 语料库上进行预训练,能够更好地捕获 HTML 的语法和语义信息。
2 相关工作
网页自动化
网页自动化是一种序列决策任务,其中代理根据给定指令操作浏览器(Shi 等, 2017),例如通过一系列计算机操作执行表单填写(Diaz 等, 2013)或信息检索(Adolphs 等, 2022)(Li 等, 2020; Mazumder & Riva, 2020; Shvo 等, 2021)。
以往的研究主要通过以下方法实现网页自动化:
- 强化学习(RL):通过强化学习训练代理完成网页任务(Gur 等, 2019; Humphreys 等, 2022; Jia 等, 2019; Shaw 等, 2023)。
- 微调 LLM:对大语言模型进行微调,以适应特定的网页自动化任务(Furuta 等, 2023; Gur 等, 2022)。
- 提示工程(Prompting):使用提示策略指导 LLM 执行网页任务(Kim 等, 2023; Sun 等, 2023; Yao 等, 2022b; Zheng 等, 2023)。
上述研究大多在模拟网站(Shi 等, 2017; Toyama 等, 2021; Yao 等, 2022a)上进行。然而,简化的模拟环境与真实网页环境之间仍存在巨大差距,例如:
- 真实网站的 HTML 页面平均令牌数大约是模拟环境的 15 倍(如图 2 所示)。
- 针对特定网站的预定义操作空间假设较强,可能会影响模型对分布外网页或指令的泛化能力。
与本研究最相关的工作可能是 MindAct(Deng 等, 2023),其方法通过对微调的语言模型进行 HTML 摘要提取,并使用另一模型以多选问答格式预测网页操作。尽管 MindAct 结合了多个语言模型,但其仅使用 DeBERTa(He 等, 2021)和 Flan-T5(Chung 等, 2022)作为摘要和执行模块,并仅在离线数据集上进行了评估。
相比之下,我们提出的 WebAgent 采用专门设计的 HTML-T5 来处理网页任务,专门用于长 HTML 文档的摘要和规划。同时,WebAgent 结合了微调后的 HTML-T5 进行摘要和规划,以及 Flan-U-PaLM 作为功能强大的代码生成器,使其能够生成开放式网页操作,并在真实在线网站上执行。
程序合成(Program Synthesis)
除了常见的 LLM(Brown 等, 2020; Chowdhery 等, 2022; Touvron 等, 2023),许多研究提出了专注于编程的语言模型(Chen 等, 2021a; Feng 等, 2020; Li 等, 2022; Wang 等, 2021)及其相关基准(Austin 等, 2021; Hendrycks 等, 2021a; Lu 等, 2021)。
另一条研究路径探索了工具增强 LLM(Parisi 等, 2022),通过解码 API 调用(Schick 等, 2023)或 Python 代码片段,交由解释器执行(Gao 等, 2023)。
大多数研究针对静态数据集进行程序合成,而在机器人学(Liang 等, 2023)和游戏(Trivedi 等, 2022; Wang 等, 2023a)领域,也有部分研究尝试让 LLM 生成 Python 或 JavaScript 代码以指挥代理操作。
类似地,我们利用 LLM 的代码生成能力作为网页代理的开放式操作空间,使其能够在真实网站上执行操作。实验表明,LLM 能够根据提供的子指令和 HTML 内容,顺序解码 Python Selenium 代码,从而完成网页自动化任务。
有关文档理解和基于 LLM 任务规划的更多相关工作,请参见附录 B。
3 WebAgent
WebAgent 是一种新的架构,结合了两个大语言模型(LLM)以实现高效的真实世界网页自动化。HTML-T5 作为领域专家 LLM,负责预测下一个子指令(任务规划)并生成相关的 HTML 片段(内容摘要)。Flan-U-PaLM(540B)(Chowdhery 等,2022;Chung 等,2022)在 HTML-T5 提供的规划和摘要基础上,被提示生成可执行的 Python 程序(见图 3)。这种模块化的两阶段方法使 WebAgent 能够有效地导航并处理 HTML 文档。
工作流程
用户以自然语言的方式提出请求,例如“搜索公寓”。收到初始请求后,HTML-T5 生成一个 “前往 <URL>” 的子指令,触发 Flan-U-PaLM 生成相应的 Python 程序,导航到指定网站。
新打开页面的原始 HTML 内容将被提取,并与用户指令及之前的规划步骤一起输入到 HTML-T5 中,以预测下一个子指令并识别相关的 HTML 片段进行摘要。接着,Flan-U-PaLM 根据这些子指令和 HTML 片段生成 Python 程序。
该规划、摘要和程序合成的迭代过程将持续进行,直到预测到指定的“结束”指令或达到最大迭代次数。
3.1 HTML-T5
先前研究表明,通用 LLM(如 T5、Flan-T5 和 InstructGPT)在网页环境中表现良好(Furuta 等, 2023; Gur 等, 2022; Kim 等, 2023)。然而,与专门的 Transformer 模型(Li 等, 2021b; Wang 等, 2022a; Zhao 等, 2022)不同,通用 LLM 未能充分利用 HTML 特定的信息,导致对 HTML 内容的理解能力受限。
为了解决这一局限性,我们提出了 HTML-T5,这是一种专为基于 HTML 的网页自动化任务设计的预训练编码-解码语言模型。HTML-T5 巧妙地融合了通用模型和专业模型的特性,以文本到文本的方式处理 HTML,并在编码器中采用局部和全局注意力机制(Ainslie 等, 2020),以捕获长 HTML 文档的层次结构。
HTML-T5 在来自 CommonCrawl 的大规模 HTML 语料库上,使用长跨度去噪目标(long-span denoising objective) 进行预训练,并针对每个下游任务进行微调。在 WebAgent 框架中,我们采用自我经验监督(self-experience supervision) 方法,以使模型与真实网站对齐。
模型架构
与自然语言不同,HTML 文档具有明确的层次结构。其结构包括元素(如 <input>
、<label>
、<button>
)及其相关属性(如 class
、label
、id
)。这些元素在局部定义,并在整个 HTML 文档中层次化地组合。
为建模这一层次结构,我们用局部和全局注意力机制(Ainslie 等, 2020)替代了常见的密集注意力(Vaswani 等, 2017)。
- 局部注意力(Local Attention) 使每个令牌仅关注相邻令牌,
- 瞬时全局注意力(Transient Global Attention) 允许每个令牌关注超出其局部窗口的内容,通过在每个窗口内的聚合和归一化,形成全局记忆表示。
如图 4 所示,HTML-T5 处理 HTML 叶子元素(绿色)时使用局部注意力,而处理内部元素(紫色)时则使用全局注意力,这种方法自然地适应了 HTML 的层次结构。
长跨度去噪预训练
HTML-T5 的预训练使用跨度去噪目标(span denoising objective),即在 HTML 文档中随机屏蔽一定长度的令牌序列,并使用其余令牌预测屏蔽内容。
与自然语言文本不同,短跨度屏蔽(例如长度 µ = 3)往往会遮盖无意义的内容(如 </, id=
等),信噪比较低。而更长的跨度 可以捕获更有意义的片段(如 <form class="
或 type="submit">
)。实验表明,将跨度长度设置为 µ ∈ {8,64} 可优化 HTML 文档的建模(详见第 4.2 节)。
预训练使用的输入序列长度为 4096,输出序列长度为 910,共屏蔽 15% 的输入令牌。在预训练数据集方面,我们从 CommonCrawl 语料库(2019 年 4 月)中收集了 100 个 WARC 文件,并移除了非 Unicode 或仅包含字母数字的 HTML 文档。
3.2 面向真实网站的自我经验监督
为 LLM 提供示例来学习如何理解网站,仍是网页自动化领域的重大挑战。尽管人类可以轻松地遵循网页指令,但手动标注规划、摘要和程序合成的每个步骤是不现实的。
为解决这一问题,我们提出了一种自我经验监督(self-experience supervision)的半监督学习方法,该方法仅需最小的人为干预:
- 手动编写脚本 生成规划和摘要步骤。
- 使用 Flan-U-PaLM 生成相应的 Python 代码。
- 通过微调,使 HTML-T5 等领域特定语言模型与这些自我收集的真实世界经验保持一致(Wang 等, 2022b)。
这样,代理能够泛化并适应复杂的真实世界任务。
指令模板
我们维护了一组包含占位符的指令模板,例如:
“请在 <mapwebsite> 网站上,按 <n-th> <transportation> 的方式,从 <start> 到 <goal>。”
指令的值通过从预定义的键值对中随机抽取来填充。
脚本化规划与提示式编程
我们使用基于规则的解析器,将指令分解为子指令序列,并通过正则表达式从 HTML 中提取参考 ID。在每个步骤,Flan-U-PaLM 接收子指令及相关 HTML 片段,并生成可由 Selenium WebDriver 执行的导航程序。
尽管记录的演示成功率各异,但自动化真实世界任务的成功标准仍然具有挑战性。为改进学习体验,我们利用环境反馈来消除关键失败,例如程序执行错误、检索错误和明显的 URL 前缀错误(Ni 等, 2023)。
规划和摘要的微调
WebAgent 的核心组件 HTML-T5 通过以下数据进行微调:
- 任务指令(如“在纽约,搜索 2 室 2+ 卫的房屋,最高预算 $7500”),
- 子指令历史记录(如“打开房地产网站,输入‘纽约’,点击搜索”),
- 原始 HTML 文档。
随后,HTML-T5 生成新的子指令(如“输入 7500 到最高租金”)并提取相关 HTML 片段。
第 4.1 节展示了将 HTML 摘要整合到子指令预测中的重要性,以增强真实世界网页自动化的性能。
3.3 基于上下文的程序合成
在真实世界的网站上进行网页自动化面临诸多挑战,主要是由于其开放式操作空间,这与简化的模拟器环境有所不同(Shi 等, 2017; Yao 等, 2022a)。与以往的方法(Gur 等, 2019; Humphreys 等, 2022; Jia 等, 2019; Liu 等, 2018)相比,真实世界的网页代理无法预定义一个固定的操作空间来指定网页上的交互元素。
为了解决这一开放领域的挑战,我们在网页自动化中引入了基于编程的操作范式(act via programming paradigm),利用 LLM 的条件代码生成能力(Chen 等, 2021a; Liang 等, 2023)。
给定少量示例(例如复选框选择、文本输入、点击选项、滚动等),以及 HTML-T5 生成的下一个子指令和提取的 HTML 片段,Flan-U-PaLM(Chowdhery 等, 2022; Chung 等, 2022)能够解码生成可在 Selenium WebDriver(一个浏览器自动化库)上执行的 Python 程序(见图 3)。
这种条件化的程序合成不仅要求 LLM 生成遵循自然语言指令的代码,还必须理解 HTML 元素的语义和功能。
以下是 Flan-U-PaLM 生成的 Python 代码示例(子指令作为脚本中的注释):
python
复制编辑
# 在搜索框中输入 walnut creek, ca driver.find_element(By.CSS_SELECTOR, '[data-ref="175"]').clear() driver.find_element(By.CSS_SELECTOR, '[data-ref="175"]').send_keys("walnut creek, ca") # 提交搜索 driver.find_element(By.CSS_SELECTOR, '[data-ref="175"]').submit() # 点击公寓选项 driver.find_element(By.CSS_SELECTOR, '[data-ref="572"]').click() # 向下滚动房屋类型 200px driver.execute_script('getScrollParent(document.querySelector("#type-of-housing")).scrollBy({top: 200})')
4 实验结果
为了研究在自监督框架下,模块化 LLM 组合如何克服网页自动化中的开放性和长上下文问题,我们在真实网站上执行了指令跟随任务(详见 4.1 节)。此外,在附录 E 中,我们还在 WebSRC(Chen 等, 2021b)基准测试中测试了 WebAgent,该数据集专注于 HTML 结构化文档理解,并与专门的 Transformer 模型(Li 等, 2021b; Zhao 等, 2022)进行了对比。
我们还量化了 HTML-T5 本身在模拟网页基准 MiniWoB++ 以及离线任务规划基准 Mind2Web 上的性能(详见 4.2 节)。
4.1 真实世界网页自动化
评估方法
我们首先在人类监督下评估 WebAgent 在真实网站上的导航性能,测试了以下三类网站:
- 房地产网站(房屋平台)——需要长规划(每个任务约 20 个步骤),涉及复杂的表单填写和多个页面跳转(至少 2 页)。
- 社交媒体网站(社交网络)——需要较短规划(每个任务约 10 个步骤),但涉及多个页面跳转(至少 4 页),依赖于超链接选择。
- 地图网站(地图导航)——任务最简单,规划较短,页面跳转较少。
WebAgent 接收自然语言指令,例如:
- “请在房地产网站上搜索 Oroville, CA 地区的 1 室 1+ 卫的公寓,适合企业住房。”
- “请展示 Python 社区中按‘教程’标签筛选的最新帖子。”
WebAgent 通过 HTML-T5 进行规划和摘要,并使用 Flan-U-PaLM 进行编程(如图 5 所示)。
通过自我经验监督,我们在房地产、社交媒体和地图网站上分别收集了 260、230 和 410 个任务实例,用于对 HTML-T5 进行微调。
我们准备了 20 个不同的自然语言指令(完整列表见附录 F),并使用成功率和得分作为评估指标:
- 成功率:指代理是否完全满足指令的所有要求。
- 得分:表示任务中满足的属性占比。例如,在房地产搜索任务中,要求满足以下属性:
- 位置(Oroville, CA),
- 适合企业住房,
- 一室,
- 1+ 卫生间。
如果代理仅满足其中 3 项,得分计算为:60 = 100×3/5100 \times 3/5100×3/5。如果得分达到 100,则视为成功。
实验结果
为进行对比,我们使用了三个基线方法:
- 单一 LLM(Flan-U-PaLM) 仅基于提示进行开放式规划(Plan: ),
- Flan-U-PaLM+P:使用额外的 LLM 进行任务规划,
- Flan-U-PaLM+S:使用额外的 LLM 进行 HTML 摘要。
如果不使用语言模型模块,Flan-U-PaLM 将进行开放式规划,并使用正则表达式从原始 HTML 中提取信息。
表 1 显示:
- WebAgent 在房地产网站上成功率达到 65%,得分为 87.6%,
- 在社交媒体网站上成功率为 70%,得分 85.8%,
- 在地图网站上成功率为 80%,得分 93.8%,
WebAgent 显著优于仅使用 Flan-U-PaLM 或部分使用 LLM 模块的方法(大多数基线成功率仅为 10%-30%)。
实验结果表明:
- 自我经验监督显著提高了性能,
- 基于微调 HTML-T5 的闭环规划比基于少样本 LLM 的开放式规划更适合处理开放域网页自动化。
这一趋势在房地产网站上尤为明显,即使使用 Flan-U-PaLM+P 进行长规划,其成功率也仅为 50%。
此外,子指令预测与 HTML 摘要的结合在任务成功中起到了至关重要的作用。
错误分析
我们将失败案例归类为以下三种错误类型(见表 1):
- 编程错误:未能正确执行给定的子指令或 HTML 片段。
- 规划错误:预测的子指令与用户指令冲突。
- 摘要错误:HTML 片段的提取与目标任务不匹配。
改进更强大的规划模块,以自适应和准确地分解指令,将有助于进一步提升 WebAgent 的性能。
4.1 失败原因分析
我们将失败原因归纳为以下三类:
- 编程错误(Programming Errors):未能满足给定的子指令或正确处理 HTML 片段。
- 规划错误(Planning Errors):预测的子指令与用户指令存在冲突。
- 摘要错误(Summarization Errors):未能提取与给定子指令相关的 HTML 片段。
从网站角度来看,房地产网站的失败主要集中在规划阶段,因为任务具有较长的决策路径。而地图网站在混淆起点和目的地时也容易在规划上出错。相较之下,社交媒体网站的失败主要发生在编程阶段,原因在于子指令的歧义或摘要中包含冗余的超链接,导致页面跳转错误或点击无法执行的元素。
从方法角度来看,WebAgent 主要在规划阶段失败(在房地产网站上的失败任务中,70% 的情况是由于错误的规划)。其他基线方法更容易在编程或摘要步骤中失败。
这一观察表明,通过自我经验监督,编程和摘要的错误比例已减少,但规划阶段的根本困难仍然存在,因为它需要在长任务序列中保持一致性和准确性,而不会积累错误。
4.2 HTML-T5 的消融实验
实验结果概览:
表 3 显示了在 MiniWoB++(包含 56 项任务)上的平均成功率,我们使用了 12K 个示例来比较 HTML-T5 在各类微调方法中的表现。
- **HTML-T5-XL(我们的方法)**在成功率方面显著优于先前最佳模型 WebN-T5-XL(Gur 等, 2022),提高了 18.7%。
- HTML-T5-XL 在 347K 个训练示例上微调后,优于 11B 参数的 Flan-T5-XXL,仅使用 3B 参数即可达到 85.6% 的成功率,接近 SOTA(GPT-3.5)。
HTML-T5 在其他基准测试中的表现:
-
Mind2Web(Deng 等, 2023):一个包含 2K+ 指令的真实世界数据集,涵盖 137 个网站(例如旅游、购物等)。
- HTML-T5-XL 在元素精度、操作 F1 分数和任务成功率方面,分别比 Flan-T5-XL 或 GPT-4 提高了 5-8%、6-8% 和 4-8%。
- 结果表明 HTML-T5 在跨任务、跨网站和跨领域泛化方面具有出色的能力。
-
MiniWoB++(Liu 等, 2018; Shi 等, 2017):用于评估网页自动化能力的标准基准测试。
- HTML-T5-XL 在 56 项模拟任务上表现优异,成功率超越了 LongT5 和之前的微调方法,验证了 HTML 去噪(denoising)目标比传统的指令微调方法(instruction tuning)更有效。
架构和目标分析:
- 研究表明,局部与全局注意力机制比传统的密集注意力(dense attention)更适合捕获 HTML 文档的层次结构。
- 在 MiniWoB++ 56 项任务的实验中,结合局部和全局注意力的模型比仅使用局部注意力的模型提高了 18% 的成功率,而局部注意力仍然比密集注意力高 9%,说明 HTML 中的局部元素和属性关系对网页任务至关重要。
- 采用**长跨度去噪(µ ∈ {8,64})**目标优于其他配置,如常见的 µ ∈ {3,8,64} + Prefix LM,能够更好地减少无意义的预测,并将 HTML 结构信息注入语言模型。
5 讨论与局限性
模块化方法与专家语言模型
- 我们证明了将网页自动化拆分为规划、HTML 摘要、代码生成的模块化方法是有效的,并结合领域专家模型与自我经验数据对齐。
- 这种模块化方法已在 LLM 推理(Xu 等, 2023)、多模态任务(Zeng 等, 2022)和机器人学(Ahn 等, 2022)中得到采用,然而,它可能带来额外的计算成本和延迟。
跨互联网的广泛泛化能力
- 由于基于 Flan-U-PaLM 的开放式规划最多仅能达到 10-30% 的成功率,我们证明了在真实网站上的自我经验监督对于规划模块至关重要。
- 在 Mind2Web 数据集上的实验表明,如果有足够的数据,我们的方法可以推广到整个互联网。未来研究可以通过大规模收集示例并使用更大的专家语言模型来进一步提高泛化能力。
程序合成的反馈
- 我们使用具有 540B 参数的 Flan-U-PaLM 作为程序合成模块,尽管该模型功能强大,但与较小模型相比,难以快速反映错误反馈。
- 未来研究可以探索如何将反馈整合到更大的语言模型中,以提高程序合成的精确性。
真实世界网页自动化的评估
- 我们证明了 WebAgent 可以在房地产、社交媒体和地图网站上,遵循复杂且有时存在歧义的指令。
- 然而,在现实世界中评估自主代理的性能是昂贵的,因此开发最小人工干预的自动评估方法将有助于大规模开发网页代理。
6 结论
我们构建了一个面向真实世界网页自动化的系统,结合了:
- HTML-T5 进行规划和 HTML 摘要,
- Flan-U-PaLM 进行基于上下文的程序合成。
我们的 WebAgent 通过自我经验监督,在真实网站上的成功率达到 70-80%,相比单一 LLM 方法提高了 50% 以上,这表明使用多个语言模型分解子问题序列可显著提高任务的成功率。
我们还提出了一种可扩展的 HTML 专用语言模型架构,结合局部与全局注意力机制,并使用长跨度去噪目标来捕获 HTML 文档的层次结构。
HTML-T5 不仅是 WebAgent 的核心,还在多个 HTML 基准测试(如 Mind2Web 和 MiniWoB++)中取得了最佳表现。
我们希望我们的研究能够推动自主网页代理系统的实际部署。