https://arxiv.org/abs/2401.01614
最近在大型多模态模型(LMMs)上的发展,尤其是GPT-4V(ision)和Gemini,迅速扩展了多模态模型的能力边界,超越了传统任务如图像字幕生成和视觉问答。在这项研究中,我们探讨了像GPT-4V这样的LMMs作为通用网络代理的潜力,该代理可以遵循自然语言指令在任何给定网站上完成任务。我们提出了SEE ACT,这是一种通用的网络代理,利用LMMs的力量在网络上进行集成的视觉理解和操作。我们在最近的MIND2WEB基准上进行了评估。除了在缓存网站上的标准离线评估外,我们还开发了一种工具,使得能够在在线网站上运行网络代理的新在线评估设置成为可能。我们展示了GPT-4V在网络代理方面的巨大潜力——如果我们手动将其文本计划落实为网站上的动作,它可以成功完成51.1%的在线网站任务。这大大优于文本仅限于LLMs如GPT-4或专门为网络代理微调的小型模型(FLAN-T5和BLIP-2)。然而,落实仍然是一个主要的挑战。现有的LMM落实策略,如标记集合提示,事实证明对网络代理无效,而我们在本文中开发的最佳落实策略利用了HTML结构和视觉。然而,与理想的落实相比,仍然存在显著差距,为进一步改进留下了充足的空间。所有代码、数据和评估工具均可在 https://github.com/OSU-NLP-Group/SeeAct 获取。
大型多模态模型(Large Multimodal Models, LMMs;Li et al., 2023;Alayrac et al., 2022;Liu et al., 2023b),尤其是最近如GPT-4V(ision)(OpenAI, 2023)和Gemini(Anil et al., 2023)等模型,在标准的视觉与语言理解和推理基准测试上表现出了卓越的能力(Kazemzadeh et al., 2014;Goyal et al., 2016;Hendrycks et al., 2020;Saikh et al., 2022;Lu et al., 2022;Zhong et al., 2023;Yue et al., 2023)。虽然网络内容一直是训练数据的主要来源,但被广泛忽视的一部分是网站本身——每个网站都是为了便于人类用户轻松浏览而设计的。这为LMMs带来了新的挑战和机遇。一方面,渲染网站的截图可能包含数千个具有丰富关系的元素,其复杂性高于大多数现有基准中通常以物体或场景为中心的图像。另一方面,如果LMMs能够准确理解网站,将为网络上的众多应用打开大门。
在这项工作中,我们旨在探讨LMMs作为通用网络代理的潜力(Deng et al., 2023)。根据MIND2WEB(Deng et al., 2023)的定义,通用网络代理需要遵循自然语言指令并完成任何给定真实世界网站上的任务(例如,图1)。这些任务可能非常多样且复杂,一个任务可能需要在多个动态渲染的网页上执行超过10个操作。现有研究(Deng et al., 2023;Liu et al., 2023d)主要使用大型语言模型(LLMs),如GPT-4(OpenAI, 2023),处理原始HTML输入。然而,HTML代码比渲染的视觉效果更杂乱,信息密度更低。例如,图1中的截图包含423个HTML元素,使用GPT-2 Tokenizer需要186,490个文本标记,而使用GPT-4V的视觉标记器仅需1,445个视觉标记。此外,仅依靠HTML提供的信息是不完整的,缺少了嵌入图像等关键语义信息。
为此,我们提出了SEEACT,这是一种利用LMMs的力量进行集成视觉理解和在网络上行动的通用网络代理。我们将专注于目前最先进的公开LMM——GPT-4V,并将其与较小的LMMs如BLIP-2(Li et al., 2023)和LLaVA-1.5(Liu et al., 2023a;c)进行比较。我们发现GPT-4V在视觉理解渲染网页和在广泛的网站和任务中生成正确文本计划方面表现出强大能力。然而,落地(grounding)(Chandu et al., 2021;Gu et al., 2023),即将文本计划转换为网站上的精确操作,仍然是一个主要挑战。它涉及选择正确的HTML元素进行交互以及正确的操作(例如,点击、输入或选择)。我们提出了多种落地方法,包括将包围框和索引标签叠加到图像上,类似于在以物体或场景为中心的图像上已被证明有效的set-of-mark prompting(Yang et al., 2023a)。然而,我们发现对于像网页截图这样具有丰富语义和空间关系的复杂图像,GPT-4V观察到严重的幻觉。最有效的落地策略利用了HTML元素及其视觉渲染之间已知的对应关系,这是网站相对于自然图像的一个独特属性。
我们在MIND2WEB数据集(Deng et al., 2023)上评估了SEEACT,并与仅文本的大型语言模型(LLMs)如GPT-4(OpenAI, 2023)以及较小的模型(FLAN-T5(Chung et al., 2022),BLIP-2(Li et al., 2023),LLaVA-1.5(Liu et al., 2023a;c)和CogAgent(Hong et al., 2023))进行了比较。除了在缓存网站上的标准离线评估设置之外,我们还通过开发一个能够在实时网站上运行网络代理的工具建立了一种新的在线评估设置。我们探索中的主要发现总结如下:
在本节中,我们首先解释web agents的问题表述,然后介绍基于LMMs的通用web agent——SEEACT。具体来说,给定一个基于web的任务(例如,在租车网站上“以最低价格租一辆卡车”),我们考察LMMs作为通用web agent的两个基本能力:(i)Action Generation,用于在每一步生成一个行动描述(例如,“将光标移到‘Find Your Truck’按钮上并点击”)来完成任务,以及(ii)Element Grounding,用于在网页的当前步骤中识别HTML元素(例如,“[button] Find Your Truck”)。
给定一个网站S(例如,一个租车网站)和一个任务T(例如,“以最低价格租一辆卡车”),web agent应生成一系列可执行的动作A = [a_1, a_2, ..., a_n]来完成任务。具体来说,在时间步t,agent应基于当前环境观察s_t、先前的动作{a_1, a_2, ..., a_t-1}和任务T生成动作a_t:
环境观察s_t包括一个HTML文档h_t和一个截图图像i_t。LLMs只能基于HTML文档,而LMMs可以基于HTML文档和截图图像。每个动作后,网站状态会相应更新:
为简化起见,在后续的逐步表述中,省略时间步记号t。
一个动作a对应于网站环境提供的浏览器事件。因此,我们将动作表述为浏览器事件所需的三个必要变量的三元组(e, o, v)。其中,e ∈ E标识要操作的目标网页元素,例如图2中的"Find Your Truck"按钮。E代表环境S中的网页元素集合。操作o ∈ O是在目标元素上执行的动作,O包括S中的所有可能操作(例如,Click,Type)。变量v表示某些操作所需的附加值(例如,Type操作的日期12/10/2023)。
然而,基于LLMs或LMMs的agent通常无法直接生成浏览器事件所需的三个变量(e, o, v)。相反,它们生成意图动作的文本描述˜a,其中包含这些变量的信息(˜e, ˜o, ˜v)。这个过程称为Action Generation。为了与环境交互,还需要一个进一步的步骤将˜a转换为a,我们称之为Action Grounding。
我们明确指示GPT-4V模仿人类浏览网页,分析任务、网页和先前的动作。要求其基于分析和推理生成动作描述˜a。我们将截图图像i作为视觉上下文,而不使用HTML文档h进行动作生成。
尽管GPT-4V能够识别和描述自然语言中完成给定任务的下一个动作,但在环境中将动作描述˜a转换为可执行动作a仍然具有挑战性。从动作描述˜a中推导操作类型o和值v可以通过字符串解析较好地解决。关键挑战在于从生成的˜e中识别目标元素e,我们称之为Element Grounding。
为解决这一挑战,我们探索了使用不同类型信息的三种方法:通过元素属性进行定位、通过文本选择进行定位以及通过图像标注进行定位,如图2所示。动作生成和定位的提示细节包含在附录D中。
通过元素属性进行定位。 这种方法涉及提示模型生成目标元素的尽可能详细的属性,从而提供更多信息以精确匹配目标HTML元素。具体来说,我们提示模型不仅描述元素e,还要在˜e中指定目标元素的类型和文本内容。例如,如图2所示,模型将生成元素文本为“Find Your Truck”,并将其类型识别为“BUTTON”。随后,执行启发式搜索遍历DOM元素,使用元素文本和类型定位匹配的元素。如果找到单个匹配项,则自动选择。否则,当出现多个匹配项时,进一步提示模型选择最终的选择。
通过文本选择进行定位。 上述方法要求GPT-4V提供精确和充分的属性描述,并由启发式搜索进行准确匹配,这可能要求很高。例如,许多元素可能没有文本内容,或者文本信息位于相邻元素中而非自身。
或者,我们为模型提供元素的文本表示作为选择以便于定位,这在MindAct(Deng et al., 2023)中已被证明有效。具体来说,MindAct利用一个排名模型选择具有预训练交叉编码器的前k名候选元素(e_1, e_2, ..., e_k)。每个候选元素在多选问题中以其HTML文本表示为一个选项,如图2所示。在生成动作描述˜a后,模型进一步被问及一个多选问题,以从给定的多个选项(包括“无”选项)中选择其预期元素。
通过图像标注进行定位。 仅靠文本表示有时不足以区分相似或相同的元素,如附录G所示。因此,在这种方法中,我们建议为由排序器选择的每个候选元素e叠加一个边界框,并使用标签分配方法在边界框周围标注标签,以避免标记重叠。模型被期望生成对应于目标元素的标签。
Oracle Action Grounding. 理想情况下,动作描述˜a必须包含所有必要的细节,以精确识别动作三元组的每个变量(e, o, v)。为评估动作生成的性能,期望一种oracle定位方法,确保只要在动作描述中提到,就能识别这些变量。这里,我们通过要求人类标注者识别模型的预期动作来近似oracle定位方法。
太多了,就不看了,主要是和ReAct什么区别
SeeAct 是与 ReAct 类似的推理框架,也包括推理和行动的结合,但它们的主要区别在于如何进行推理和决策的过程中,SeeAct 更侧重于视觉信息的利用。
核心理念:
信息获取的方式:
应用场景:
推理和行动的交替:
信息源的不同:
操作和反馈的不同:
适用场景的不同:
假设任务是“判断照片中的物体是否是狗”:
ReAct:
SeeAct:
在 ReAct 中,模型可能更多依赖于文本信息来推理是否是狗,而在 SeeAct 中,模型通过视觉感知来获取图像信息,然后进行推理和决策。
这两个框架的核心差异在于 ReAct 侧重于文本数据的推理与执行,而 SeeAct 侧重于视觉数据的推理与执行。
本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!