本章介绍能自主浏览操作网页的 WebAgent 及相关评估数据集,涵盖从初级任务到复杂多模态交互的多个主流评测集,包括 MiniWoB++、MIND2WEB、WEBARENA、WebVoyager、WebLINX 和 AutoWebGLM。
MiniWoB++ 数据集
- Reinforcement Learning on Web Interfaces using Workflow-Guided Exploration
这篇论文发表于 2018 年,是 WebAgent 领域早期的经典工作。MiniWoB++ 是基于 gymnasium 的模拟 Web 环境,它在 OpenAI 的 MiniWoB 数据集上补充了更多复杂交互和可变页面行为,最终得到 100 个网页交互的评测集。
MiniWoB++ 数据集的局限性明显:
- 非实际 Web 页面而是模拟 Web 页面,缺乏真实环境的复杂性。
- 页面被极大程度简化成了单独的交互组件,复杂程度低。
- 指令是低级指令,直接描述如何和网页交互,例如'选择下拉列表中的 United Arab Emirates 并点击提交'。而高级任务指令应该是'选择 United Arab Emirates',这要求模型具备更高的语义理解能力。
MIND2WEB
- MIND2WEB: Towards a Generalist Agent for the Web
数据集
MIND2WEB 数据集在 MiniWoB++ 基础上做了显著改良:
- 使用真实网页而非模拟组件,例如美联航首页。
- 采用高级任务指令而非低级指令,例如'Search for all alternative concerts taking place in New York'。
- 网页数据全面:包含 HTML 代码、DOM 文件、HAR 日志、snapshot 截图和 TRACE。
- 多领域任务:5 大类 31 个小类,总共 137 个网站,基于种子人工构造了 2350 个指令样本,涵盖旅游、信息、娱乐、购物、通用服务类。
一个典型样本的任务指令为'Check for pickup restaurant available in Boston, NY on March 18, 5pm with just one guest',Label 是完成该指令的行为序列。每一步行为由 (Target Element, Operation) 构成,支持三种最常用的操作:CLICK、TYPE、SELECT。
Mind2WEB 采用了 4 个评估指标:
- Element Accuracy:评估操作元素(如 Button)的正确率。
- Operation F1:评估对元素的操作准召,这里是 token-level 的 F1 计算,因为有键入数据等操作。
- Step Success Rate:单步操作正确需要 Element 和 Operation 同时正确。
- Task Success Rate:任务正确需要每一步都正确。
Mind2WEB 数据集的主要局限性是只有数据采集时的网页静态页面 HTML,没有后续行为的动态交互数据。
MindAct
MindAct 框架因为是单一文本模态,因此使用 HTML 代码和 DOM 文件来作为网页的观测数据。框架比较简单,由两个部分组成:元素排序生成候选,基于候选的多项选择生成行为。
- Candidate Ranking:候选生成部分是一个二分类的打分模型。输入是任务指令 + 历史 Action+DOM 元素,输出是每个 DOM 元素的候选概率。这里 DOM 元素的文本表征除了元素本身的信息,还从 DOM 文件树里面获取了 parent 和 child 节点的信息,拼接作为每个节点的表征。论文通过随机负样本采样,训练了 DeBERTa 模型作为排序模型,测试集 Top50 召回在 85%+。
- Action Prediction:基于上面元素排序返回的 Top-K 候选 Element,会先对整个 HTML 进行裁剪,只保留候选元素前后的 HTML 文档。这样可以有效降低大模型的输入长度和复杂度,但对上面排序模型的召回要求较高。之后会基于 Top-K 候选、裁剪 HTML 和历史 Action,选择下一步的 Action 和 Value。于是基于复杂 HTML 直接生成 Action 和 Value 的复杂任务,被简化成了多项选择的 QA 任务。这里论文微调了 Flan-T5 来完成多项选择任务,也同时对比了直接使用 GPT3.5 和 GPT4。
WEBARENA 数据集
- WEBARENA: A REALISTIC WEB ENVIRONMENT FOR BUILDING AUTONOMOUS AGENTS
针对 Mind2WEB 只和静态网站状态交互的问题,WEBARENA 通过构建仿真网站,构建了真实、动态并且可复现的网络环境来和智能体进行交互。论文选择了电商、论坛、GitHub、CMS 等四类网站类型,并使用网站真实数据来构建模拟环境。
相比 Mind2WEB 的 3 种常见交互,WEBARENA 支持更多的交互操作,并且因为是动态页面因此支持多 Tab 切换的操作。
数据集构成:
- High Level 任务指令:包含数据查询、网站导航、内容创建等 3 个主要任务意图。
- 812 个测试样本:人工+ChatGPT 构建,从 241 个任务模板中创建出来,模板例如'create a {{site1}} account identical to my {{site2}} one'。
- 网页数据:HTML + DOM + screenshot + Accessibility Tree(DOM 的有效子集)。
评估指标上相比 Mind2WEB,WEBARENA 同样使用 task success rate 作为评估指标,把 token-level 的 F1 计算进行了优化,加入了 operation 是否正确的检测方案。核心就是部分操作需要键入内容,而这部分内容不能直接和标注做精准匹配,因此 WEBARENA 分成了需要精准匹配的答案 (exact match)、只要包括核心信息即可 (must include) 和基于大模型做语义相似判断的 (fuzzy match) 这三类评估类型,对不同的样本进行评估。
WebVoyager
- WebVoyager: Building an End-to-end Web Agent with Large Multimodal Models
数据集
同样是动态网页交互,WebVoyager 没有采用模拟网页数据,而是使用直接操控 Web 浏览器行为和真实网页进行交互。于是同时满足了动态交互和真实网络环境的要求。
论文选取了 15 个有代表性的网站:Allrecipes, Amazon, Apple, ArXiv, BBC News, Booking, Cambridge Dictionary, Coursera, ESPN, GitHub, Google Flights, Google Map, Google Search, Huggingface, and Wolfram Alpha。
指令样本是基于 Mind2Web 的数据集作为种子,然后基于 GPT4 使用 Self-Instruct 来生成新的任务指令,最后使用人工校验和筛选。最终得到了每个网站 40+ 的指令,总共 643 个评估任务。
评估指标和 WebArena 保持一致,都是采用任务成功率作为评估指标。
Agent
这里简单说下 Agent 实现,WebVoyager 和前面数据集的主要差异是加入了多模态模型 GPT4-V 的尝试。不再使用 Accessibility Tree 的文本输入,而是直接和网页的 snapshot 进行交互。
论文采用了 Set-of-Mark Prompting 的技术,来解决 GPT4-V 模型 visual grounding 的问题(模型对图片中细粒度物体的区分度有限,当输出是图片中局部物体例如按钮时准确率不高的问题)。SOM 是先用 SAM 等分割模型对图片进行分割,这里主要是识别出图片上可交互的按钮和区域,使用 bounding box 进行圈选,并使用序号对区域进行标记。通过标记来帮助 GPT4-V 更精准的识别可交互区域。
论文使用了 JS DOM auto-labeler 来识别网页中的所有可交互元素并进行标记,来作为 GPT4-V 的输入。然后基于上面的标记图片输入,和以下 ReACT 的 prompt 指令,让 GPT4V 生成每一步的交互操作。基于模型推理结果会直接操作网页,并获取新的网页 snapshot 作为下一步的输入。
WebLINX
- WebLINX: Real-World Website Navigation with Multi-Turn Dialogue
对比前面的 MIND2WEB、WebArena 和 WebVoyager,WebLINX 加入了和用户的多轮对话交互,也就是从自主智能体向可交互智能体的转变。虽然放弃了完全自主,但有了人类的监督,可能可以达到更高的任务完成度。
WebLINX 的数据集包括 8 大类,50 个小类总共 155 个真实网页,总共构建了 2337 个指令样本。因为是对话式交互,所以指令类型会和以上的几个数据集存在明显的差异,不再是任务型指令而是步骤操作型的指令。
Agent 部分论文更多是对比了文本模态 vs 多模态,微调 vsprompt 的效果,实现细节不太多这里就不细说了。
AutoWebGLM
- AutoWebGLM: Bootstrap And Reinforce A Large Language Model-based Web Navigating Agent
AutoWebGLM 是智谱最近发布的 WebAgent 论文,包括比较全面的微调数据集构建和微调方案,并发布了新的评测集。论文提出 AutoWebGLM 的数据集有三个主要优点:
- 更高质量的 Web 交互训练数据:人标很难构架大规模训练数据,这里使用模型标注并通过技巧提高模型标注准确率。
- 统一 10 类交互行为:其实和 WEBARENA 基本一致。
- HTML 简化裁剪方案:构建可交互元素树。
数据集
AutoWebGLM 的微调数据集包含由易到难的三种任务:Web Recognition、Single-step task、Multi-step task。这里也是纯 HTML 文本模态的数据集。除了以下全新的三类样本,论文还合并了 MiniWoB++ 和 Mind2Web 的训练集。
Web Recognition
网页识别样本构建,是直接从 HTML 中提取可交互元素,然后基于元素构建简化的 HTML 输入。然后 Input 是网页元素功能的相关提问,输出是 GPT 的回答,例如'Search Bar 是用来干什么的',模型回答'它是用来帮助用户搜索产品的'。这部分样本用来帮助模型理解 HTML。
Single-step task (Simple)
简单任务是单步操作的网页交互。这里论文的构建比较巧妙,考虑到之前的论文已经论证了即便是 GPT4 在 WebAgent 这个任务上的执行准确率也有限,那直接使用 GPT4 来构建样本肯定是不可行的。因此论文采用了反向标注,既基于 HTML 中抽取出的可交互元素例如'scroll_page('down')',让 GPT4 来反向生成对应的意图和用户指令,例如'我需要向下滑网页浏览更多'。这样可以得到准确率更高的样本,模型生成意图和指令的 prompt 如下。
Multi-Step task (Complex)
复杂任务涉及和网页的多步交互。这里论文使用了 Evol-Instruct 来构建复杂任务指令,每个网页模型生成 50 个指令,再人工筛选 20 个。
考虑模型生成准确率不高,这里得多步交互,论文使用人工执行,并用浏览器插件捕捉用户交互行为的方案。这里为了在行为链路之外,同时获得模型 COT 思考链路,用来提高后面的模型训练效果。论文使用以下 prompt,让大模型基于人工完整的行为链路,生成每一步的执行意图。
最终的 AutoWebBench 评测集只使用了多步任务的子集,也就是复杂指令来评测模型效果。
微调
基于以上的训练数据,论文采用了多阶段训练微调 ChatGLM3:
- SFT:第一步是指令微调,使用以上训练集,采用 Curriculum Learning 的训练策略,既模仿人类学习,由易到难的训练样本进行逐步训练。先使用网页识别和单步任务训练,再使用多步任务数据训练。
- RL:第二步是强化学习,用来降低 SFT 部分模型学习的过度模仿和幻觉。这里论文采用了 Self-Sampling 来构建 DPO 需要的正负样本对,既使用正确答案作为正样本,使用模型预测错误的作为负样本,使用 DPO 和 SFT 的混合 loss 进行进一步的训练。
- RFT:第三步是基于 MiniWoB++ 和 WebArena 虚拟环境,使用以上训练好的 DPO 模型构建了额外的训练样本。这里采用拒绝采样,既使用模型尝试 N 次,选取成功(规则标注或环境自带识别)的执行路径作为训练样本进行训练。相当于是把 Rejection-Sampling 的效果再训练进模型中。
效果上在 AutoWebBench 上,微调后的 6B 模型可以显著超过 GPT4,和更大的 Llama2 基座模型,拥有更高的任务单步执行成功率。
同时论文做了消融实验来验证以上多阶段微调和三种训练样本的效果。实验显示,由易到难的训练数据对模型有较大提升,RFT 在进一步训练的 MiniWob++ 和 WebArena 上有显著提升,但 RL-DPO 的效果不太明显。
总结与展望
通过对上述主流 WebAgent 数据集的分析,可以看出 WebAgent 技术的发展脉络:
- 从模拟到真实:早期 MiniWoB++ 依赖模拟环境,便于控制变量;随后 MIND2WEB 转向真实网页静态数据;WEBARENA 和 WebVoyager 进一步引入动态交互和真实浏览器环境,更接近生产场景。
- 从低级到高级指令:指令设计从直接的 DOM 操作命令(如 CLICK)演进为自然语言任务描述(如'查找餐厅'),这对模型的语义理解和规划能力提出了更高要求。
- 从文本到多模态:随着视觉大模型的发展,WebVoyager 等开始利用 GPT4-V 等多模态模型直接处理网页截图,结合 Set-of-Mark 等技术解决视觉定位问题,提升了复杂界面的交互精度。
- 从静态到动态闭环:评估体系也从简单的静态页面匹配,发展到包含动态反馈、多轮对话(WebLINX)以及强化学习优化(AutoWebGLM)的闭环系统。
未来,WebAgent 将更加注重在开放互联网环境下的鲁棒性、安全性以及跨域任务泛化能力。随着多模态大模型的持续进步,结合浏览器自动化技术的智能体有望在办公自动化、信息检索、在线交易等场景中发挥更大作用。